Operating system chapter 3
اسلاید 1: 1Process Description and ControlChapter 3
اسلاید 2: 2Requirements of an Operating SystemInterleave the execution of multiple processes to maximize processor utilization while providing reasonable response timeAllocate resources to processesSupport interprocess communication and user creation of processes
اسلاید 3: 3ConceptsComputer platform consists of a collection of hardware resourcesComputer applications are developed to perform some taskInefficient for applications to be written directly for a given hardware platformOperating system provides a convenient to use, feature rich, secure, and consistent interface for applications to useOS provides a uniform, abstract representation of resources that can be requested and accessed by application
اسلاید 4: 4Manage Execution of ApplicationsResources made available to multiple applicationsProcessor is switched among multiptle applicationThe processor and I/O devices can be used efficiently
اسلاید 5: 5ProcessA program in executionAn instance of a program running on a computerThe entity that can be assigned to and executed on a processorA unit of activity characterized by the execution of a sequence of instructions, a current state, and an associated set of system instructions
اسلاید 6: 6Process ElementsIdentifierStatePriorityProgram counterMemory pointersContext dataI/O status informationAccounting information
اسلاید 7: 7Process Control BlockContains the process elementsCreated and manage by the operating systemAllows support for multiple processes
اسلاید 8: 8Process Control Block
اسلاید 9: 9Trace of ProcessSequence of instruction that execute for a processDispatcher switches the processor from one process to another
اسلاید 10: 10Example Execution
اسلاید 11: 11Trace of Processes
اسلاید 12: 12
اسلاید 13: 13Two-State Process ModelProcess may be in one of two statesRunningNot-running
اسلاید 14: 14Not-Running Process in a Queue
اسلاید 15: 15Process Creation
اسلاید 16: 16Process Termination
اسلاید 17: 17Process Termination
اسلاید 18: 18ProcessesNot-runningready to executeBlockedwaiting for I/ODispatcher cannot just select the process that has been in the queue the longest because it may be blocked
اسلاید 19: 19A Five-State ModelRunningReadyBlockedNewExit
اسلاید 20: 20Five-State Process Model
اسلاید 21: 21Process States
اسلاید 22: 22Using Two Queues
اسلاید 23: 23Multiple Blocked Queues
اسلاید 24: 24Suspended ProcessesProcessor is faster than I/O so all processes could be waiting for I/OSwap these processes to disk to free up more memoryBlocked state becomes suspend state when swapped to diskTwo new statesBlocked/SuspendReadySuspend
اسلاید 25: 25One Suspend State
اسلاید 26: 26Two Suspend States
اسلاید 27: 27Reasons for Process Suspension
اسلاید 28: 28Processes and Resources
اسلاید 29: 29Operating System Control StructuresInformation about the current status of each process and resourceTables are constructed for each entity the operating system manages
اسلاید 30: 30Memory TablesAllocation of main memory to processesAllocation of secondary memory to processesProtection attributes for access to shared memory regionsInformation needed to manage virtual memory
اسلاید 31: 31I/O TablesI/O device is available or assignedStatus of I/O operationLocation in main memory being used as the source or destination of the I/O transfer
اسلاید 32: 32File TablesExistence of filesLocation on secondary memoryCurrent StatusAttributesSometimes this information is maintained by a file management system
اسلاید 33: 33Process TableWhere process is locatedAttributes in the process control blockProgramDataStack
اسلاید 34: 34Process Image
اسلاید 35: 35
اسلاید 36: 36Process Control BlockProcess identificationIdentifiersNumeric identifiers that may be stored with the process control block include Identifier of this process Identifier of the process that created this process (parent process) User identifier
اسلاید 37: 37Process Control BlockProcessor State InformationUser-Visible RegistersA user-visible register is one that may be referenced by means of the machine language that the processor executes while in user mode. Typically, there are from 8 to 32 of these registers, although some RISC implementations have over 100.
اسلاید 38: 38Process Control BlockProcessor State InformationControl and Status RegistersThese are a variety of processor registers that are employed to control the operation of the processor. These includeProgram counter: Contains the address of the next instruction to be fetchedCondition codes: Result of the most recent arithmetic or logical operation (e.g., sign, zero, carry, equal, overflow)Status information: Includes interrupt enabled/disabled flags, execution mode
اسلاید 39: 39Process Control BlockProcessor State InformationStack PointersEach process has one or more last-in-first-out (LIFO) system stacks associated with it. A stack is used to store parameters and calling addresses for procedure and system calls. The stack pointer points to the top of the stack.
اسلاید 40: 40Process Control BlockProcess Control InformationScheduling and State InformationThis is information that is needed by the operating system to perform its scheduling function. Typical items of information:Process state: defines the readiness of the process to be scheduled for execution (e.g., running, ready, waiting, halted).Priority: One or more fields may be used to describe the scheduling priority of the process. In some systems, several values are required (e.g., default, current, highest-allowable)Scheduling-related information: This will depend on the scheduling algorithm used. Examples are the amount of time that the process has been waiting and the amount of time that the process executed the last time it was running.Event: Identity of event the process is awaiting before it can be resumed
اسلاید 41: 41Process Control BlockProcess Control InformationData StructuringA process may be linked to other process in a queue, ring, or some other structure. For example, all processes in a waiting state for a particular priority level may be linked in a queue. A process may exhibit a parent-child (creator-created) relationship with another process. The process control block may contain pointers to other processes to support these structures.
اسلاید 42: 42Process Control BlockProcess Control InformationInterprocess CommunicationVarious flags, signals, and messages may be associated with communication between two independent processes. Some or all of this information may be maintained in the process control block. Process PrivilegesProcesses are granted privileges in terms of the memory that may be accessed and the types of instructions that may be executed. In addition, privileges may apply to the use of system utilities and services.
اسلاید 43: 43Process Control BlockProcess Control InformationMemory ManagementThis section may include pointers to segment and/or page tables that describe the virtual memory assigned to this process. Resource Ownership and UtilizationResources controlled by the process may be indicated, such as opened files. A history of utilization of the processor or other resources may also be included; this information may be needed by the scheduler.
اسلاید 44: 44Processor State InformationContents of processor registersUser-visible registersControl and status registersStack pointersProgram status word (PSW)contains status informationExample: the EFLAGS register on Pentium machines
اسلاید 45: 45Pentium II EFLAGS Register
اسلاید 46: 46Modes of ExecutionUser modeLess-privileged modeUser programs typically execute in this modeSystem mode, control mode, or kernel modeMore-privileged modeKernel of the operating system
اسلاید 47: 47Process CreationAssign a unique process identifierAllocate space for the processInitialize process control blockSet up appropriate linkagesEx: add new process to linked list used for scheduling queueCreate of expand other data structuresEx: maintain an accounting file
اسلاید 48: 48When to Switch a ProcessClock interruptprocess has executed for the maximum allowable time sliceI/O interruptMemory faultmemory address is in virtual memory so it must be brought into main memory
اسلاید 49: 49When to Switch a ProcessTraperror or exception occurredmay cause process to be moved to Exit stateSupervisor callsuch as file open
اسلاید 50: 50Change of Process StateSave context of processor including program counter and other registersUpdate the process control block of the process that is currently in the Running stateMove process control block to appropriate queue – ready; blocked; ready/suspendSelect another process for execution
اسلاید 51: 51Change of Process StateUpdate the process control block of the process selectedUpdate memory-management data structuresRestore context of the selected process
اسلاید 52: 52Execution of the Operating SystemNon-process KernelExecute kernel outside of any processOperating system code is executed as a separate entity that operates in privileged modeExecution Within User ProcessesOperating system software within context of a user processProcess executes in privileged mode when executing operating system code
اسلاید 53: 53
اسلاید 54: 54
اسلاید 55: 55Execution of the Operating SystemProcess-Based Operating SystemImplement operating system as a collection of system processesUseful in multi-processor or multi-computer environment
اسلاید 56: 56UNIX SVR4 Process ManagementMost of the operating system executes within the environment of a user process
اسلاید 57: 57UNIX Process States
اسلاید 58: 58UNIX Process Image
اسلاید 59: 59
نقد و بررسی ها
هیچ نظری برای این پاورپوینت نوشته نشده است.