Introduction to Operating Systems

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

An operating system primarily aims to provide user programs with what?

  • A streamlined and simplified interface to the computer's resources. (correct)
  • A comprehensive guide on hardware maintenance and upgrades.
  • A complex model for managing computer components.
  • Direct access to all hardware resources.

The user interface program, or GUI, operates at the kernel level, providing direct access to system operations.

False (B)

What is the primary reason for segmenting the operating system's operations into kernel mode and user mode?

Enhanced system stability and security

Which of the following best describes one of the major tasks an operating system performs to abstract hardware complexities?

<p>Hiding the underlying hardware complexities and providing clean, consistent abstractions. (C)</p> Signup and view all the answers

In single program execution environments, modern operating systems allow multiple programs to reside in memory and execute concurrently.

<p>False (B)</p> Signup and view all the answers

The abstraction that the operating system kernel provides to application developers is known as the ______ API.

<p>system call</p> Signup and view all the answers

Which technological advancement marked the first generation of operating systems?

<p>Vacuum Tubes (A)</p> Signup and view all the answers

Match the OS generations with their representative hardware components:

<p>First Generation (1945-1955) = Vacuum Tubes Second Generation (1955-1965) = Transistors Third Generation (1965-1980) = Integrated Circuits Fourth Generation (1980-Present) = Large Scale Integration</p> Signup and view all the answers

During the second generation of operating systems, high-level languages like C++ and Java were predominantly used for system programming.

<p>False (B)</p> Signup and view all the answers

What fundamental shift in user interaction was introduced during the third generation of operating systems (1965–1980)?

<p>Interactive Keyboards and Monitors</p> Signup and view all the answers

Which operating system concept was notably advanced during the third generation, characterized by integrated circuits?

<p>Multiprogramming (C)</p> Signup and view all the answers

The buffering mechanism employed in third-generation OS, which temporarily holds data for execution by a device or program, is referred to as ______.

<p>spooling</p> Signup and view all the answers

The fourth generation was characterized by a decrease in the scale of integrated circuits, moving away from large-scale integration (LSI).

<p>False (B)</p> Signup and view all the answers

What is the key feature that differentiates the Fifth Generation of operating systems?

<p>Focus on Mobile Computing. (B)</p> Signup and view all the answers

In the context of computer hardware architecture, what role does the Memory Management Unit (MMU) play?

<p>Translating virtual addresses to physical addresses.</p> Signup and view all the answers

Match the CPU cycle stages with their function:

<p>Fetch Stage = The instruction is retrieved from memory using the program counter. Decode Stage = The instruction in the instruction register is interpreted by the decoder. Execute Stage = The control unit passes decoded information to CPU function units to perform actions.</p> Signup and view all the answers

In CPU architecture, the Program Counter (PC) holds the actual data to be processed rather than the address of the next instruction.

<p>False (B)</p> Signup and view all the answers

Which memory type resides closest to the CPU and offers the fastest access times?

<p>Registers (A)</p> Signup and view all the answers

In computer architecture, the component responsible for transferring data between different units within the computer system is known as the ______.

<p>data bus</p> Signup and view all the answers

What is the primary function of the Basic Input Output System (BIOS) in a computer system?

<p>Starting the computer system after it is powered on</p> Signup and view all the answers

Which type of operating system is designed to manage and coordinate multiple processors to enhance processing speed and efficiency?

<p>Multiprocessor OS (B)</p> Signup and view all the answers

Embedded Operating Systems are designed for computers with an ability to allow users to make modifications to the pre-installed software.

<p>False (B)</p> Signup and view all the answers

What is a critical characteristic of 'hard' real-time operating systems (RTOS)?

<p>Actions must occur precisely on time (C)</p> Signup and view all the answers

A ______ is a fundamental unit in an operating system, often defined as a program in execution with its own address space and resources.

<p>process</p> Signup and view all the answers

What concept allows individual running processes to exchange and synchronize data to work together?

<p>Inter-Process Communication</p> Signup and view all the answers

In operating system terminology, what does 'PID' refer to?

<p>Process Identification (D)</p> Signup and view all the answers

