* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download 4th Edition: Chapter 1
		                    
		                    
								Survey							
                            
		                
		                
                            
                            
								Document related concepts							
                        
                        
                    
						
						
							Transcript						
					
					Introduction  What is an Operating System  What Operating Systems Do  How is it filling our life Lecture 1 1-1 What is an Operating System?  “A program that acts as an intermediary between a user of a computer and the computer hardware”  Operating system goals:  Execute user programs and make solving user problems easier  Use the computer hardware in an efficient manner  Make the computer system convenient to use Lecture 1 1-2 What is a Computer System?  Computer system structure can be divided into four components:  Hardware – provides basic computing resources • CPU, memory, I/O devices  Application programs – define the ways in which the system resources are used to solve the computing problems of the users • Word processors, compilers, web browsers, database systems, video games  Users • People, machines, other computers  Operating system – “the manager of the above three” • Controls and coordinates use of hardware among various applications and users Lecture 1 1-3 Computer System and how OS fits into it Lecture 1 1-4 Operating System Definition  From system point of view:  OS is a resource allocator  Manages all resources  Decides between conflicting requests for efficient and fair resource use  OS is a control program  Controls execution of programs to prevent errors and improper use of the computer Lecture 1 1-5 How OS evolved  Mainframe Systems        One of the earliest computer systems Huge computers Very simple systems Can process one job after another Jobs were fed with punch cards Operators sort jobs into batches Also known as Batch Systems Image courtesy: http://en.wikipedia.org/wiki/File:Ibm704.gif   Mainframe systems have severe efficiency problem WHY? Lecture 1 1-6 Mainframe OS – severe disadvantages  Mainframe Systems   Process one job after another Jobs were fed with punch cards  CPU works in microseconds range I/O system very slow Approx. 1200 cards/min. 20 cards/sec.  CPU is almost always idle!!!    Image courtesy: http://en.wikipedia.org/wiki/File:Ibm704.gif   It was needed to keep multiple jobs ready so that CPU does not become idle…how? Introduction of disk technology changed the complete OS history Lecture 1 1-7 Multiprogrammed Systems  Multiprogramming needed for efficiency   Single user cannot keep CPU and I/O devices busy at all times Multiprogramming organizes jobs (code and data) so CPU always has one to execute  How to achieve this?     Disk technology helped us to keep multiple jobs in job pool (Disk) A subset of total jobs in system is kept in memory One job selected and executed When it has to wait (I/O for example), OS switches to another job  Multiprogrammed introduced two novel challenges   Job scheduling Memory management Lecture 1 1-8 Time-Sharing Systems  Time-sharing systems are logical extension of multiprogrammed systems  Also known as multitasking       Each user has at least one program executing in memory process CPU switches jobs so frequently that users can interact with each job while it is running, creating interactive computing Response time should be < 1 second If several jobs ready to run at the same time  CPU scheduling If processes don’t fit in memory, swapping moves them in and out to run Virtual memory allows execution of processes not completely in memory Lecture 1 1-9 Multiprocessor Systems  Most systems use a single general-purpose processor (PDAs through mainframes)  Multiprocessor systems growing in use and importance  Also known as parallel systems, tightly-coupled systems  Advantages include 1. Increased throughput 2. Economy of scale 3. Increased reliability – graceful degradation or fault tolerance  Two types 1. Asymmetric Multiprocessing 2. Symmetric Multiprocessing Lecture 1 1-10 Symmetric Multiprocessing Architecture Lecture 1 1-11 A Dual-Core Design Lecture 1 1-12 Shift to Distributed Systems  Client-Server Computing  Distributed systems over the network  Many systems now servers, responding to requests generated by clients  Compute-server provides an interface to client to request services (i.e. database)  File-server provides interface for clients to store and retrieve files Lecture 1 1-13 Peer-to-Peer Systems  Another model of distributed system  P2P does not distinguish clients and servers  Instead all nodes are considered peers  May each act as client, server or both  Node must join P2P network • Registers its service with central lookup service on network, or • Broadcast request for service and respond to requests for service via discovery protocol  Examples include Napster and bitTorrent Lecture 1 1-14 Change in Computing Environments  Traditional computing   Office environment • Earlier, PCs connected to a network, terminals attached to mainframe or minicomputers providing batch and timesharing • Now, portals allowing networked and remote systems access to same resources Home networks • Earlier, used to be single system, then modems • Now, firewalled, networked Lecture 1 1-15
 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
									 
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                            