<font face="Dejavu Sans"/> # ItC Week 12 - Operating System ###### tags: `Intro_to_Comp` - ## What is OS - Goals - Execute user programs and make solving user problems easier - Make the computer system convenient to use - Use the computer hardware in an efficient manner - A resouce allocator - Manage which resource can be used by which program - A control program - ## Startup - "bootstrap program" is loaded at powerup or reboot - Usually stored in ROM or EPROM - aka firmware - Initialize system in all aspects - Loads OS kernel and transfer control to it - ## Intertupt - Function - An interrupt transfers control to the interrupt service routine - Through the "Interrupt vector", which contains the addresses of all service routines - Interrupt architecture must save the address of the interrupted instuction - A "trap" or "exception" si a software-generated interrupt caused by either an erro ror a user request - An OS support such things is "interrupt driven". - Interrupt handling - OS preserves CPU state by storing registers and program counter - Determines which type of interrupt has occerred - Vectored interrupt system - Polling - poll each possible I/O device, check for requests - ## Cache - Use some faster storage to store often-accessed data - Replacement policy - FIFO - MRU - LRU - ## System Architecture - Multiprocessors - pros - increase throughput - economy - increase reliability - types - asymmetric - symmetric - Types - Asymmetric Multiprocessing - each processor is assigned with a specific task - SYmmetric Multiprocessing - each processor performs all tasks - ## Clustered Systems - Multiple systems working together - Share storage via a storage-area network (SAN) - high-availability bc is can survive some failure - Asymmetric clustering - one machine in hot-standby mode - Symmetric clustering - multiple nodes running apps and monitoring each other - Some have distributed lock manager to avoid conflicting operations - ## OS Structure - Multiprogramming (Batch System) - job scheduling - switch other job when waiting (like I/O) - Timesharing (Multitasking) - CPU scheduling - memory swapping - virtual memory - ## OS Operations - Interrupt - hardware - software - software error - system request - infinite loop.... - Dual-mode - allow OS protects and other system components - {%hackmd OQo9p0ONRaSb9WIkZQZZ7w %}