An operating system (OS) is a software that manages a computer's hardware and software resources and provides common services for computer programs. It acts as an intermediary between the computer hardware and the user or application software.
An operating system performs various functions, including:
- Resource Management: An operating system manages computer resources such as CPU, memory, disk space, and input/output devices.
- Process Management: An operating system manages processes or programs running on the computer, including starting and stopping processes, scheduling processes, and allocating system resources to processes.
- Memory Management: An operating system manages the computer's memory by allocating memory to different processes and ensuring that each process has the necessary memory to run.
- File Management: An operating system manages files stored on the computer's hard drive, including creating, deleting, and managing files and directories.
- User Interface: An operating system provides a user interface that enables users to interact with the computer, including graphical user interfaces (GUI) and command-line interfaces.
Examples of popular operating systems include Microsoft Windows, macOS, Linux, Android, and iOS.
In computer programming, resource management refers to techniques for managing resources (components with limited availability). It includes both preventing resource leaks (releasing a resource when a process has finished using it) and dealing with resource contention (when multiple processes wish to access a limited resource). Resource leaks are an issue in sequential computing, while resource contention is an issue in concurrent computing. On many systems the operating system reclaims resources after the process makes the exit system call.
Big ideas in resources management
Role of the operating system
- Operating system
- Operating Systems management techniques
- Dedicated operating system for a device.
- Hiding complexity
Deepen your understanding
The topics below are not linked directly to IB standards. If you want to improve and deepen your understanding of resource management you should understand the topics presented below.
- Identify the resources that need to be managed within a computer system.
- Evaluate the resources available in a variety of computer systems.
- Identify the limitations of a range of resources in a specified computer system.
- Describe the possible problems resulting from the limitations in the resources in a computer system.
- Explain the role of the operating system in terms of managing memory, peripherals and hardware interfaces.
- Outline OS resource management techniques: scheduling, policies, multitasking, virtual memory, paging, interrupt, polling.
- Discuss the advantages of producing a dedicated operating system for a device.
- Outline how an operating system hides the complexity of the hardware from users and applications.