what is actually an Operating System (OS)?

838 viewsOtherTechnology

Why do we need it?

In: Technology

11 Answers

Anonymous 0 Comments

Ever been to a large concert?

A whole ton of effort goes on behind the scenes when a concert is held somewhere. It’s not enough that you build the building and the band shows up. Someone needs to drive all those lights, sound systems, set up the stage, handle ticket sales, deal with concessions, maintain the bathrooms, and do teardown and cleanup once it’s all over. If it really was just “band rolls up to empty building and sets up shop”, every band would have to do this themselves. Every single band. Every single time.

Wouldn’t it be nicer if there were a dedicated team of people who could handle all of that stuff on-site? A company that owned the venue, who could take care of all the venue-specific stuff? That way, when a band wants to perform at a place, they can call up and the venue can say, “Oh, we support this this and this, you need to have these hookups, here are the schedules you can book, yada yada” and the band can simply get everything on that checklist, show up, and plug in. The venue handles all of the fiddly venue-specific details and the band can focus on the actual performance.

Your computer is the venue, and the bands that play there are the programs you install. Your OS is the team who run the venue. Everything your programs might need or wish to do with your PC, they have to go through the OS to get it. The OS tells them what they can and can’t do, schedules them so they all get the time and resources they need to run happily, and provides helper functions so the programs don’t have to do it themselves.

In exchange, all of the programs need to be built in such a way that they’re compatible with the way the OS works. Different OSes have different offerings and philosophies about how they run their venues. Generally you write a program that supports only one of them. You can write versions of your program that are designed to work with others, but it can take a lot of effort to support every possible way of doing things.