Operating System and Safeguards

The operating system must provide various safeguards:
=> Safety from accidental or malicious access by other users.
=> Safety from accidental damage caused by the owner of the files.
=> Access limited to either the owner of the files or a specified user or group of users.
=> Safety from hardware or software malfunction.

These safeguards can be achieved through:
=> The use of passwords.
=> Allowing the owner of the files to specify which other users may access his file.
=> Mode of access being specified - read only, write, append.

Logging: The OS also keeps a log of all the system actions that relate to a particular user's job. It also maintains a log of all the jobs that are run at larger computer systems. These jobs are clocked in and out of the system. In instances of program failure, this log helps in locating the causes of program failure.

System Scheduling: Multiple tasks are scheduled to balance input/ output and processing requirements. This often involves overlapping input/ output and processing operations. The operating system allocates specific areas of storage to each program. When a program is completed the remaining programs are re-positioned in storage and a new program or programs are added to take up the available space.

Monitoring System Status: The OS constantly monitors the status of the computer system during processing operations.

=> It may respond to user "help" commands, and supply information about its function and operation.

=> It also directs the computer to send messages to the operator's terminal when I/O devices need attention, when errors occur in the job stream, or when other abnormal conditions arise.

=> In a larger computer system, the computer does not wait for the operator to take appropriate action. Rather, the message is printed and control passes to the next job.

Multi-Access Control: In larger computers the processing power can often be utilized more efficiently if a number of individuals are able to access them at the same time. With these multi-user systems, the OS
=> Allocates limited CPU time among users.
=> Separates job requests.
=> Must avoid mix-ups.

Software Utilities: These are programs or routines which carry out certain procedures which are common to virtually all applications.

Utility software performs needed services such as
=> Sorting records into a particular sequence for processing.
=> Merging several sorted files into a single large updated file.
=> Transferring date from one I/O device to another.
=> Printing of files held on backing storage.
=> Printing the contents of main memory.

Translating Programs: Translating programs trans-form instructions written in humanly convenient form to machine language codes required by computers. These translating programs are loaded into the computer where they control the translating process. Compilers and interpreters are used to translate programs to machine language codes.

Compiler: A compiler translates a program written in a high-level language to executable machine instructions. The compiler treats source-program instructions as data. Each instruction is accessed in turn and translated into one or more lines of object code in machine language.

Interpreter: Some high-level programming languages often use an interpreter instead of a compiler to translate instructions into machine code. Instead of translating the source program and permanently saving the object code produced during a compiling run for future use, the source program is loaded into the computer along with the data to be processed. When a program is to be executed, the interpreter accesses only the first instruction, translates it into one or more lines of machine code and then if possible the instructions are executed. The interpreter then accesses the next instruction and the process is repeated. This process continues until all the source program instructions are translated and executed.

Application Programs: An application program is designed to handle a particular task required by the end-user. It handles all aspects of a routine application, including error situation, the display of menus to aid the user, thus making it possible for a user having very little computer expertise to process the application.

No comments:

Post a Comment