Presentation is loading. Please wait.

Presentation is loading. Please wait.

Operating System Interface between a user and the computer hardware

Similar presentations


Presentation on theme: "Operating System Interface between a user and the computer hardware"— Presentation transcript:

1 Operating System Interface between a user and the computer hardware
Provides an environment in which a user can execute programs Goals Make the computer system convenient to use Use the computer hardware (resources) in an efficient manner

2 Functions of Operating System
Program Creation --- editors, debuggers, ... etc.. These are in the forms of utility programs that are not actually part of the O.S. but are accessible through the O.S. Program Execution --- to execute a program, instructions and data must be loaded into the main memory, I/O devices and files must be initialized. Access to I/O devices --- as if simple read and write to the programmers Controlled Access to Files --- not only the control of I/O devices, but file format on the storage medium.

3 Functions of Operating System(Contd…)
System Access --- shared and public resources, protection of resources and data, resolve conflicts in the contention for resources. Error Detection and Response Internal/external hardware errors (memory error, device failures and mal-functions) Software errors (arithmetic overflows, attempt to access forbidden memory locations, inability of the O.S. to grant the request of an application) Ending a program, retrying , and reporting errors. Accounting --- collect usage statistics for various resources, billing, and monitoring performance.

4 Generation of Languages

5 Programming languages
A set of rules ,symbols and characters that allows the user to communicate with the computer. Programming Language Machine Language Assembly Language High-level Language

6 Machine Language Fundamental language of a computer.
Set of instruction codes(binary or decimal) which can be directly understood by the computer is called machine language. String of binary digits(1’s or 0’s). An instruction has two-part format: opcode and operand. OPCODE OPERAND What function to perform Where to find the data

7 Advantages limitations
Fast because machine instructions are understood directly without any translation. limitations Error prone Difficult to modify Machine dependent Difficult to program

8 Assembly Language Language that allows instructions and storage locations to be represented by letters and symbols instead of numbers. Also known as symbolic language. Example: Program to add 2 numbers CLA A ADD B STORE C TYPE C HALT

9 One-to-one correspondence
Assembler Assembler is a translator program that translates an assembly program into its equivalent machine language program. System software supplied by computer manufacturers. Input Output Assembler Machine language program One-to-one correspondence Source Program Object Program

10 Advantages over Machine Language
Easier to understand and use. Easy to locate and correct errors Easier to modify No worry about addresses Efficiency of machine language Limitations Machine dependent Knowledge of hardware required Machine level coding

11 High Level Languages Language that uses English words and/or mathematical symbols rather than the mnemonic codes. Overcome the limitations of low level languages. E.g. a statement to add to numbers A and B using C language is sum=A+B; Some common high level languages are FORTRAN COBOL BASIC C AND C++ JAVA

12 Compiler A translator program that translates a high level language into its equivalent machine language program. Can translate only those programs that have been written in the language for which the compiler is meant. Input High level language program Output Compiler Machine language program One-to-many correspondence Source Program Object Program

13 High level language program
Interpreter Translator program that translates a high level language program into its equivalent machine language program. Translates and executes a high level language program statement- by statement. Does not generate any object code of the source program. High level language program Input Output Interpreter Result of program execution (Source Program)

14 Advantages limitations Lower efficiency Less flexibility
Machine independence Easier to learn and use Fewer errors Lower program preparation cost Better documentation Easier to maintain limitations Lower efficiency Less flexibility

15 Fourth Generation Languages
Fourth-generation languages are programming languages closer to human languages than typical high-level programming languages. It allows the user to simply specify what to do without describing how to do. All 4GLs are designed to reduce programming effort, the time it takes to develop software, and the cost of software development. Some common 4GL’s are Oracle, SQL etc.


Download ppt "Operating System Interface between a user and the computer hardware"

Similar presentations


Ads by Google