The range of virtual addresses typically starts at a high address to use the instruction set architecture and supported by the operating system's pointer.

<p>False (B)</p> Signup and view all the answers

A ______ is a data structure maintained by the operating system kernel containing information needed to manage a specific thread.

<p>Thread Control Block</p> Signup and view all the answers

What best illustrates the role of virtual memory?

<p>A secondary storage part that gives the user an illusion that it is like the main memory (RAM). (B)</p> Signup and view all the answers

What condition prompts the operating system to temporarily relocate underutilized data from RAM to virtual memory?

<p>RAM overload during heavy application use</p> Signup and view all the answers

File system operations directly manipulate raw hardware; details and specifics regarding storage devices are not abstracted.

<p>False (B)</p> Signup and view all the answers

What functionality do operating systems offer via device drivers?

<p>Interacting with hardware devices. (A)</p> Signup and view all the answers

Match UNIX protection settings with their effect on a file:

<p>r = Permits reading the file's content. w = Allows modifications and alterations to the file. x = Enables executing the file as a program if it is an executable.</p> Signup and view all the answers

The ______ is defined as the command-line interpreter for computer operating systems, acting to translate user input and execute commands.

<p>shell</p> Signup and view all the answers

In the context of operating systems, 'User Mode' grants complete access to hardware and system resources.

<p>False (B)</p> Signup and view all the answers

Which file is primarily associated with system calls in an OS?

<p>Enabling requests to the OS's Kernal. (B)</p> Signup and view all the answers

What is a fundamental benefit of a hypervisor in managing computing environments?

<p>Efficient resource sharing and OS isolation.</p> Signup and view all the answers

A Type 1 hypervisor is typically 'hosted', running as software through the OS while allowing modification and greater control.

<p>False (B)</p> Signup and view all the answers

A type _, also named _ hypervisor acts like the lightweight OS that runs on the host's hardware directly.

<p>1, bare</p> Signup and view all the answers

Flashcards

Operating System (OS)

Software that provides user programs with a simplified model of the computer and manages all its resources.

Kernel Mode

The most fundamental piece of software that has complete access to the hardware and can execute any instruction.

User Mode

Mode in which only a subset of machine instructions is available.

OS Abstraction

Hides the complexity of hardware and presents programs with abstractions to work with.

Signup and view all the flashcards

Job of the OS

To orderly allocate processors, memory, and I/O devices among various programs.

Signup and view all the flashcards

System Call API

API provided by kernel allowing software developers to build applications capable of running on different types of hardware.

Signup and view all the flashcards

Machine Language

The lowest-level programming language understood by computers, used in the first generation of computers.

Signup and view all the flashcards

The Brick Phone

First Mobile Phone appeared in 1970

Signup and view all the flashcards

Program Counter (PC)

Contains the memory address of the next instruction to be fetched.

Signup and view all the flashcards

Current Instruction Register (CIR)

Contains the instruction that is currently being executed.

Signup and view all the flashcards

Accumulator (AC)

Where intermediate ALU results are stored.

Signup and view all the flashcards

Address bus

Used by a microprocessor to identify the storage location in memory.

Signup and view all the flashcards

Data bus

Transfers data between computer system units.

Signup and view all the flashcards

Control bus

Transmits command signals from the CPU and response signals from the hardware.

Signup and view all the flashcards

BIOS (Basic Input/Output System)

Program a computer's microprocessor uses to start the computer system after it is powered on.

Signup and view all the flashcards

Mainframe Operating Systems

Used in E-commerce websites or servers that are dedicated for business-to-business transactions and can handle many jobs simultaneously.

Signup and view all the flashcards

Server Operating Systems

Operating Systems that runs dedicated machines, an example is Linux and Windows

Signup and view all the flashcards

Multiprocessor Operating Systems

Parallel computers that depends upon how multiple processors are connected and shared. These OSs have high processing speed.

Signup and view all the flashcards

Embedded Operating Systems

Designed for non-computer systems, an example are washing machines, ovens etc.

Signup and view all the flashcards

Personal Operating Systems

Installed in machines used by common and large numbers of user

