Operating system: Difference between revisions

From Computer Science Wiki
No edit summary
Line 15: Line 15:
* handles the translation of requests between a device and the computer
* handles the translation of requests between a device and the computer
* defines where a process must put outgoing data before it can be sent, and where incoming messages will be stored when they are received
* defines where a process must put outgoing data before it can be sent, and where incoming messages will be stored when they are received
* wakes up the device when it is needed and put it back to sleep when it is not
* wakes up the device when it is needed and put it back to sleep when it is not<ref>
|-
|-
| Manage hardware interfaces
| Manage hardware interfaces || foo
* Allocating storage  
|-
* Keeping track of programs in memory
| Allocating storage || foo
* Swapping between programs on time-slicing
|-
| Keeping track of programs in memory || foo
|-
| Swapping between programs on time-slicing || foo
|}
|}


== Different operating systems ==  
== Different operating systems ==  

Revision as of 23:06, 4 December 2017

Operating system placement.svg.png

An operating system (OS) is system software that manages computer hardware and software resources and provides common services for computer programs. All computer programs, excluding firmware, require an operating system to function.[1]


explain the role of an operating system[edit]

Task What is the role of the OS?
Managing memory The memory management function keeps track of the status of each memory location, either allocated or free. It determines how memory is allocated among competing processes, deciding which gets memory, when they receive it, and how much they are allowed[2]
Manage peripherals Usually OS manages peripherals via a device driver:
  • handles the translation of requests between a device and the computer
  • defines where a process must put outgoing data before it can be sent, and where incoming messages will be stored when they are received
  • wakes up the device when it is needed and put it back to sleep when it is not<ref>
Manage hardware interfaces foo
Allocating storage foo
Keeping track of programs in memory foo
Swapping between programs on time-slicing foo

Different operating systems[edit]

  1. Linux
  2. OS X
  3. WIndows
  4. iOS
  5. Android OS
  6. Google chrome OS (Based on Linux)

A good video about operating systems[edit]


An excellent video about operating systems[edit]

Linux tools to view internal management of resources[edit]

An operating system also provides tools for managing the operating system. These are often called utilities or system tools. Click here for a brilliant graphic showing the different types of tools you can use to view inside the Linux operating system. These tools give you insight and information for how the operating system is managing different resources. Below is a table with resources and tools to help you view how the OS is managing a particular resource.

Resource Linux tools you can use to understand what is going on
Memory top, htop, free, vmstat
Processes top
Files File system, df, du, mount, lsof
Security fstab
CPU Scheduling perf
Devices, Device I/O iotop, iostat
Interrupts perf
The user interface, most often a GUI but also a CLI we dont really monitor this
Networks netstat, top, tcpdump, iptraf, iftop, nmon

Do you understand this topic?[edit]

  • Describe the main functions of an operating system.

Do you have an advanced understanding about this topic?[edit]

  • Describe how an operating system manages the functions you have just described above.

Standards[edit]

  • I can explain the role of the operating system in terms of managing memory, peripherals and hardware interfaces.

References[edit]