Content deleted Content added
Abrahamdsl (talk | contribs) m →Components: In DOS save for few exceptions IIRC, direct hardware access were allowed |
m Fixed a typo |
||
Line 18:
There are three main purposes that an operating system fulfills:{{sfn|Anderson|Dahlin|2014|p=7}}
*Operating systems allocate resources between different applications, deciding when they will receive [[central processing unit]] (CPU) time or space in [[computer memory|memory]].{{sfn|Anderson|Dahlin|2014|p=7}} On modern personal computers, users often want to run several applications at once. In order to ensure that one program cannot monopolize the computer's limited hardware resources, the operating system gives each application a share of the resource, either in time (CPU) or space (memory).{{sfn|Anderson|Dahlin|2014|pp=9–10}}{{sfn|Tanenbaum|Bos|2023|pp=6-7}} The operating system also must isolate applications from each other to protect them from errors and security
*Operating systems provide an interface that abstracts the details of accessing [[Computer hardware|hardware]] details (such as physical memory) to make things easier for programmers.{{sfn|Anderson|Dahlin|2014|p=7}}{{sfn|Tanenbaum|Bos|2023|p=5}} [[Virtualization]] also enables the operating system to mask limited hardware resources; for example, [[virtual memory]] can provide a program with the illusion of nearly unlimited memory that exceeds the computer's actual memory.{{sfn|Anderson|Dahlin|2014|p=11}}
*Operating systems provide common services, such as an interface for accessing network and disk devices. This enables an application to be run on different hardware without needing to be rewritten.{{sfn|Anderson|Dahlin|2014|pp=7, 9, 13}} Which services to include in an operating system varies greatly, and this functionality makes up the great majority of code for most operating systems.{{sfn|Anderson|Dahlin|2014|pp=12–13}}
|