Podcast
Questions and Answers
What is the primary role of an operating system?
What is the primary role of an operating system?
- To provide entertainment and multimedia services to the user.
- To directly manage and execute user applications without any abstraction.
- To design and manufacture computer hardware components.
- To act as an intermediary between the computer hardware and the user. (correct)
Which of the following is NOT a primary goal of an operating system?
Which of the following is NOT a primary goal of an operating system?
- Developing new hardware architectures. (correct)
- Executing user programs and simplifying problem-solving.
- Making the computer system convenient for user interaction.
- Utilizing computer hardware in an efficient manner.
Which of the following is considered a component of a computer system?
Which of the following is considered a component of a computer system?
- Hardware, operating system, application programs, and users. (correct)
- Only the operating system and application programs.
- The users and application programs exclusively.
- The CPU and memory only.
What is the role of 'users' in the context of computer systems, as defined in the material?
What is the role of 'users' in the context of computer systems, as defined in the material?
An operating system balances the trade-off between performance and resource utilization. Which scenario exemplifies this?
An operating system balances the trade-off between performance and resource utilization. Which scenario exemplifies this?
What is the role of the OS in a shared computer environment like a mainframe?
What is the role of the OS in a shared computer environment like a mainframe?
Which of the following describes the role of an OS in dedicated systems like workstations?
Which of the following describes the role of an OS in dedicated systems like workstations?
How does the OS manage resources in handheld computers with limited battery life?
How does the OS manage resources in handheld computers with limited battery life?
What is the defining characteristic of operating systems in embedded computers?
What is the defining characteristic of operating systems in embedded computers?
What is the practical definition of an OS in terms of resource management?
What is the practical definition of an OS in terms of resource management?
What is the primary function of an OS when viewed as a control program?
What is the primary function of an OS when viewed as a control program?
What is the 'kernel' according to the content?
What is the 'kernel' according to the content?
What is the role of the 'bootstrap program' during computer startup?
What is the role of the 'bootstrap program' during computer startup?
Where is the bootstrap program typically stored?
Where is the bootstrap program typically stored?
What is the significance of the 'common bus' in computer system organization?
What is the significance of the 'common bus' in computer system organization?
What is the function of a device controller in computer-system operation?
What is the function of a device controller in computer-system operation?
How does a device controller notify the CPU that it has completed its operation?
How does a device controller notify the CPU that it has completed its operation?
Regarding interrupts, what is contained within the 'interrupt vector'?
Regarding interrupts, what is contained within the 'interrupt vector'?
What is the key difference between a 'trap' and a typical interrupt?
What is the key difference between a 'trap' and a typical interrupt?
What does it mean for an operating system to be 'interrupt driven'?
What does it mean for an operating system to be 'interrupt driven'?
How does the operating system preserve the state of the CPU when an interrupt occurs?
How does the operating system preserve the state of the CPU when an interrupt occurs?
What is the role of 'polling' in interrupt handling?
What is the role of 'polling' in interrupt handling?
What is the purpose of a 'vectored interrupt system'?
What is the purpose of a 'vectored interrupt system'?
In I/O structure, what does it mean when control returns to the user program 'only upon I/O completion'?
In I/O structure, what does it mean when control returns to the user program 'only upon I/O completion'?
What is a 'system call' in the context of I/O operations?
What is a 'system call' in the context of I/O operations?
What information is typically contained in a 'device-status table'?
What information is typically contained in a 'device-status table'?
Which of the following is the smallest unit of computer storage?
Which of the following is the smallest unit of computer storage?
How many bits are typically in a byte?
How many bits are typically in a byte?
What is the key characteristic of 'main memory'?
What is the key characteristic of 'main memory'?
What is the primary difference between main memory and secondary storage?
What is the primary difference between main memory and secondary storage?
How is the surface of a hard disk logically organized?
How is the surface of a hard disk logically organized?
What is the function of a 'disk controller'?
What is the function of a 'disk controller'?
Which storage technology is faster and nonvolatile compared to traditional hard disks?
Which storage technology is faster and nonvolatile compared to traditional hard disks?
What are the key characteristics that define the storage hierarchy?
What are the key characteristics that define the storage hierarchy?
What is 'caching' in the context of storage systems?
What is 'caching' in the context of storage systems?
What is the role of a 'device driver'?
What is the role of a 'device driver'?
According to the material, what does caching dictate?
According to the material, what does caching dictate?
What is the purpose of Direct Memory Access (DMA)?
What is the purpose of Direct Memory Access (DMA)?
In the context of computer architecture, what is a key advantage of multiprocessor systems?
In the context of computer architecture, what is a key advantage of multiprocessor systems?
What is the defining characteristic of 'Symmetric Multiprocessing'?
What is the defining characteristic of 'Symmetric Multiprocessing'?
Flashcards
What is an Operating System?
What is an Operating System?
A program that acts as an intermediary between a user and computer hardware.
What is Hardware?
What is Hardware?
All electronic devices and circuitry providing computing resources.
What is an Operating System?
What is an Operating System?
Controls and coordinates the use of hardware among applications and users.
What are Application Programs?
What are Application Programs?
Signup and view all the flashcards
Who are Users?
Who are Users?
Signup and view all the flashcards
What is a Bootstrap Program?
What is a Bootstrap Program?
Signup and view all the flashcards
What is a Common Bus?
What is a Common Bus?
Signup and view all the flashcards
What is an Interrupt?
What is an Interrupt?
Signup and view all the flashcards
What is Resource Allocation?
What is Resource Allocation?
Signup and view all the flashcards
What is the Kernel?
What is the Kernel?
Signup and view all the flashcards
What does Interrupt do?
What does Interrupt do?
Signup and view all the flashcards
What does the OS do in Interrupt Handling?
What does the OS do in Interrupt Handling?
Signup and view all the flashcards
What is Polling?
What is Polling?
Signup and view all the flashcards
Whats is Device-Status Table?
Whats is Device-Status Table?
Signup and view all the flashcards
What is a bit?
What is a bit?
Signup and view all the flashcards
What is a byte?
What is a byte?
Signup and view all the flashcards
What is a word?
What is a word?
Signup and view all the flashcards
What is a Kilobyte (KB)?
What is a Kilobyte (KB)?
Signup and view all the flashcards
What is a Megabyte (MB)?
What is a Megabyte (MB)?
Signup and view all the flashcards
What is a Gigabyte (GB)?
What is a Gigabyte (GB)?
Signup and view all the flashcards
What is a Terabyte (TB)?
What is a Terabyte (TB)?
Signup and view all the flashcards
What is a Petabyte (PB)?
What is a Petabyte (PB)?
Signup and view all the flashcards
What is Main Memory?
What is Main Memory?
Signup and view all the flashcards
What is Secondary Storage?
What is Secondary Storage?
Signup and view all the flashcards
What is Disk Surface?
What is Disk Surface?
Signup and view all the flashcards
What does Disk Controller do?
What does Disk Controller do?
Signup and view all the flashcards
What is Solid-State Disks?
What is Solid-State Disks?
Signup and view all the flashcards
What is Caching?
What is Caching?
Signup and view all the flashcards
What does Device Driver do?
What does Device Driver do?
Signup and view all the flashcards
What is DMA?
What is DMA?
Signup and view all the flashcards
Advantages of Multiprocessors?
Advantages of Multiprocessors?
Signup and view all the flashcards
What is Asymmetric Multiprocessing?
What is Asymmetric Multiprocessing?
Signup and view all the flashcards
What is Symmetric Multiprocessing?
What is Symmetric Multiprocessing?
Signup and view all the flashcards
What does Multi-Core/Multi-Chip do?
What does Multi-Core/Multi-Chip do?
Signup and view all the flashcards
What are Clustered Systems?
What are Clustered Systems?
Signup and view all the flashcards
Asymmetric Clustering?
Asymmetric Clustering?
Signup and view all the flashcards
Symmetric Clustering?
Symmetric Clustering?
Signup and view all the flashcards
What is Multiprogramming?
What is Multiprogramming?
Signup and view all the flashcards
What does Job scheduling do?
What does Job scheduling do?
Signup and view all the flashcards
What is Timesharing?
What is Timesharing?
Signup and view all the flashcards
Study Notes
Lecture 1: Introduction & Overview of Operating Systems
- The lecture introduces fundamental concepts of operating systems
- The lecture is presented by Dr. Nasser Tamim
Objectives
- The purpose is to describe the basic organisation of computer systems
- The goal is to provide a tour of the major components of systems
- The aim is to give an overview of computing environments
- The lecture will explore open source operating systems
What is an Operating System?
- An operating system is a program that acts as an intermediary between a computer user and the computer hardware
- The operating system enables execution of user programs (apps) and simplifies problem-solving
- Operating systems make computers convenient to use by creating interaction between user and hardware, working as a platform for applications
- The operating system handles resources efficiently
Computer System Structure
- A computer system consists of four components
- The Hardware provides computing resources such as CPU, memory, and I/O devices
- The Operating System controls and coordinates hardware use across applications and users
- Application Programs define how system resources are used to solve users' computing problems
- Examples are word processors, compilers, browsers, database systems, and video games
- Users relates to entities, including people, machines, and other computers, that utilize the system
Operating System Roles
- User perspective is convenience, ease of use, and performance, regardless of resource utilization
- The OS balances performance and resource utilization
- Shared computers serve many users, so the OS manages services and optimizes resource allocation to ensure quality
- Dedicated systems use dedicated resources and shared server resources
- The OS provides services with optimal resource utilization on-demand
- Handheld computers have limited resources
- The OS balances performance with minimal power consumption for longer battery life
- Embedded computers without user interfaces require the OS to provide required services without intervention
Operating System Definition
- An OS is a resource allocator that manages all resources and decides between conflicting requests for efficient utilization
- An OS is a control program that prevents errors and improper computer use
- There is no universally accepted OS definition
- One approximation is "Everything a vendor ships when you order an operating system," but capabilities and functionalities vary wildly across operating systems
- The Kernel is the core program running at all times on the computer
- All else is either a system or application program
Computer Startup
- A Bootstrap program is loaded during power-up or reboot with the following characteristics
- Stored in ROM or EPROM, also known as firmware
- Initialises OS, hardware, and system programs
- Loads the operating system kernel and starts execution
Computer System Organization
- One or more CPUs and device controllers connect through a common bus
- The common bus provides access to shared memory (main memory) for executing operations or tasks
- CPUs and devices compete for memory cycles concurrently, turns or time is needed to perform a task
Computer-System Operation
- I/O devices and the CPU can execute concurrently
- Each device controller manages a specific device type has a local buffer
- The local buffer stores for a certain amount of time
- The CPU moves data between main memory and local buffers
- I/O moves data between device and the controller's local buffer
- A device controller informs the CPU of operation completion via an interrupt
Common Functions of Interrupts
- Interrupts transfer control to the interrupt service routine (ISR) via an interrupt vector with addresses of all service routines
- Interrupt architecture saves the address of the interrupted instruction
- A trap or exception is a software-generated interrupt that signals errors or user requests
- Operating systems are interrupt driven
Interrupt Handling
- To handle interrupts, the OS preserves the CPU by storing registers to allow for Program Counter (PC) management
- Polling allows checking device statuses
- Vectored interrupt systems assign unique codes, four to eight bits long, to interrupting devices
- The device sends its code over the data bus to tell the processor which routine to execute
- Separate code segments handle actions for each type of interrupt
I/O Structure
- Control returns to the user program upon I/O completion
- A wait instruction idles the CPU or a wait loop arises
- I/O requests are processed sequentially
- The system call requests the OS to wait for I/O completion
- A device status table contains entries showing I/O device type, address, and status
- The OS indexes the I/O device table to modify the entry for the table status to include "interrupt"
Storage Definitions and Notation Review
- The base computer storage is a bit which contains 0 or 1
- A byte is 8 bits and is the smallest chunk for storage
- A word is a unit of data size
- Operations execute based on word size, rather than a byte
- Storage is measured in bytes
- A Kilobyte (KB) is 1,024 bytes
- A Megabyte (MB) is 1024^2 bytes = 1,048,576 bytes = 1024 Kilobytes
- A Gigabyte (GB) is 1024^3 bytes = 1,073,741,824 bytes = 1024 Megabytes
- A Terabyte (TB) is 1,024^4 bytes
- A Petabyte (PB) is 1,024^5 bytes
- Computer manufacturers may round off
- Networking uses bits because networks move data bit by bit
Storage Structure
- Main memory is directly accessible by CPU, like RAM
- It is often volatile
- Secondary storage extends main memory, providing nonvolatile storage
- Hard disks use magnetic recording material with divided tracks and sectors
- A disc controller interacts logical interactions between device (CPU and main memory)
- Solid-state disks are nonvolatile and becoming more popular
Storage Hierarchy
- Storage systems are organized by speed, cost, and volatility
- Caching involves copying information into faster storage and can view main memory as the cache
- Device drivers manage I/O with a uniform interface between controller and kernel
Caching
- Caching transfers information from slower to faster storage temporarily
- Faster storage caches check information
- If it is not there, data copies to cache
- Cache is smaller than the information stored and cache management design is an important consideration
Direct Memory Access (DMA) Structure
- DMA structure uses high-speed I/O devices to transmit data at memory speeds
- It transfers data blocks bypassing CPU intervention so it uses one interrupt per block
Computer-System Architecture
- Most systems use general-purpose processors, also using special-purpose processors
- Multiprocessor systems, are also known as parallel/tightly-coupled systems, growing importance
- Increased throughput
- Economy of scale
- Increased reliability
- Multiprocessor systems have 2 types
- Asymmetric Multiprocessing assigns tasks to different CPUs
- eg one CPU handles the OS while another performs I/O
- Symmetric Multiprocessing assigns all processor all tasks
- CPUs all work on the same OS and memory
Dual-Core & Multi-Core Design
- Multi-chip or multicore refers to computers or processors having more than one processing unit (CPU) core
Clustered Systems
- Clustered systems work like multiprocessor systems
- Share storage via a storage-area network (SAN)
- Provide a high-availability service for failure survival
- Asymmetric clustering uses one machine in hot-standby node to monitor the system while other nodes do real tasks
- Symmetric clustering involves all nodes running applications and monitoring each other
- HPC enables parallelization
- Distributed lock managers (DLM) prevent multiple operations by maintaining a list to monitor the system
Operating System Structure
- Multiprogramming is needed for efficiency
- A single user cannot keep CPUs and I/O busy -Organizes code and data of the current job
- Total jobs in system are also kept in memory
- Time sharing (multitasking) is a logical extension of multiprogramming
It is interactive computing
- Response time is sub second
-Each user can execute one process
- CPU scheduling if there are multiple ready jobs and the swapping handles when there is no more memory
- Response time is sub second
-Each user can execute one process
- Virtual memory allows execution of processes that are not completely in memory
Operating-System Operations
- Operating system operations are triggered by software and hardware interrupts
- A software interrupt can also describe a trap, or exception (divide by zero), process issues - infinite loops
Operating-System Operations (cont.)
- Dual-mode operation protects the OS by switching between user mode and kernel mode
- A mode bit distinguishes current code execution
- Privileged instructions only exist in kernel mode
- System calls switch operations from user to kernel mode
- Increasingly, CPUs such as VMs support multiple operations
Transition from User to Kernel Mode
- Protection of the OS relies on timers to prevent loops that hog resources.
- Timers interrupt the computer after some period
- The OS sets a decrementing counter (privileged instruction)
- The interrupt will generate when zero is reached
- The timer sets before scheduling to control and terminate allotted time
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.