Operating systems can be viewed from two viewpoints: resource managers and extended machines. In the resource manager's view, the operating system’s job is to manage the different parts of the system efficiently. The system's task in the extended machine view is to offer users a virtual machine that is easier to operate than the actual machine.
Processes, memory management, I/O management, the file system, and security are the fundamental ideas on which all operating systems are based.
Any operating system's ability to handle a given set of system calls forms its core. These reveal the actual functions of the operating system.
For UNIX, we have looked at four groups of system calls.
- process creation and termination.
- reading and writing files.
- directory management.
- miscellaneous calls.
All operating systems have certain basic concepts such as processes, memory, and files that are central to understanding them.
Processes: A process is basically a program in execution. Address space is associated with each process. Basically, it's a list of memory locations from some minimum (usually 0) to some maximum, which the process can read and write. The address space contains the executable program, the program’s data, and its stack. Other associated things are some set of registers, including the program counter, stack pointer, other hardware registers, and all the other information needed to run the program.
Memory Management: Every computer has some main memory that it uses to hold executing programs. Sophisticated operating systems allow multiple programs to be in memory at the same time.
Input/Output: All computers have physical devices for acquiring input and producing output. Many kinds of input and output devices exist, including keyboards, monitors, printers, and so on. It is up to the operating system to manage these devices.
Files: Another key concept supported by virtually all operating systems is the file system. The operating system's primary job, as previously said, is to mask the quirks of disks and other I/O devices and provide programmers with a beautiful, tidy abstract model of device-independent files.
Security: Computers contain large amounts of information that users often want to keep confidential. This information may include electronic mail, business plans, tax returns, and much more. It is up to the operating system to manage the system security so that files, for example, are only accessible to authorized users.
The Shell: It is also the primary interface between a user sitting at his terminal and the operating system unless the user is using a graphical user interface. The operating system is the code that carries out the system calls. Editors, compilers, assemblers, linkers, and command interpreters definitely are not part of the operating system, even though they are important and useful. Many shells exist, including sh, csh, ksh, and bash.
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.