Summary, Operating Systems: Principles and Resource Management, Summaries of Operating Systems

This document provides an overview of operating systems (OS), defining them from user and system perspectives. It outlines computer system components: hardware, OS, applications, and users. It discusses batch, multi-programmed batch, time-sharing, multiprocessing, and real-time systems. OS design challenges due to system variety and complexity are highlighted, focusing on uniprocessor, time-sharing systems while addressing multicore/multiprocessor effects. The document covers OS-managed resources like CPU, memory, disk, I/O, processes, and files. Core OS components are discussed from resource and user perspectives, including process, memory, and file management, I/O, security, system calls, and the command interpreter. OS responsibilities in process, memory, file, I/O, and storage management are detailed, along with security, protection, system calls, and the command interpreter's role.

Typology: Summaries

2024/2025

Uploaded on 06/10/2025

wq8
wq8 🇰🇪

4 documents

1 / 3

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Introduction to Operating Systems
OPERATING SYSTEMS
What is an Operating System?
From a user-centric perspective, an operating system is a program that acts
as an intermediary between a user and the computer hardware. It defines
an interface for the user to access system services, providing a specific
"view" of the system. This view converts hardware outputs into user-
friendly formats and can hide unnecessary hardware details, even
presenting a different operating environment than what physically exists.
From a system-centric perspective, an operating system efficiently manages
and allocates resources to users. It controls the execution of user programs
and the operations of I/O devices, providing isolation and protection
between different user programs.
Computer System Components
A computer system consists of four main components:
Hardware: Provides basic computing resources like the CPU, memory,
and I/O devices.
Operating System: Controls and coordinates the use of hardware
among various application programs for different users.
Application Programs: Define how system resources are used to solve
computing problems for users, including compilers, databases, and
games.
Users: People, machines, or other computers that interact with the
system.
Types of Systems
Different types of operating systems exist, each designed for specific
purposes:
i. Batch Systems: Process multiple jobs, but only one job resides in memory
and executes to completion before the next one starts. ii. Multi-programmed
Batch Systems: Multiple jobs reside in memory, and the CPU is multiplexed
between them, considering CPU-bound versus I/O-bound jobs. iii. Time-
sharing Systems: Multiple jobs reside in memory and on disk, with the CPU
multiplexed among jobs in memory. Jobs are swapped between disk and
memory, allowing user interaction. iv. Multiprocessing Systems: Utilize
more than one CPU in a single machine to allocate jobs, including
Symmetric Multiprocessing and NUMA machines. Other parallel systems
include multicore processors, distributed systems, and clusters. v. Real-
Time Systems: Designed to run jobs with time guarantees. vi. Other Types:
Include embedded systems and mobile/smartphone operating systems.
1.
2.
3.
4.
pf3

Partial preview of the text

Download Summary, Operating Systems: Principles and Resource Management and more Summaries Operating Systems in PDF only on Docsity!

Introduction to Operating Systems

OPERATING SYSTEMS

What is an Operating System?

From a user-centric perspective, an operating system is a program that acts as an intermediary between a user and the computer hardware. It defines an interface for the user to access system services, providing a specific "view" of the system. This view converts hardware outputs into user- friendly formats and can hide unnecessary hardware details, even presenting a different operating environment than what physically exists.

From a system-centric perspective, an operating system efficiently manages and allocates resources to users. It controls the execution of user programs and the operations of I/O devices, providing isolation and protection between different user programs.

Computer System Components

A computer system consists of four main components:

Hardware: Provides basic computing resources like the CPU, memory, and I/O devices. Operating System: Controls and coordinates the use of hardware among various application programs for different users. Application Programs: Define how system resources are used to solve computing problems for users, including compilers, databases, and games. Users: People, machines, or other computers that interact with the system.

Types of Systems

Different types of operating systems exist, each designed for specific purposes:

i. Batch Systems: Process multiple jobs, but only one job resides in memory and executes to completion before the next one starts. ii. Multi-programmed Batch Systems: Multiple jobs reside in memory, and the CPU is multiplexed between them, considering CPU-bound versus I/O-bound jobs. iii. Time- sharing Systems: Multiple jobs reside in memory and on disk, with the CPU multiplexed among jobs in memory. Jobs are swapped between disk and memory, allowing user interaction. iv. Multiprocessing Systems: Utilize more than one CPU in a single machine to allocate jobs, including Symmetric Multiprocessing and NUMA machines. Other parallel systems include multicore processors, distributed systems, and clusters. v. Real- Time Systems: Designed to run jobs with time guarantees. vi. Other Types: Include embedded systems and mobile/smartphone operating systems.

OS design is dependent on the type of system it is designed for.

Challenges Today

Current challenges in OS design include:

A wide variety of systems, ranging from small embedded systems to large distributed systems like clouds and clusters. An increasing number of cores per processor and processors per machine. Virtualization.

Course Focus

The course primarily focuses on uniprocessor, time-sharing systems running general-purpose jobs from users, addressing core OS design issues. It also evaluates the effects of multicore/multiprocessors, considering the additional issues they introduce.

Resources Managed by OS

Operating systems manage both physical and logical resources. Physical resources include the CPU, memory, disk, and I/O devices. Logical resources include processes and files.

Main Components of an OS

From a resource-centric view, the main components of an OS are:

Process Management Main Memory Management File Management I/O System Management Secondary Storage Management Security and Protection System Networking (often integrated but covered separately)

From a user-centric view, the main components are:

System Calls Command Interpreter (Shell)

Process Management

A process is a program in execution that requires resources like CPU time, memory, files, and I/O devices. The OS is responsible for process creation, deletion, suspension, and resumption. It also provides mechanisms for process synchronization and inter-process communication.