CITS2002 Systems Programming  
prev
next CITS2002 CITS2002 schedule  

The role and responsibilities of an OS

  • manage and arbitrate access to hardware resources - CPU, memory, devices

  • manage and arbitrate access to software abstractions - processes, file-systems, users

  • support efficient context switching between processes, possibly supporting different per-process and per-user priorities

  • impose limits and accounting of resource usage, per-process and per-user (e.g. varying scheduling timequantum, maximum execution time, maximum number of processes, maximum amount of memory, maximum open files)

  • support constrained and exclusive access to resources (e.g. read-only, read-write access)

  • permit sharing of resources when requested (shared access to memory, use of dynamically loaded libraries)

  • permit requests to obtain, increase, or relinquish resource ownership

 


CITS2002 Systems Programming, Lecture 23, p6, 17th October 2023.