Podcast
Questions and Answers
What is the fundamental program that manages computer resources and provides a user interface for interaction with hardware?
What is the fundamental program that manages computer resources and provides a user interface for interaction with hardware?
Operating System (OS)
Which of the following is the mostly used operating system on personal computers?
Which of the following is the mostly used operating system on personal computers?
- Android/iOS
- Linux
- macOS
- Windows (correct)
What is the role of Linux?
What is the role of Linux?
An open-source operating system widely used in servers, embedded systems, and development environments.
What is macOS?
What is macOS?
What are Android/iOS?
What are Android/iOS?
What are Embedded Systems?
What are Embedded Systems?
In the first generation of operating systems (1945-1955), there was a system of operating system to share resources between different programs.
In the first generation of operating systems (1945-1955), there was a system of operating system to share resources between different programs.
In the first generation of operating systems (1945-1955), a single program had the full integrety of the system resources.
In the first generation of operating systems (1945-1955), a single program had the full integrety of the system resources.
In the first generation of operating systems (1945-1955), user interaction was indirect; the user could not directly modify the memory contents.
In the first generation of operating systems (1945-1955), user interaction was indirect; the user could not directly modify the memory contents.
What is the purpose of the OS kernel?
What is the purpose of the OS kernel?
What does the command interpreter do?
What does the command interpreter do?
What does the file system enable?
What does the file system enable?
In second generation operating systems, processing was done via treatment of batches.
In second generation operating systems, processing was done via treatment of batches.
In the second generation of operating systems, the system was able to re-use batches, and rerun them again.
In the second generation of operating systems, the system was able to re-use batches, and rerun them again.
In the fourth generation of operating systems, the architecture was never virtualized
In the fourth generation of operating systems, the architecture was never virtualized
What is the main role of memory management in an OS?
What is the main role of memory management in an OS?
What is the role of input / ouput management in an OS?
What is the role of input / ouput management in an OS?
Flashcards
What is an Operating System (OS)?
What is an Operating System (OS)?
Manages computer resources and provides a user interface for hardware interaction.
What is Windows?
What is Windows?
The most widely used operating system on personal computers.
What is Linux?
What is Linux?
An open-source OS used in servers, embedded systems, and development.
What is macOS?
What is macOS?
Signup and view all the flashcards
What are Android/iOS?
What are Android/iOS?
Signup and view all the flashcards
What are Embedded Systems?
What are Embedded Systems?
Signup and view all the flashcards
What is the OS kernel?
What is the OS kernel?
Signup and view all the flashcards
What does a command interpreter do?
What does a command interpreter do?
Signup and view all the flashcards
What does the file system enable?
What does the file system enable?
Signup and view all the flashcards
What is the main role of memory management in an OS?
What is the main role of memory management in an OS?
Signup and view all the flashcards
What is the role of input/output management in an OS?
What is the role of input/output management in an OS?
Signup and view all the flashcards
OS Examples
OS Examples
Signup and view all the flashcards
First Generation OS (1945-1955)
First Generation OS (1945-1955)
Signup and view all the flashcards
Second Generation OS (1955-1965)
Second Generation OS (1955-1965)
Signup and view all the flashcards
Third Generation OS (1965-1970)
Third Generation OS (1965-1970)
Signup and view all the flashcards
Fourth Generation OS (After 1970)
Fourth Generation OS (After 1970)
Signup and view all the flashcards
Cloud OS
Cloud OS
Signup and view all the flashcards
Processor Management
Processor Management
Signup and view all the flashcards
Virtual Memory
Virtual Memory
Signup and view all the flashcards
I/O Management
I/O Management
Signup and view all the flashcards
Rights Management
Rights Management
Signup and view all the flashcards
File Management
File Management
Signup and view all the flashcards
Kernel
Kernel
Signup and view all the flashcards
Command Interpreter
Command Interpreter
Signup and view all the flashcards
File System
File System
Signup and view all the flashcards
Multitasking OS
Multitasking OS
Signup and view all the flashcards
Multiuser OS
Multiuser OS
Signup and view all the flashcards
Centralized OS
Centralized OS
Signup and view all the flashcards
Distributed OS
Distributed OS
Signup and view all the flashcards
Real-Time OS
Real-Time OS
Signup and view all the flashcards
Mobile OS
Mobile OS
Signup and view all the flashcards
Parallel OS
Parallel OS
Signup and view all the flashcards
Clustered Systems
Clustered Systems
Signup and view all the flashcards
Grid Systems
Grid Systems
Signup and view all the flashcards
Cloud Computing
Cloud Computing
Signup and view all the flashcards
Layered OS Structure
Layered OS Structure
Signup and view all the flashcards
Monolithic OS
Monolithic OS
Signup and view all the flashcards
Virtual Machines OS
Virtual Machines OS
Signup and view all the flashcards
Client-Server OS
Client-Server OS
Signup and view all the flashcards
Swapped Memory
Swapped Memory
Signup and view all the flashcards
Study Notes
- Systems exploitation is covered in chapter 1 of the Generalities section of the study notes
- The target audience is L1 TI
- The teachers are Bechir HAMIDI
- The version is 2025
Plan Overview
- The study notes will describe an overview of systems exploitation, and its historical role, evolution and core
- It will also describe the file management system with architecture and its organisation
- Will discuss the management of processes and threads, including process descriptions, the core and sequencing
- It will analyse memory management and E/S management
- It will cover the fundamentals of embedded systems.
Plan Summary
- The summaries includes definitions
- The evolution of the systems exploitation will be covered
- The principals and components of components of a system exploitation are described
- The classification of systems will be covered
Operating System (OS) Definition
- An OS is a fundamental program that manages computer resources and provides a user interface for hardware interaction
- It controls input/output devices, memory, the processor, and other computer components
- The purpose includes increasing resource availability for users
- and optimizing hardware use
Common OS Examples
- Windows is the most used operating system on personal computers. (Windows 10/11)
- Linux is an open-source operating system widely used in servers, embedded systems, and development environments
- MacOS is Apple's operating system, based on Unix, known for its user interface and integration with the Apple ecosystem
- Android/iOS are the dominant mobile operating systems. A specific architecture manages limited resources (memory, battery)
- Embedded systems such as FreeRTOS or QNX, are used in IoT devices and self-driving cars
Technological Evolution (1945-1955)
- The first generation of computers, covered between 1945 and 1955, did not have an OS to share resources
- Only one program benefitted from all of the machine's resources
- User interaction was direct, where users executed step-by-step instructions and could directly change memory content without restriction
Technological Evolution (1955-1965)
- The second generation of computers operated between 1955-1965, and did Batch processing using punch cards
- The sequence of lots was described by a special punch card (control card)
- The OS was limited to a resident monitor that chained the lots (chain monitors).
Technological Evolution (1965-1970)
- The third generation of systems evolved between 1965 and 1970, introducing key modern OS concepts: multiprogramming, time-sharing, and virtual memory.
- Multiprogrammed systems included multiple simultaneous tasks in memory
- It allowed for multiplexing of the processor between tasks
- There was some processor loss during I/O, however
- The core advantage was it enabled better use of the CPU
- Disadvantages include complexity, large memory capacity
- It also requires resouce sharing and resource protection
Shared time systems (1970)
- Shared time systems involve division of processor time between tasks
- It introduces the concept of Quantums of time
- Tasks can be resident in memory or "swapped" on disk
- More generally, these systems enabled a greater number of tasks
- Allocated more memory to each task
- Advantages- Correct response times for short tasks, especially in the presence of long, non-interactive tasks
- A major Inconvenient is that complexity and processor usage is may be less that optimal
Fourth Generation Evolution (After 1970)
- The introduction of personal computers marked the start of this era
- Specialty architectures, such as Parallel, Real-Time and Embedded systems became prolific
- Evolution moved toward to distributed systems using cluster or cloud based architectures
- There was common quality criteria such as: Reliability, availability, efficiency, extensibility, adapted
Cloud OS Evolution
- Cloud computing has led to operating systems in the cloud
- It enables users to access applications and data from any device with an Internet connection.
Principal OS Functions
- Processor management: manages allocation of the processor among programs. (process management).
- Active memory management: manages memory space for each app and can create memory on the hard disk (virtual memory).
- Input/output management handles information exchange between the comp and peripheral devices
- Rights management is responsible for security related to program execution
- File management handles file system reading/writing and file access rights
OS Components
- The kernel represents the core OS functions for managing memory, processes, main input/output, etc.
- The command interpreter facilitates communication with the system through a command language
- The file system is organized to enable registering files in a tree-like structure
System Classification
- Multitasking systems execute multiple processes at once
- For instance, compiling and consulting the source code file
- This classification includes UNIX, OS/2 by IBM, and Windows 95
- Multiuser systems have multiple simultaneous users sharing the same hardware
- UNIX, MVS, and Gecos are examples of this
- Centralized systems are entirely present on a single machine
- Connected machines act as separate entities from the machine with the centralized system
- The system only manages resources on local machines
- Applications such as X11, FTP, and Mail are developed using UNIX
Distributed Systems
- Distributed systems feature components spread across multiple machines (sites)
- To users, a distributed operating system appears as a single virtual uniprocessor, even when that is not the configuration
- Users are not aware of resource locations and do not need to know which machine executes a program
Real-time Systems
- Hard Real-Time Systems: Typically have little to no secondary memory
- They do not share time
- They feature a short switching time
- They are specialized and context dependent
- Soft Real-Time Systems are usually used in multimedia, and virtual reality applications
- These systems have constraints for more flexible time
- Task priorities assigned
- Specific memory management techniques are used
Mobile Systems
- Mobile systems are typified by smart phones
- Require specialized operating systems
- System constraints include limited memory, slow processors, and small screens
- They generally have low energy consumption
- Have high responsiveness
Parallel Multiprocessor Systems (SMP)
- Symmetric Multi Processors are examples of parallel multiprocessor systems
- These include machines with parallel computing capability
- They are generally highly specialized architectures
Clustered Systems
- These systems are also known as server clusters, or computer farms
- Systems divided across multiple nodes
- Such as Homogeneous systems
- The systems either share a disk, or share nothing
- They are typically connected by a specialized network
- These include SCI, InfiniBand, and Myrinet
- Enable rapid exchanges of large chunks of data
- Three characteristics- Able to support a higher load without being restructured, allows horizontal scaling, and has high availability using backup servers
Computing Grids
- Computing Grids are typically distributed systems
- They are distributed infrastructures which are composed of many different machines, and may be located in different physical locations
- Example: Grid5000 uses around 3000 processors across 9 sites in France.
- Characterized by intensive computation
- Designed with Guaranteed availability
- And feature a material resources reservation system
Cloud Computing
- Cloud Computing: A shared system where clients utilize services from remote servers without managing the underlying infrastructure
- Cloud delivered services can run within cluster architectures
- Three main models
- Infrastructure as a Service (IaaS)
- Platform as a Service (PaaS)
- Software as a Service (SaaS)
OS Internal Structures
- Layered Structure: OS organized in layers where each layer uses functions of the lower layers. Difficulty lies in defining the different layers.
- Monolithic Structure: Procedures can call each other at any time. Organized in 3 layers:
- A main procedure in the upper layer identifies required service,
- Service procedures in the layer below execute system calls
- Utility procedures in the lower layer aid system procedures and can be called by multiple procedures.
- Virtual Machines: The core handles multiprogramming, giving the layer above multiple virtual machines. Different OS can run on a virtual machine.
- Client/Server Model: The OS comprises a kernel and a set of servers. The kernel manages communication between clients and servers. Clients request services.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.