Operating System Concepts: Computer Startup

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What is the primary goal of multiprogramming?

  • To allow only one job to execute at a time
  • To ensure the CPU and I/O devices are always busy (correct)
  • To provide a high-availability service that survives failures
  • To increase the processing power of a single user

What is the purpose of swapping in a multiprogrammed system?

  • To prevent infinite loops
  • To schedule jobs more efficiently
  • To move programs in and out of memory to run (correct)
  • To provide virtual memory

What allows a system to execute processes not completely in memory?

  • Time-sharing
  • Virtual memory (correct)
  • Multiprocessing
  • Swapping

What is the term for a logical extension of multiprogramming where CPU switches jobs frequently?

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

What is the purpose of a timer in process management?

<p>To prevent infinite loops and process hogging resources (D)</p> Signup and view all the answers

What is the term for a program in execution?

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

In a multiprogrammed system, what is stored in memory at a time?

<p>A subset of total jobs in the system (C)</p> Signup and view all the answers

What is the purpose of the mode bit in dual-mode operation?

<p>To distinguish between user code and kernel code (C)</p> Signup and view all the answers

What is the result when a system call changes mode to kernel?

<p>The system stays in kernel mode until a return from call resets it to user mode (B)</p> Signup and view all the answers

What is the primary benefit of symmetric multiprocessing?

<p>Increased reliability through graceful degradation (A)</p> Signup and view all the answers

Flashcards are hidden until you start studying

Study Notes

Computer System Organization

  • A computer system consists of one or more CPUs, device controllers, and a common bus that provides access to shared memory.
  • The system operates by executing CPUs and devices concurrently, competing for memory cycles.

Bootstrap Program

  • The bootstrap program is loaded at power-up or reboot and is typically stored in ROM or EPROM (firmware).
  • It initializes all aspects of the system and loads the operating system kernel, starting its execution.

Interrupt Handling

  • Interrupts transfer control to the interrupt service routine through the interrupt vector, which contains the addresses of all service routines.
  • The interrupt architecture must save the address of the interrupted instruction to prevent lost interrupts.
  • An operating system is interrupt-driven, and traps are software-generated interrupts caused by errors or user requests.

I/O Structure

  • After I/O starts, control returns to the user program only upon I/O completion or without waiting for I/O completion.
  • The system uses a wait instruction to idle the CPU until the next interrupt or a system call to request the operating system to allow the user to wait for I/O completion.

Direct Memory Access (DMA) Structure

  • DMA is used for high-speed I/O devices that can transmit information at close to memory speeds.
  • The device controller transfers blocks of data from buffer storage directly to main memory without CPU intervention.

Storage Hierarchy

  • The storage system is organized in a hierarchy based on speed, cost, and volatility.
  • Caching is the process of copying information into a faster storage system, and main memory can be viewed as a cache for secondary storage.

Process Management

  • A process is an active entity that needs resources to accomplish its task, and it can be single-threaded or multi-threaded.
  • Process management involves creating, deleting, suspending, and resuming processes, as well as providing mechanisms for process synchronization, communication, and deadlock handling.

Memory Management

  • Memory management determines what is in memory when, optimizing CPU utilization and computer response to users.
  • It involves keeping track of which parts of memory are currently being used and by whom, and deciding which processes and data to move into and out of memory.

Storage Management

  • Storage management provides a uniform, logical view of information storage, abstracting physical properties to logical storage units (files).
  • File-system management involves creating and deleting files and directories, primitives to manipulate files and directories, mapping files onto secondary storage, and backing up files onto stable storage media.

Mass-Storage Management

  • Mass-storage management involves free-space management, storage allocation, and disk scheduling, and is crucial for the speed of computer operation.
  • Tertiary storage includes optical storage and magnetic tape, which must also be managed.

Performance of Various Levels of Storage

  • The movement of data between levels of the storage hierarchy can be explicit or implicit, and multitasking environments must be careful to use the most recent value.

I/O Subsystem

  • The I/O subsystem is responsible for memory management of I/O, including buffering, caching, and spooling, as well as providing a general device-driver interface and drivers for specific hardware devices.

Protection and Security

  • Protection involves controlling access of processes or users to resources defined by the OS, and security involves defending the system against internal and external attacks.
  • Systems distinguish among users, using user IDs, group IDs, and privilege escalation to determine access control.

Computing Environments

  • Traditional computer environments have evolved, with the blurring of lines between office and home environments.

  • Client-server computing involves smart PCs as clients, requesting services from servers, and has become a dominant computing model.### Multiprocessing Systems

  • Advantages: increased throughput, economy of scale, and increased reliability through graceful degradation or fault tolerance.

  • Two types: asymmetric multiprocessing and symmetric multiprocessing.

Symmetric Multiprocessing Architecture

  • A dual-core design allows multiple processors to share the same memory and bus.

Clustered Systems

  • Like multiprocessor systems, but multiple systems working together.
  • Usually sharing storage via a storage-area network (SAN).
  • Provides a high-availability service which survives failures.
  • Two types: asymmetric clustering (one machine in hot-standby mode) and symmetric clustering (multiple nodes running applications, monitoring each other).
  • Some clusters are for high-performance computing (HPC), requiring applications to be written to use parallelization.

Operating System Structure

  • Multiprogramming needed for efficiency, as a 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.
  • A subset of total jobs in system is kept in memory.
  • One job selected and run via job scheduling.
  • When it has to wait (for I/O for example), OS switches to another job.
  • Timesharing (multitasking) is a logical extension, allowing users to interact with each job while it is running, creating interactive computing.
  • Response time should be less than 1 second.
  • Each user has at least one program executing in memory (process).
  • CPU scheduling is used when several jobs are ready to run at the same time.
  • Swapping moves processes in and out of memory to run.
  • Virtual memory allows execution of processes not completely in memory.

Operating-System Operations

  • Interrupt driven by hardware.
  • Software error or request creates exception or trap (e.g. division by zero, request for operating system service).
  • Other process problems include infinite loop, processes modifying each other or the operating system.
  • Dual-mode operation allows OS to protect itself and other system components.
  • User mode and kernel mode are distinguished using a mode bit provided by hardware.
  • Some instructions are designated as privileged, only executable in kernel mode.
  • System call changes mode to kernel, and return from call resets it to user.

Transition from User to Kernel Mode

  • Timer is used to prevent infinite loop or process hogging resources.
  • Set interrupt after a specific period, and operating system decrements counter.
  • When counter is zero, generate an interrupt, and set up before scheduling process to regain control or terminate program that exceeds allotted time.

Process Management

  • A process is a program in execution.

Studying That Suits You

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

Quiz Team

Related Documents

OS_lesson 1.pdf

More Like This

Computer Boot Process Overview
5 questions
Bootstrap CSS Classes Flashcards
10 questions
Bootstrap Navigation Basics
13 questions

Bootstrap Navigation Basics

MatchlessAltoSaxophone avatar
MatchlessAltoSaxophone
Computer Startup and System Organization
34 questions
Use Quizgecko on...
Browser
Browser