Discuss the advantages of producing a dedicated operating system for a device.


Teaching Note:

Advantages related to size, speed and customization should be considered.

For example, using a dedicated operating system for a cell phone rather than using a pre-existing operating system.

S/E Issue of proprietary software.


Sample Question:


JSR Notes:


The Wide-spread Nature of Operating Systems

What kinds of things are operating systems made for? All sorts of things in fact; many devices beyond just computers and phones have their own dedicated operating systems. Generally, simple things that operate straight-forward ways can do so with a hard-wired microcontroller, and do without an operating system, but as the devices become more complex they can take advantage of the flexibilty offered by operating systems.

What do we mean by dedicated? Everything from an OS custom-programmed for one particular machine used by only a handful of people in the world, all the way up to, for example, the Arduino OS for all Arduino robots. You could even say that the Mac OS is "dedicated" to Apple Macintosh computers. But, really, by saying dedicated, we mean that the device could have used an "off the shelf" OS already in existence, but the developers decided to start from scratch and make an OS dedicated just for that device. Related to this, do note that the vast majority of different IT hardware produced in the world is not the iPhones and PCs that we consumers use, rather it is specialized equipment made for specialized industries and situatinos, developed to be used in very specialized circumstances, such as a factory - and much of it will require dedicated Operating Systems.


Examples of Dedicated Operating Systems

Any company with customized hardware needs customized operating systems.

Ex. Newspaper company will have highly specialized printing presses and other machines which are operated by customized operating systems.

Ex. An automobile assembly line factory has hundreds of specialized machines and robots, and each one of them is operated by customized operating systems. Any piece of hardware that is not "off the shelf". (Though note Libor's point that Skoda, I think it was, use Windows XP to control much of their assembly line!)

Things around ISP Which Have Dedicated OS: (Remembering that many seemingly intelligent devices don't have an OS; rather their microcontrollers/microprocessing units are hardwired with many different capabilities; for example the Roomba vacuum. So I'm not sure about the following list, but these devices very well could have hardward using dedicated OSs.)


Advantages of a Dedicated OS:

The Smart Phone New Dedicated OS Example

Google, for its Android phones, and Apple for its iPhones, etc. developed dedicate operating systems for their smart phones rather than using existing operating systems. Consider why. And, in fact, consider why, if you had a new company coming up with a new smart phone, you would have a dedicated operating system built:

Reasons to build a dedicated OS for a new smart phone:

- Copyright and/or Cost
It's possible that an existing OS could be used, but the licensing fees to use it would be substantial, and cause many hassles with legal issues. And/or, to use parts of it or ideas from it could break copyright and patents.

- Proprietary Nature Precludes Use
Here we mean that existing the OSs were intentionally made for Android and iPhone and is only possible, technically, to be used on them; this isn't even a copyright issue; the OS will not work on any other product than the one it was intended for. (You could always try to hack the OS to work on another device, but that could very well end up turning the device into a paper weight ("brick" it); furthermore, it's very hard to do.

- New Features Desired
Special, unique features are imagined that the other products don't even have. For example a nifty new temperature sensor. i.e. the existing OS software does not support this new hardware.

- Improvements Possible (over existing OSs)
The new OS can be faster and better by looking at things slowing down the older OS and implement improvements. asdfasdfasdfasdfsdf

- Don't Need a Lot of Existing OS Components (like drivers for all sort of other add ons asdfasdfasdfasd)
- Don't need tons of Android and or iOS-specific things. That "extra baggage" not needed in the new product. So to add your special OS features and keep all of the old ones will take too much memory. Rather only having the new ones will make the phones operate faster.
- Mac OS comes with Gigabytes of printer drivers, thousands of which you will not need. Your own OS could just come with the printer drivers for printers you have.
*** note that from the Teachign Note, this in particular is what will make your OS smaller (less memory in HD etc.) and faster - more nimble.

- Not Limited By Design Requirements - such as the four buttons that have to be on all Android phones:: home, back, menu, and search(?)




Another good example to consider:   Think of making your own robot at you university. Do you use an existing OS, or get the CS geeks to make one for you in the Engineering department? What would be the advantages to the development of your own robot operating system for your particular robot?






General Reasons for Choosing To Use Existing Operating Systems

- easier to aquire and implement

- faster improvments not done by you

- it already works

- not bother to write your own (for big devices like computers and robots, this is a huge pain and time consuming