Signup and view all the flashcards

Personal Operating Systems

They support multiprogramming, running multiple programs like word, excel, games, and Internet access simultaneously on a single machine.

Signup and view all the flashcards

Sensor Node Operating Systems

They are used to protect the perimeters of buildings, guard national borders, detect fires in forests...

Signup and view all the flashcards

Real Time Operating Systems (RTOS)

Concentrate on time constraints because it is used in applications that are very critical in terms of safety

Signup and view all the flashcards

Smart Card Operating Systems

Run on smart cards, it contains a processor chip that is embedded insed the CPU chip.

Signup and view all the flashcards

PID

PID (Process ID) is a number used by most operating system kernel to uniquely identify an active process.

Signup and view all the flashcards

Virtual Memory Management

Virtual memory a mechanism used to manage memory using hardware and software.

Signup and view all the flashcards

Stack

Contains the stack to be used by the process for storing items such as return addresses, procedure arguments, temporarily saved registers or locally allocated variables.

Signup and view all the flashcards

The C shell

A command processor which is typically run in a text window, allowing the user to type and execute commands.

Signup and view all the flashcards

User Mode

Calls the OS and ask for a resource access as kernel mode.

Signup and view all the flashcards

Hypervisor

Software that creates and runs Virtual Machines (VMs).

Signup and view all the flashcards

type 1 hypervisor

It acts like a lightweight OS and runs directly on the host's hardware

Signup and view all the flashcards

type 2 hypervisor

It is hosted, running as software on the OS.

Signup and view all the flashcards

Study Notes

  • Education is not the learning of facts, but the training of the mind to think, Albert Einstein
  • Introduction To Operating Systems

Outline

  • Definition of Operating System (OS)
  • History of OS's
  • Computer Hardware Architecture
  • Types of Operating System
  • Operating System Concept
  • System Calls
  • Hypervisor

Learning Outcomes

  • Know the definition, importance, and main jobs of an Operating System
  • Differentiate between two modes of operation: Kernel and User
  • Know the main points in the history of Operating Systems
  • Review the computer hardware architecture.
  • Differentiate between different types of Operating Systems
  • Know the main concepts and components of an Operating System.
  • Define a System Call
  • Know the importance of a System Call
  • Differentiate between the different types of System Call, the usage, and the functions of each type
  • Understand the Concept of Virtualization

Definition of OS

  • Computers use a layer of software, the Operating System, to provide User programs with a better simpler computer model and handle resource management

Where the OS fits in?

  • User interface like shell or GUI is the lowest level of user-mode software
  • It enables users to start programs like Web browsers, email readers, or music players
  • The OS runs on bare hardware and provides the base for all software
  • It interfaces between software and hardware
  • Software is on top of the hardware
  • Most computers have two modes of operation, kernel mode, and user mode
  • Hardware is at the bottom with chips, boards, disks, keyboards, monitors, and physical objects

Kernel Mode vs User Mode

  • The OS runs in kernel mode (or supervisor mode) which is fundamental software
  • Kernel mode grants complete hardware access allowing execution of any instruction
  • Other software operates in user mode, limited to a subset of machine instructions

What is an OS?

  • A major task is hiding hardware and present programs with nice abstractions
  • Operating Systems convert the complex to the beautiful, masking underlying details

OS Layers of Abstraction

  • OS provides layers of abstraction to simplify complex hardware interactions
  • An OS deals with hardware, and offers an interface to read and write disk blocks
  • Programs can create, write, and read files without dealing with messy hardware details

What is an OS?

  • An OS delivers an order and controlled allocation of the processors, memories, and I/O devices

What is an OS?

  • Buffers output destined for a printer on disk
  • Modern OS allows multiple programs in memory at the same time

Two Main Jobs of OS

  • Providing abstractions to application programs
  • Managing pieces of a complex system
  • The abstraction that the kernel provides for application developers is called the system call API
  • System Call API allows software developers to easily build applications to run on different types of hardware

The First Generation (1945-55): Vacuum Tubes

  • Computers relied on machine language, which is the lowest-level programming language computers understand
  • Computers could solve one problem at a time

