WELCOME TO MY HOMEPAGE

 

Operating system

It hard to find a fixed definition of operating systems. Silberschatz e.t. defines that an operating system is a program that manages the computer hardware.” 

However, the view of operating systems solely depends upon the user and his needs, but we can mention few views of operating systems. 

a scheduler/simulator:

in this view , the operating system has resources for which it is in charge The Boss
, which make the operating responsible for handing resources out as well as recovering them later(resources here include CPU, memory, I/O devices, and disk space).

a virtual machine :

 it means operating system provides a new machine. This machine could be the same as the underlying machine. It Allows many users to believe that they have an entire piece of hardware to themselves.

Uses :make  perhaps more powerful machine.( Or just a different machine entirely).

 Sometimes it s useful to completely simulate another machine with your current hardware.

Multiplexor:                                                                                                                                                                     

which allows sharing of resources, provides protection from interference, and provides for a level of cooperation between users. This    also for the economic reasons, we cant afford for all resources.                                                                                                          

 

How Operating system play the role of the servant or provider of services:                                              

need to provide things like in the above views, but deal with environments that are less than perfect

need to help the users use the computer by: providing commonly used subroutines; providing access to hardware facilities; providing higher-level "abstract" facilities; providing an environment which is easy, pleasant, and productive to use. This view as a provider of services fits well with our modern network view of computing, where most resources are services.

 

Now how can we build a thing that performs and provides all those services???

Because an operating system is large and complex, it must be created piece by piece. Each of these pieces should be well delineated    portion of the system, with carefully defined inputs, outputs, and functions.                                                                                           

            Internal security: an already running program. On some systems, a program once it is running has no limitations, but         commonly the program has an identity which it keeps and is used to check all of its requests for resources.                        

External security: a new request from outside the computer, such as a login at a connected console or some kind of        network connection. To establish identity there may be a process of authentication                                                             

                                                                                                                                                                 

Operating systems are an unsolved problem.                                                                                                                  

Most of OS do not work very well, it crash too often, too slow, awkward to use, etc. Usually they do not do everything they were designed to do. They do not adapt to changes very well, e.g new devices, processors, applications. There are no perfect models to emulate.

Ubiquitous Computing

 

Ubiquitous Computing can be thought of as the idea of invisible computers everywhere. Specifically, it is the idea that computers are embedded in the environment, with literally dozens or hundreds of computers available to each person, and each computer performing its tasks without requiring human awareness or a large amount of human intervention.

If the mainframe represents the era of "many people, one computer", and the PC is the era of "one person, one computer", then ubiquitous computing can be thought of as the era of "one person, many computers". Right now, we work in a time where computers are important, but highly demanding of our attention. We require months (or years) or training to use them properly, we tinker with them constantly in order to make them work properly and to get the best performance out of them, and we still think of their use as a separate, distinct task. What will eventually happen is that computers will fade into the background and become invisible, much in the same way that electricity has, or the way that electrical motors have. When a person goes through their typical day, then encounter, literally, dozens of basic uses of electricity: The alarm clock that wakes them up, the light bulbs overhead, the coffee maker, the motor that starts their car, etc. Unless the person is an Electrical Engineer, they are very unlikely to ever give any of this a second thought. The electricity that they use is taken for granted, despite the very large amount of work that goes into designing the products, along with the enormous amount of infrastructure that is needed to support the power supply. No one contemplates tinkering with the voltage level or hertz rate of their power supply in order to make their alarm clock run better, but the parallel situation is exactly what we have today with computers. Ubiquitous computing will exist when attention to computers as a distinct kind of device is no longer necessary.

I wonder :

  1. What is Dispatcher?

  2. What is multi tasking, multi programming, multi threading?

  3. What is the cause of thrashing? How does the system detect thrashing? Once it detects thrashing, what can the system do to eliminate this problem?

Resources:

http://www.rcet.org/ubicomp/what.htm

http://www.iu.hio.no/~mark/os/os.html

http://www.cc.gatech.edu/classes/cs6751_97_fall/projects/gacha/daniels_essay.html

http://www.hermans.org/agents2/ch4_1.htm