OS_Lec 1_1 (1).pptx
Document Details
Uploaded by FormidableConnemara4426
NSBM Green University
Tags
Full Transcript
Operating Systems Introduction To Operating Systems Lecture 1 Dr. Pabudi Abeyrathne. [email protected] Faculty of Computing NSBM Green University Operating Systems Module overview Delivery Plan 2 hours lecture & 1 hour tutorial Eva...
Operating Systems Introduction To Operating Systems Lecture 1 Dr. Pabudi Abeyrathne. [email protected] Faculty of Computing NSBM Green University Operating Systems Module overview Delivery Plan 2 hours lecture & 1 hour tutorial Evaluation Criteria 60% Final exam & 40% Final assignment and continuous assignment Recommended textbooks: System Concepts by Silberschatz, A., Galvin, P. B. & Gagne, G 10th edition Andrew, S. T., & Herbert, B. (2015). Modern operating systems. Pearson Education. What is an Operating System? A program which controls the execution of all other programs (applications). Acts as an intermediary between the user(s) and the computer hardware. Objectives: – convenience, – efficiency, – extensibility. Similar to a government... A Computer A computer is a device or system that includes Hardwa Peripher re als Comput er Softwa Users re Software System Software Application Software Software System Software Operati ng Application System Software Softwar e Operating System (OS) An OS is a program that acts an intermediary between the user of a computer and computer hardware. OS is a software program that enables the computer hardware to communicate and operate with the computer software. Placement of Operating System Banking Airline Web Applicat System Reservat Browser ion SW ion Utility Compiler Editors Command Progra s Interpretatio System m SW n Operating System Hardwa re Machine Language Related Micro architecture What are the operating systems do you know ? Why Operating Systems needs to improve ? Hardware Complexity Increases “The number of transistors per square inch on integrated circuits had doubled every year since the integrated circuit was invented” 2. Software Complexity Increases Who is it ? OS acts as the Executive Manager Hardware Software The basic task of an Operating System Controls the execution of user programs. Act as an interface between applications and computer Hardware. Use computer hardware efficiently. By allow sharing of hardware and software resources. Make application software portable and adaptable. Provide isolation, security and protection among user programs. Improve overall system reliability. The Objectives of an Operating System Convenience : An OS makes a computer more convenient to use. OS as a user/computer interface. Efficiency: An OS allows the computer system resources to be used in an efficient manner. OS as a resource mnager. Ability to evolve: OS design should allow introduction of new features. Key Service Areas Provided by Operating Systems Program development. editors, compilers, debugging Program Execution. Instructions & data must be loaded into main memory. I/O devices must be initialized, other resources prepared. Takes care of scheduling. Key Service Areas Provided by Operating Systems cont… Access to I/O devices. Each I/O device requires it’s own peculiar set of set of instructions. OS provides a uniform interface that hides the details. Controlled access to files. Hides details specific to I/O devices (Hard drive, tape…) Manages the structure of data. Key Service Areas Provided by Operating Systems cont… System access. Logging procedures: privacy. Error detection and response. Must handle hardware, software errors. In response may abort a program, print a message etc… Accounting Collect usage statistics, useful for future enhancement ( memory usage, clocks) OS as a Resource Manager Top-Down View: OS provides an abstraction to application programs. Simplifying interaction for applications. Bottom-Up View: OS provides Complex System Management therefore OS manages diverse components - processors, memories, I/O devices. Objective: Orderly and controlled allocation among programs. OS as a Resource Manager Manage all resources. when there are conflicting requests for resources, the operating system has to make decisions that are both efficient and fair, ensuring that everything runs smoothly for all users and programs. How OS Manages the resources computer system Main Keyboard I/O Controller , mouse memory Printer OS Kernel I/O Controller User Program Data HD (Hard I/O Controller Drive) Processor OS Processor User Program Data The Kernel The program that executes forever The kernel is a computer program at the core of a computer's operating system with complete control over everything in the system. It is an integral part of any operating system. It is the "portion of the operating system code that is always resident in memory”. It facilitates interactions between hardware and software components. On most systems, it is one of the first programs loaded on startup (after the boot loader). History of Operating Systems Direct Interaction with Hardware Programmers would manually input their programs by wiring or using machine language, and they often interacted with the computer in real-time during program execution. Simple Batch System In this type of system, there is no direct interaction between user and the computer. Each user prepares his job on an off-line device like punch cards and submits it to the computer operator. To speed up processing, jobs with similar needs are batched together and run as a group Serial processing Multiprogrammed Batch System Multiprogramming is a technique to execute number of programs simultaneously by a single processor. In multiprogramming, number of processes resides in main memory at a time. The OS picks and begins to execute one of the jobs in main memory Advantages of Multiprogramming Systems Advantages Disadvantages Efficient memory User can not interact utilization directly with the system Throughput increases CPU is never idle, so performance increases. Waiting time is limited in multiprogramming Time sharing Systems System which shares the CPU time among different processes. In such system, there are more than one user interacting the system at the same time. Multiple jobs are executed by switching the CPU between them but the switches occur so frequently that users can interact with each program while it is running. user can assume that he is only working on the system, but actually CPU is shared among different users. Time sharing Systems Advantages Disadvantages user can interact with As numbers of users the job while it is are interacting with executing, but it is the processor at the not possible in batch same time, it is system. complex than multiprogrammed OS. Efficient CPU System must have utilization memory management and protection, since several jobs are kept in memory at the same time. Multiprocessor System/ Parallel System Single processor systems have only one CPU, however in multiprocessor system have more than one processor. These systems are also known as parallel systems or tightly coupled systems. It is called parallel system, because numbers of processors are executing their jobs in parallel. Distributed Operating Systems Distributed OS are the OS for a network of autonomous computers, connected by a communication network, that follows message passing mechanism. In this system, processors cannot share memory or clock. Each processor has its own local memory. The processors communicate with one another through various communication lines such as high speed bus. A distributed OS controls and manages the software and hardware resources of a distributed system. Real Time Operating System Systems in which the correctness of the system depends not only on the logical result produced, but also the time at which the result produced. Real time systems have many events that must be accepted and processed in a short time or within certain deadline. Such applications include: Rocket lunching Flight control Robotics Telephone switching equipment Fire and smoke sensor etc. Thank You.. !