Second Generation (1955-65): Transistors and Batch Systems

  • High-level programming languages were being developed; examples include COBOL and FORTRAN
  • Store computer instructions in memory, moved from magnetic drum to core technology

The Third Generation (1965–1980): Integrated Circuits

  • Transistors were miniaturized and placed on silicon chips, called semiconductors
  • Integrated circuits increased reliability, speed, and efficiency with low energy consumption
  • Users interacted with third generation computers through keyboards, monitors, and interfaced with an Operating System
  • Operating Systems allowed run many different applications at one time with a central memory monitoring program
  • Computers became accessible to a mass audience smaller and more affordable

Third Generation

  • SPOOL (Simultaneous Peripheral Operation On Line) is a kind of buffering mechanism
  • Data is temporarily stored to be used and executed by a device, program or system
  • Data is sent and stored in memory until the program or computer requests it for execution

Fourth Generation (1980–Present): Personal Computers

  • Thousands of transistors/integrated circuits were built onto a single silicon chip.
  • Windows Timeline, Macintosh Timeline, and Unix History
  • Achieved through LSI (Large Scale Integration)

Fifth Generation (1990–Present): Mobile Computers

  • Evolution of Mobile Phone
  • Most Dominant Mobile Operating Systems -IOS released by Apple in 2007 -Android released by Google in 2008

Components of a Simple Personal Computer

  • Components include Monitor, Keyboard, USB printer, and Hard disk drive
  • CPU/MMU and memory
  • Video, Keyboard, and USB controller
  • Hard disk controller
  • All communicate via a Bus

CPU: Central Processing Unit

  • Fetch Stage: The next instruction is fetched from memory
  • Decode Stage: the encoded instruction is interpreted by the decoder
  • Execute Stage: The control unit of the CPU passes the decoded information, actions are performed, and the result is stored

CPU Architecture

  • PC (Program Counter): Memory Address of the next instruction to be fetched
  • CIR (Current Instruction Register)
  • AC (Accumulator): Intermediate ALU results are stored

Memory

  • Memory is ordered by speed
  • Fastest to slowest: Registers, Cache, Main Memory, Magnetic Disk
  • Typical Access Times: nanoseconds, milliseconds
  • Typical capacity: KB, MB, GB, TB

Computer Hardware Architecture

  • Input and Output Devices (I/O)
  • The operating system only deals with the Controller

Computer Hardware Architecture

  • First Method is User Mode, Second Method the Interrupt controller, and Third Method DMA Controller

Computer Hardware Architecture

  • Programmed I/O, I/O occurs under the direction and continuous control

Computer Hardware Architecture

  • Interrupt-driven I/O, an I/O command is issued and interrupted
  • I/O hardware signals for end of I/O operations

Computer Hardware Architecture

  • Direct Memory Access (DMA), a specialized I/O processor takes control of an I/O operation to move a large block of data

Buses

  • Buses are used to link components or devices to a computer
  • Address Bus is used by a microprocessor to identify memory storage location
  • Data Bus is used to transfer data from one place to another in the computer system
  • Control Bus transmits command signals bidirectionally from the CPU

Basic Input Output System BIOS

  • BIOS is the program of a computer's microprocessor uses to start the computer system after it is powered on
  • Manages data flow to the hard disk, video adapter, keyboard, mouse, and printer

Types of Operating System

  • Mainframe Operating Systems are used for business transactions and can handle many jobs simultaneously
    • Handle batch jobs and transaction processing with timesharing capabilities
  • Server Operating Systems run machines that have dedicated servers
    • Examples are Solaris, Linux, and Windows
    • Allow resource sharing and store webpages

Types of Operating System

  • Multiprocessor Operating Systems: Also known as parallel computers or multicomputer
    • They have strong connectivity and high speed communication mechanisms and function as multiple processors into single system
  • Embedded Operating Systems, these operating systems are preinstalled on devices and cannot be changed by users
    • Examples include washing machines and ovens

