os202

A repository for operating systems class fall 2020

View on GitHub

HOME


Top 10 List of Week 00

  1. Computer System
    Can be divided roughly into four components: the hardware (CPU, the memory, and the input/output devices), the application programs (such as word processors, spreadsheets, compilers, and web browsers), the operating system(controls the hardware and coordinates its use among the various application programs for the various users), and users ( Silberschatz et. al.).

  2. Operating System
    Operating system is software that serves as interface between hardware and ( apps and users ). Just like a government that manages resources (as a metaphor), OS provides an environment for application programs to run. It might be varied for different computer environments. To run the tasks, OS is composed of components(inputs, outputs) and functions ( Silberschatz et. al.). Go check Buku Kunyuk MDGR for more detailed explanation in Bahasa ( Chapter 2: Konsep dasar sistem operasi ) https://rms46.vlsm.org/2/213.pdf or OS Concepts, 10th edition Silberschatz (http://codex.cs.yale.edu/avi/os-book/OS10/)

  3. Computer-System Organization: Storage Structure
    There are two types of storage: volatile and non-volatile. We must load main memory ( RAM ) to run a program, which will fetch all instructions and data into registers. RAM is volatile, medium in size and speed. Other volatile memory that are faster, smaller, and more expensive are registers, CPU cache. The non-volatile memory ( permanent storage ) that is slower, larger, and less expensive is electronic disk.

  4. Computer-System Architecture: single-processor, multiprocessor, and clustered systems
    Single-processor systems has one main CPU which manages the computer and runs user apps. Multiprocessor systems increases throughput ( faster execution ), reliability ( failure of CPU only slows down the system, does not crash it ), and economy of scale ( peripherals, disks, memory, shared among processors). Clustered systems work by connecting independent systems ( computer ) with shared common storage and connected by a high-speed LAN. Therefore, special considerations for access to shared storage are required, ( distributed lock management ), as are collaboration protocols.

  5. Interrupt
    The above video explains a general idea of interrupts and signal. In a nutshell, interrupts are events generated externally by devices other that the CPU (e.g. I/O devices, timers, or other CPU). A hardware device triggers an interrupt by sending a signal to the CPU to alert the CPU that some event requires attention. The interrupt is managed by the interrupt handler.

  6. Dual-Mode
    To prevent user programs from interfering with the proper operation of the system, the system hardware has two modes: user mode and kernel mode. Various instructions are privileged and can be executed only in kernel mode. Examples include the instruction to switch to kernel mode, I/O control, timer management, and interrupt management. Kernel mode can only be entered by making system calls. User code cannot flip the mode switch.

  7. Process Management
    An OS is responsible for creating and deleting both user and system processes, ensuring that each process receives its necessary resources, without interfering with other processes, suspending and resuming processes, process synchronization and communication, deadlock handling

  8. Memory management
    An operating system manages memory by keeping track of what parts of memory are being used and by which processes. It is also responsible for dynamically allocating and freeing memory space. Storage space is managed by the operating system; this includes providing file systems for representing files and directories and managing space on mass-storage devices.

  9. Storage management
    In file-system management, OS creates and deletes files and directories, supports primitives for manipulating files and directories ( open, flush, etc. ), mapping files onto secondary storage, backing up files onto stable permanent storage media. In mass-storage management, OS is responsible for free disk space management, storage allocation, and disk scheduling.

  10. Protection and Security
    Protection involves ensuring that no process access or interfere with resources to which they are not entitled, either by design or by accident. ( E.g. “protection faults” when pointer variables are misused. ) Security involves protecting the system from deliberate attacks, either from legitimate users of the system attempting to gain unauthorized access and privileges, or external attackers attempting to access or damage the system.