Operating System (OS) - Definition:
  • first program loaded
  • core software component coordinating the hardware
  • controls/organizes general operations


Functions of Operating Systems

Communicating with Peripherals:

  • manages peripherals (ex. printer, graphics card, keyboard, etc.) using drivers
    • Driver: software, ensuring interaction between computer and device
  • provides standard interface between hardware devices and applications
  • Enables generic commands such as the "print"-statement within the high-level programming languages to work on any PC, even if the hardware differs greatly.
  • Hardware is only able to deal with binary machine code or if a conversion between digital and analog formats has taken place (digital to analog conversion).
  • Plug and Play: feature that allows devices to be used without installing extra divers

Interfaces:

  • Graphical User Interface (GUI)
    • Windows XP
    • Macintosh
  • Command Line Interface (CLI)
    • MS DOS
    • Unix (Linux) Shell

Coordinating Concurrent Processing:

  • processes constantly running if computer turned on
  • OS manages the loading and unloading of processes to & from primary memory

Resource Management:

  • memory and capacity of CPU shared/managed between programs to allow maximum functionality
  • organises use of memory and processing time
  • manages processes in the background, while user is working with programs in the foreground
    • keeping track of which files, ports, data resources belong to which program

Memory Management:

  • organises memory through file management system (see additional information below for more)
    • allocates files
    • allows user to change file names & paths
  • backing storage controlled
  • handels transfer of data or instructions between primary and secondary memory
  • every process has specific space in primary memory
    • ensures other process spaces is not overridden - each process operates in own virtual memory space
      • would cause "memory access violation"
  • If the program & data management breaks down, programs might write to another programs's files or the system might crash.
  • manages use of virtual memory & swap files
  • Scheduling:
    • long term (admission)
      • decides which jobs are sent to queue
    • mid term (swapping out)
      • removes data from RAM to HDD/SSD
    • short term (dispatcher)
    • decides what is executed next

Accounting and Security:

  • maintains security
  • management of user accounts and user activity
    • manages access rights
  • provides services (e.g. firewalls)
  • user authentication
    • passwords
    • voice recognition
    • biometrics
  • logs everything done on computer
  • important in multi-user environments
    • Audit-trail: logging of user activity to track hacking attempts, hogging of resources, etc.

System Tools:

  • includes monitoring of performance, debugging and maintenance

Errors:

  • outputs simple messages for users if error occur




Additional Information:

  • File Systems - 2 Types:
    • File Allocation Table (FAT)
      • table tracking where the data is stored
    • New Technology File System (NTFS)
      • introduced by Microsoft
      • advantages:
        • higher reliability - errors repaired without message
        • transaction logs - errors tracked
  • Types of Operating Systems:
    1. Real Time Operating System (RTOS)
      • same amount of time needed for processing each time - e.g. mechanics
    2. Single User - Single Task
      • e.g. phone
    3. Single User - Multi-Task
      • e.g. PC
    4. Multi-User
      • e.g. Mainframe
  • Modes of Operation:
    • real time processing
      • quick processing of input to generate output
    • multi-programming
      • seems like multiple programs are running at once - programs run according to priority
    • interactive processing
      • continues exchange of information between user & computer
    • multi-tasking
      • tasks run concurrently - resources split
    • multi-acces or multi-user
      • same system used via LAN
      • CPU manages one user after another - the more users, the slower


Edited By Lucie Magister
Last Modified 13/09/2014


Sources: