Systems Exploitation: Overview

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 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?

  • Android/iOS
  • Linux
  • macOS
  • Windows (correct)

What is the role of Linux?

An open-source operating system widely used in servers, embedded systems, and development environments.

What is macOS?

<p>Apple’s operating system, based on Unix, known for its intuitive user interface and integration with the Apple ecosystem.</p> Signup and view all the answers

What are Android/iOS?

<p>The dominant mobile operating systems, known for their management of limited resources (memory, battery) and specific architecture.</p> Signup and view all the answers

What are Embedded Systems?

<p>Operating systems like FreeRTOS or QNX, used in IoT devices and autonomous vehicles.</p> Signup and view all the answers

In the first generation of operating systems (1945-1955), there was a system of operating system to share resources between different programs.

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

In the first generation of operating systems (1945-1955), a single program had the full integrety of the system resources.

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

In the first generation of operating systems (1945-1955), user interaction was indirect; the user could not directly modify the memory contents.

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

What is the purpose of the OS kernel?

<p>Represents the core functions of the operating system.</p> Signup and view all the answers

What does the command interpreter do?

<p>Allows communication with the operating system through a command language.</p> Signup and view all the answers

What does the file system enable?

<p>Enables files to be recorded in a tree structure.</p> Signup and view all the answers

In second generation operating systems, processing was done via treatment of batches.

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

In the second generation of operating systems, the system was able to re-use batches, and rerun them again.

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

In the fourth generation of operating systems, the architecture was never virtualized

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

What is the main role of memory management in an OS?

<p>Manages the memory space allocated to each application.</p> Signup and view all the answers

What is the role of input / ouput management in an OS?

<p>Manages the exchange of information between the computer and the outside world (peripherals).</p> Signup and view all the answers

Flashcards

What is an Operating System (OS)?

Manages computer resources and provides a user interface for hardware interaction.

What is Windows?

The most widely used operating system on personal computers.

What is Linux?

An open-source OS used in servers, embedded systems, and development.

What is macOS?

Apple’s OS, based on Unix, known for its intuitive interface and Apple ecosystem.

Signup and view all the flashcards

What are Android/iOS?

Mobile operating systems known for managing limited resources and specific architecture.

Signup and view all the flashcards

What are Embedded Systems?

OS used in IoT devices and autonomous vehicles.

Signup and view all the flashcards

What is the OS kernel?

The core functions of the operating system.

Signup and view all the flashcards

What does a command interpreter do?

Allows communication with the operating system through a command language.

Signup and view all the flashcards

What does the file system enable?

Enables files to be recorded in a tree structure.

Signup and view all the flashcards

What is the main role of memory management in an OS?

Manages the memory space allocated to each application.

Signup and view all the flashcards

What is the role of input/output management in an OS?

Manages the exchange of information between the computer and peripherals.

Signup and view all the flashcards

OS Examples

  1. Windows: Most used on personal computers.
  2. Linux: Open-source, used in servers and embedded systems.
  3. MacOS: Apple's OS, user-friendly interface.
  4. Android/iOS: Dominant mobile OSes.
  5. Embedded Systems: FreeRTOS/QNX for IoT.
Signup and view all the flashcards

First Generation OS (1945-1955)

Early systems lacked OS; programs had full machine control.

Signup and view all the flashcards

Second Generation OS (1955-1965)

Jobs processed in batches using punched cards.

Signup and view all the flashcards

Third Generation OS (1965-1970)

Introduction of multiprocessing, time sharing, and virtual memory.

Signup and view all the flashcards

Fourth Generation OS (After 1970)

OS for personal computers, specialized architectures, and cloud computing.

Signup and view all the flashcards

Cloud OS

Allows access to applications and data from any connected device.

Signup and view all the flashcards

Processor Management

Allocates processor time to different programs.

Signup and view all the flashcards

Virtual Memory

Virtual memory creation on the hard drive.

Signup and view all the flashcards

I/O Management

Manages data exchange between the computer and external devices.

Signup and view all the flashcards

Rights Management

Concerned with the security aspects of program execution.

Signup and view all the flashcards

File Management

Manages reading and writing data in the file system.

Signup and view all the flashcards

Kernel

The core functionality, manages memory, processes, and I/O.

Signup and view all the flashcards

Command Interpreter

Enables communication with the OS through a command language.

Signup and view all the flashcards

File System

Enables the organization of files in a hierarchical structure.

Signup and view all the flashcards

Multitasking OS

Can execute multiple processes simultaneously.

Signup and view all the flashcards

Multiuser OS

Supports multiple users accessing resources simultaneously.

Signup and view all the flashcards

Centralized OS

All resources are on on a single machine.

Signup and view all the flashcards

Distributed OS

Components run on multiple machines.

Signup and view all the flashcards

Real-Time OS

Responds within strict time limits.

Signup and view all the flashcards

Mobile OS

Designed for phones, tablets, and mobile devices.

Signup and view all the flashcards

Parallel OS

Machines computing in parrallel.

Signup and view all the flashcards

Clustered Systems

Multiple servers working as one.

Signup and view all the flashcards

Grid Systems

Components distributed across heterogeneous machines.

Signup and view all the flashcards

Cloud Computing

Services delivered over a network without local hardware management.

Signup and view all the flashcards

Layered OS Structure

OS is structured into layers, each using lower layer functions.

Signup and view all the flashcards

Monolithic OS

OS uses a monolithic structure with procedures calling each other freely.

Signup and view all the flashcards

Virtual Machines OS

Provides multiple virtual machines on a single system.

Signup and view all the flashcards

Client-Server OS

Clients request services from servers.

Signup and view all the flashcards

Swapped Memory

Memory section on hard drive

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.

Quiz Team

Related Documents

Use Quizgecko on...
Browser
Browser