Network Opreating System Lecture1
Network Opreating System Lecture1
CS522
Network Operating System
Khalid Shinwari
[email protected],
0788350228
OS goals:
– Control/execute user/application programs.
– Make the computer system convenient to use.
– Ease the solving of user problems.
– Use the computer hardware in an efficient manner.
Services provided by an OS
• User interface - Almost all operating systems have a user interface (UI)
– Varies between Command-Line (CLI), Graphics User Interface (GUI),
Batch
• Program execution - The system must be able to load a program into
memory and to run that program, end execution,)
• I/O operations - A running program may require I/O, which may involve
a file or an I/O device.
• File-system manipulation - The file system is of particular interest.
Obviously, programs need to read and write files and directories, create and
delete them, search them, list file Information, permission management.
Services provided by an OS
• Communications – Processes may exchange information, on the same
computer or between computers over a network
– Communications may be via shared memory or through message
passing (packets moved by the OS)
• Error detection – OS needs to be constantly aware of possible errors
– May occur in the CPU and memory hardware, in I/O devices, in user
program
– For each type of error, OS should take the appropriate action to
ensure correct and consistent computing
– Debugging facilities can greatly enhance the user’s and
programmer’s abilities to efficiently use the system
Services provided by an OS
• Resource allocation - When multiple users or multiple jobs running
concurrently, resources must be allocated to each of them
– Many types of resources - Some (such as CPU cycles, main memory, and
file storage) may have special allocation code, others (such as I/O devices)
may have general request and release code.
• Accounting - To keep track of which users use how much and what kinds of
computer resources
• Protection and security - The owners of information stored in a multiuser or
networked computer system may want to control use of that information,
concurrent processes should not interfere with each other
– Protection involves ensuring that all access to system resources is
controlled
– Security of the system from outsiders requires user authentication, extends
to defending external I/O devices from invalid access attempts
– If a system is to be protected and secure, precautions must be instituted
throughout it.
Computer System Components
Hardware – provides basic computing resources (CPU,
Memory, I/O devices, Communication).
Operating System – controls and coordinates use of the
hardware among various application programs for various users.
System & Application Programs – ways in which the system
resources are used to solve computing problems of the users
(Word processors, Compilers, Web browsers, Database systems,
Video games).
Users – (People, Machines, other computers).
Computer Hardware Organization
User 1 User 2 User 3 ...... User n
Compiler Assembler
Text editor
Databases
System
System and Application Programs
Operating System
Computer Hardware
Figure: Abstract view of the components of a computer system
Views of an Operating System
There are three classical views (in literature) for an operating system
1. Resource Manager:
Manages and allocates resources.
Decides between conflicting requests for efficient and fair
resource use
2. Control program – controls the execution of user programs and
operations of I/O devices.
3. Command Executer – Provides an environment for running user
commands.
1. Resource Manager
Resource Manager:
– Manages and protects multiple computer resources: CPU,
Processes, Internal/External memory, Tasks, Applications,
Users, Communication channels, etc…
– Handles and allocates resources to multiple users or
multiple programs running at the same time and
space (e.g., processor time, memory, I/O devices).
– Decides between conflicting requests for efficient and fair
resource use (e.g., maximize throughput, minimize
response time).
OS as a Resource Manager
2. Control Program
Control Program:
– Manages all the components of a complex computer system
in an integrated manner.