Professional Documents
Culture Documents
Operating Systems
Lecture 2 :
Operating System
Structures
differ from one operating system to another, but we can identify common
classes. These operating system services are provided for the convenience
shows one view of the various operating system services and how they
interrelate.
3
4
(UI). This interface can take several forms. One is a common line
interface (CLI), which uses text commands and a method for entering
control those commands are entered into files, and those files are
into memory and to run that program. The program must be able to
directories. They also need to create and delete them by name, search
for a given file, and list file information. Finally, some programs
helping the user but rather for ensuring the efficient operation
written in C and C++, although certain low-level tasks (for example, tasks
assembly-language instructions.
15
16
writing a simple program to read data from one file and copy
them to another file.
17
Process control
o end, abort
o load, execute
File management
o open, close
Device management
Information maintenance
Communications
System Programs
• System programs provide a convenient environment for
program development and execution. Some of them are simply
user interfaces to system calls. Others are considerably more complex.
They can be divided into:
▫ File manipulation
▫ Status information
▫ File modification
▫ Programming language support
▫ Program loading and execution
▫ Communications
▫ Application programs
• Status information
• Some ask the system for info - date, time, amount of available
memory, disk space, number of users
• Others provide detailed performance, logging, and debugging
information
• Typically, these programs format and print the output to the
terminal or other output devices
• Some systems implement a registry - used to store and retrieve
configuration information
27
(the CPU, memory, disk drives, network interface cards, and so forth)
private computer.
29
30
Virtual Machines
Operating-System Debugging
• Debugging is finding and fixing errors, or bugs
• OS generate log files containing error information
• Failure of an application can generate core dump file capturing
memory of the process
• Operating system failure can generate crash dump file containing
kernel memory
• Beyond crashes, performance tuning can optimize system
performance
• Kernighan’s Law: “Debugging is twice as hard as writing the code in
the first place. Therefore, if you write the code as cleverly as possible,
you are, by definition, not smart enough to debug it.”
33
System Boot
locates the kernel, loads it into main memory, and starts its execution.
simple bootstrap loader fetches a more complex boot program from disk,
Task:
Task (1) : OS Design and Implementation ch2
Task (2) : Java Program Forking Separate Process? ch3
Task (3) : Sockets in Java? ch3
Task (4) : Threads? ch4
Task (5) : Pthreads? ch4
Task (6) : Process Synchronization? ch5
Task (7) : Protection? ch14
Task (8) : Linux Protection?
Task (9) : Windows Protection?
Task (10) : Security? ch15
Any Questions?
We wish you the very best of luck in your study of operating systems.