7

The One with the Operating System Tango

Working with Operating System Services

Computers are complex machines. They can have many different forms, different peripherals, and different functions. Yet, a lot of different machines can run the same software. As long as the hardware fits in a pretty broad set of boundaries (for instance, running a specific CPU architecture), your software does not care what the underlying machine looks like.

The reason this all works is that we have abstraction. You hardly ever deal with the actual hardware. There are always layers of software to go through, each layer adding a level of abstraction. That sounds complicated, but it is a good thing. Without this, we would have to rewrite our software for all possible ...

Get Systems Programming with C# and .NET now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.