Types of Operating System

  • Personal Operating Systems are common and designed for a single machine
    • Word, Excel, Browsers
    • Examples are Linux, Windows, and Mac
  • Sensor Node Operating Systems are used to protect buildings and guard national borders
    • Able to detect forest fires, measure temperatures, and forecast weather to glean enemy movement information

Types of Operating System

  • Real Time Operating Systems: These operating systems are divided into hard and soft real time
    • Hard: stringent time constraints, certain actions should occur only at that time, components coupled tightly
    • Soft: can miss deadlines with no permanent consequences
  • Smart Card Operating Systems: Runs smart cards, has CPU imbedded

Operating system Concept

  • A process is a 'program in execution', and has files registers, and code
  • Address Space or Virtual Address Space (VAS)

Terminology

  • PID is a number used by operating system to uniquely identify an active process
  • UID (User Identification) assigned by the Administrator whose child parent process the same UID
  • GID is the number assigned to a group

Address Space / Virtual Address Space (VAS)

  • Virtual address range starts at a low address and goes up to the highest address
  • VAS can be 4 bytes for 32-bit systems, 8 bytes for 64-bit systems

Address Space / Virtual Address Space (VAS)

  • Each user gets a unique address space, OS maintains distinction between addresses
  • The User can start multiple tasks through TCBs (Task Control Blocks) which allows programs to run
  • Thread Control Block (TCB) is a data structure storing needed to manage a thread

Address Space

  • Stack contains data such as such as return addresses, procedure arguments, temporarily saved registers, and variables
  • Heap stores dynamically allocated variables
  • BSS stores data representation at the machine level and allocates space for data
  • Data contains the statically allocated variables
  • Text contains machine code for the professor

Virtual Memory Management

  • Mechanism used to manage memory using hardware and software
  • Virtual memory is a part of secondary storage that acts as part of the main memory
  • Aids in running multiple apps/increases programming
  • Implemented with demand paging

Virtual Memory Management

  • Virtual memory behaves as if its total RAM resources were equal to the whole amount of physical RAM and virtual RAM
  • Mitigates system overload and allows for less physical RAM

Files

  • The file system hides the messiness of storage types, e.g disk, CD, cloud drives, etc., details from the application programs

Operating System Concept

  • Data and Address
  • Operating systems provide services like device drivers to manage these components
  • All protected with security by the protection systems

Operating System Concept

  • UNIX sets owner, group, and other read/write/execute bits on every file.
    • For example: rwxr-xr--

Operating System Concept

  • UNIX Shells use command line interfaces
    • The Bourne shell uses the $ as a prompt while the C Shell uses the %.

System Call

  • A program running in User Mode calls the OS and asks for a resource access as kernel mode
  • System Call Sequence for writing a simple program to read data from one file and copy them to another file
    • Writing a prompt, Accept Input, Writing a Prompt, Accept Input, Open Input File, Create Output File
    • Loop: Write to Output File, Read from Input File, Close Output File
    • Writing Completion Message and Terminate Completely

System Call Type

  • Process Control
  • File Manipulation
  • Device Manipulation
  • Information Maintenance
  • Communications

Hypervisor

  • A hypervisor, also known as Virtual Machines Monitor (VMM), creates and runs Virtual Machines (VMs)
    • Allows one host computer to support multiple guest VMs by sharing its resources (memory, processing)

Benefits of Hypervisor

  • Speed, Efficiency, Flexibility
  • Hypervisors can separate the OS from underlying hardware, so the software no longer relies on specific hardware devices or drivers

Hypervisor Types

  • Two types of Hypervisors: type 1 and type 2

Type 1 Hypervisor

  • Acts like a lightweight OS and runs directly on host's hardware
  • Replaces the hosts OS and lies right on top of the hardware
  • VMware hypervisors like vSphere, ESXi and ESX, Microsoft Hyper-V, Oracle VM Server, Citrix Hypervisor

Type 2 Hypervisor

  • Hosted, running as software on the OS (like computer programs), which in turn runs on the physical hardware
  • Used to run multiple Oss on one personal computer, such as either Windows or Linux
  • VMware Fusion, and Oracle VirtualBox include Oracle VM Server for x86

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Use Quizgecko on...
Browser
Browser