2456:
1576:'s memory manager, and do not exceed their allocated memory. This system of memory management is almost never seen any more, since programs often contain bugs which can cause them to exceed their allocated memory. If a program fails, it may cause memory used by one or more other programs to be affected or overwritten. Malicious programs or viruses may purposefully alter another program's memory, or may affect the operation of the operating system itself. With cooperative memory management, it takes only one misbehaved program to crash the system.
44:
598:
338:. 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). The operating system also must isolate applications from each other to protect them from errors and security vulnerability in another application's code, but enable communications between different applications.
964:, which assigns memory space and other resources, establishes a priority for the process in multi-tasking systems, loads program binary code into memory, and initiates execution of the application program, which then interacts with the user and with hardware devices. However, in some systems an application can request that the operating system execute another application within the same process, either as a subroutine or in a separate thread, e.g., the
2315:
1319:
7151:
2143:, all of which are connected to the operating system with specialized software. Personal computer users who are not software developers or coders often prefer GUIs for both input and output; GUIs are supported by most personal computers. The software to support GUIs is more complex than a command line for input and plain text output. Plain text output is often preferred by programmers, and is easy to support.
1783:
7161:
1649:
916:
7171:
536:. The virtual machine is unaware that it is an application and operates as if it had its own hardware. Virtual machines can be paused, saved, and resumed, making them useful for operating systems research, development, and debugging. They also enhance portability by enabling applications to be run on a computer even if they are not compatible with the base operating system.
764:
2172:. Or, development may be for an architecture already in widespread use. Operating system development may come from entirely new concepts, or may commence by modeling an existing operating system. In either case, the hobbyist is her/his own developer, or may interact with a small and sometimes unstructured group of individuals who have like interests.
516:, military, and other similar uses. With soft real-time systems, the occasional missed event is acceptable; this category often includes audio or multimedia systems, as well as smartphones. In order for hard real-time systems be sufficiently exact in their timing, often they are just a library with no protection between applications, such as
2056:, and other techniques. There are no restrictions on who can contribute code to open source operating systems; such operating systems have transparent change histories and distributed governance structures. Open source developers strive to work collaboratively to find and eliminate security vulnerabilities, using
463:
objects or not connected to a network. Embedded systems include many household appliances. The distinguishing factor is that they do not load user-installed software. Consequently, they do not need protection between different applications, enabling simpler designs. Very small operating systems might
3716:
When an interrupt (or trap) occurs, the hardware transfers control to the operating system. First, the operating system preserves the state of the CPU by storing registers and the program counter. Then, it determines which type of interrupt has occurred. For each type of interrupt, separate segments
3652:
The concept of an interrupt is something that has expanded in scope over the years. The 80x86 family has only added to the confusion surrounding interrupts by introducing the int (software interrupt) instruction. Indeed, different manufacturers have used terms like exceptions, faults, aborts, traps
1888:
by libraries) enable applications to create, delete, open, and close files, as well as link, read, and write to them. All these operations are carried out by the operating system on behalf of the application. The operating system's efforts to reduce latency include storing recently requested blocks
955:
The operating system provides an interface between an application program and the computer hardware, so that an application program can interact with the hardware only by obeying rules and procedures programmed into the operating system. The operating system is also a set of services which simplify
3371:
system call. There is a significant drop in instructions per cycle (IPC) due to the system call, and it takes up to 14,000 cycles of execution before the IPC of this application returns to its previous level. As we will show, this performance degradation is mainly due to interference caused by the
1675:
When the kernel detects a page fault it generally adjusts the virtual memory range of the program which triggered it, granting it access to the memory requested. This gives the kernel discretionary power over where a particular application's memory is stored, or even whether or not it has actually
1389:
drives can transfer data at a rate high enough that interrupting the CPU for every byte or word transferred, and having the CPU transfer the byte or word between the device and memory, would require too much CPU time. Data is, instead, transferred between the device and memory independently of the
1939:
Maintaining data reliability in the face of a computer crash or hardware failure is another concern. File writing protocols are designed with atomic operations so as not to leave permanent storage in a partially written, inconsistent state in the event of a crash at any point during writing. Data
356:
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. Which services to include in an operating system varies greatly, and this functionality makes up the
3366:
pollution of important processor structures which affects both user-mode and kernel-mode performance. A motivating example that quantifies the impact of system call pollution on application performance can be seen in Figure 1. It depicts the user-mode instructions per cycles (kernel cycles and
1034:. The details of how a computer processes an interrupt vary from architecture to architecture, and the details of how interrupt service routines behave vary from operating system to operating system. However, several interrupt functions are common. The architecture and operating system must:
1568:
must be responsible for managing all system memory which is currently in use by the programs. This ensures that a program does not interfere with memory already in use by another program. Since programs time share, each program must have independent access to memory.
779:
1656:
The use of virtual memory addressing (such as paging or segmentation) means that the kernel can choose what memory each program may use at any given time, allowing the operating system to use the same memory locations for multiple tasks.
1757:
data, and other resources with other threads of the same process. Thus, there is less overhead to create a thread than a new process. On single-CPU systems, concurrency is switching between processes. Many computers have multiple CPUs.
3920:
1948:
to detect when data has been corrupted. With multiple layers of checksums and backups of a file, a system can recover from multiple hardware failures. Background processes are often used to detect and recover from data corruption.
1205:
inform processes of the occurrence of asynchronous events. To communicate asynchronously, interrupts are required. One reason a process needs to asynchronously communicate to another process solves a variation of the classic
1713:
enable splitting a process' work into multiple parts that can run simultaneously. The number of threads is not limited by the number of processors available. If there are more threads than processors, the operating system
2195:
to another OS, the functionality required by that application may be implemented differently by that OS (the names of functions, meaning of arguments, etc.) requiring the application to be adapted, changed, or otherwise
575:, in a way similarly to embedded and real-time OSes. Note that this overhead is not negligible: to the direct cost of mode switching it's necessary to add the indirect pollution of important processor structures (like
391:
because of the size of the machine needed. The different CPUs often need to send and receive messages to each other; to ensure good performance, the operating systems for these machines need to minimize this copying of
633:
began to be built. These still needed professional operators who manually do what a modern operating system would do, such as scheduling programs to run, but mainframes still had rudimentary operating systems such as
1967:: confidentiality (unauthorized users cannot access data), integrity (unauthorized users cannot modify data), and availability (ensuring that the system remains available to authorized users, even in the event of a
3687:
Like the trap, the interrupt stops the running program and transfers control to an interrupt handler, which performs some appropriate action. When finished, the interrupt handler returns control to the interrupted
2340:. Linux was designed by programmers for their own use, thus emphasizing simplicity and consistency, with a small number of basic elements that can be combined in nearly unlimited ways, and avoiding redundancy.
1065:(CPU) that an event has occurred. Software interrupts are similar to hardware interrupts — there is a change away from the currently running process. Similarly, both hardware and software interrupts execute an
444:, an additional software layer between the operating system and applications, is often used to improve consistency. Although it functions similarly to an operating system, it is not a true operating system.
3653:
and interrupts to describe the phenomena this chapter discusses. Unfortunately there is no clear consensus as to the exact meaning of these terms. Different authors adopt different terms to their own use.
567:(there is only a single application running, at least conceptually, so there is no need to prevent interference between applications) and OS services are accessed via simple library calls (potentially
1932:. Although any free block can be used to store a new file, many operating systems try to group together files in the same directory to maximize performance, or periodically reorganize files to reduce
2877:
1963:
Security means protecting users from other users of the same computer, as well as from those who seeking remote access to it over a network. Operating systems security rests on achieving the
1679:
In modern operating systems, memory which is accessed less frequently can be temporarily stored on a disk or other media to make that space available for use by other programs. This is called
3835:
Signals are analogous to hardware interrupts in that they interrupt the normal flow of execution of a program; in most cases, it is not possible to predict exactly when a signal will arrive.
3909:
3863:
Among the types of events that cause the kernel to generate a signal for a process are the following: A software event occurred. For example, ... the process's CPU time limit was exceeded
197:, the operating system acts as an intermediary between programs and the computer hardware, although the application code is usually executed directly by the hardware and frequently makes
1605:
registers specify to the CPU what memory address it should allow a running program to access. Attempts to access other addresses trigger an interrupt, which causes the CPU to re-enter
3239:"Unikernels: Rise of the Virtual Library Operating System: What if all the software layers in a virtual appliance were compiled within the same safe, high-level language framework?"
1432:
Create an entry in the device-status table. The operating system maintains this table to keep track of which processes are waiting for which devices. One field in the table is the
927:
between different applications and users. This protection is key to improving reliability by keeping errors isolated to one program, as well as security by limiting the power of
3639:
3745:
Switching the CPU to another process requires saving the state of the old process and loading the saved state for the new process. This task is known as a context switch.
2479:
consoles. The operating system was designed for "security, reliability, compatibility, high performance, extensibility, portability, and international support"—later on,
5713:
5568:
2459:
Security descriptor for a file that is read-only by default, specified no access for Elvis, read/write access for Cathy, and full access for Ida, the owner of the file
2157:
A hobby operating system may be classified as one whose code has not been directly derived from an existing operating system, and has few users and active developers.
1652:
Many operating systems can "trick" programs into using memory scattered around the hard disk and RAM as if it is one continuous chunk of memory, called virtual memory.
1617:
or Seg-V for short, and since it is both difficult to assign a meaningful result to such an operation, and because it is usually a sign of a misbehaving program, the
820:(MicroSoft Disk Operating System) and was widely used on IBM microcomputers. Later versions increased their sophistication, in part by borrowing features from UNIX.
2847:
3313:
2029:, can also be used to compromise the operating system. There are known instances of operating system programmers deliberately implanting vulnerabilities, such as
1916:
where its contents are stored. Most file systems use directories to convert file names to file numbers. To find the block number, the operating system uses an
931:
and protecting private data, and ensuring that one program cannot monopolize the computer's resources. Most operating systems have two modes of operation: in
1994:
Some operating system designs are more secure than others. Those with no isolation between the kernel and applications are least secure, while those with a
5660:
2869:
2409:
is a partially open-source operating system closely based on Linux and has become the most widely used operating system by users, due to its popularity on
6187:
1475:
While the writing takes place, the operating system will context switch to other processes as normal. When the device finishes writing, the device will
4185:
1686:
Virtual memory provides the programmer or the user with the perception that there is a much larger amount of RAM in the computer than is really there.
5519:
2537:. Every process has an authentication token and each object is given a security descriptor. Later releases have added even more security features.
440:
computers—each of which might have their own operating system and file system. Unlike multicomputers, they may be dispersed anywhere in the world.
272:
are dominant in the server and supercomputing sectors. Other specialized classes of operating systems (special-purpose operating systems), such as
1707:
refers to the operating system's ability to carry out multiple tasks simultaneously. Virtually all modern operating systems support concurrency.
6904:
6876:
3336:
2006:
are another approach that improves security by minimizing the kernel and separating out other operating systems functionality by application.
6929:
5989:
5960:
5606:
5587:
5527:
5497:
5461:
5438:
5390:
5058:
4488:
4463:
4432:
4398:
4364:
4339:
4227:
4152:
4043:
4018:
3984:
3893:
3856:
3828:
3800:
3775:
3738:
3709:
3680:
3611:
2026:
1816:) storage is much cheaper per byte, but takes several orders of magnitude longer to access, read, and write. The two main technologies are a
1506:
Push the contents of the other registers onto the call stack. (Alternatively, the contents of the registers may be placed in a system table.)
557:
1301:
directly. (Separate from the architecture, a device may perform direct memory access to and from main memory either directly or via a bus.)
205:
by it. Operating systems are found on many devices that contain a computer – from cellular phones and video game consoles to
6780:
4267:
2792:
2577:
2072:
of all operating systems, arguing that it prevents developers from placing trust in secrecy and thus relying on the unreliable practice of
1941:
387:. Multicomputers were developed because large multiprocessors are difficult to engineer and prohibitively expensive; they are universal in
1998:
like most general-purpose operating systems are still vulnerable if any part of the kernel is compromised. A more secure design features
1726:
and stack, and the state of the new thread is loaded in. Historically, on many systems a thread could run until it relinquished control (
6934:
6206:
2587:
1484:
689:
was intended to allow hundreds of users to access a large computer. Despite its limited adoption, it can be considered the precursor to
2497:
for important data structures like processes, threads, and sections (memory objects, for example files). The operating system supports
1660:
If a program tries to access memory that is not accessible memory, but nonetheless has been allocated to it, the kernel is interrupted
6439:
2227:
2045:
7086:
6914:
6444:
4121:
4093:
4068:
3959:
726:
277:
2017:, which create potential vulnerabilities for exploitation. Despite attempts to protect against them, vulnerabilities are caused by
1683:, as an area of memory can be used by multiple programs, and what that memory area contains can be swapped or exchanged on demand.
3631:
3358:
Synchronous implementation of system calls negatively impacts the performance of system intensive workloads, both in terms of the
2455:
1762:
with multiple threads running on different CPUs can speed up a program, depending on how much of it can be executed concurrently.
7174:
6268:
5764:
5708:
2612:
2239:
2002:
that separate the kernel's privileges into many separate security domains and reduce the consequences of a single kernel breach.
5146:
2814:
1624:
Windows versions 3.1 through ME had some level of memory protection, but programs could easily circumvent the need to use it. A
6562:
5683:
5653:
4305:
2547:
2243:
1851:
548:(libOS) is one in which the services that a typical operating system provides, such as networking, are provided in the form of
281:
6815:
5211:
3283:
2094:(UI) is essential to support human interaction with a computer. The two most common user interface types for any computer are
49:
6853:
6472:
6180:
5876:
5774:
2567:
2107:(GUI) using a visual environment, most commonly a combination of the window, icon, menu, and pointer elements, also known as
1704:
1699:
714:
66:
2480:
1487:. The device will also place an integer onto the data bus. Upon accepting the interrupt request, the operating system will:
897:
The components of an operating system are designed to ensure that various parts of a computer function cohesively. All user
3618:
A signal is a notification to a process that an event has occurred. Signals are sometimes described as software interrupts.
6995:
6972:
6702:
6692:
6154:
5703:
5688:
4301:
4259:
2784:
2632:
1750:
2839:
1718:
schedules, suspends, and resumes threads, controlling when each thread runs and how much CPU time it receives. During a
1572:
Cooperative memory management, used by many early operating systems, assumes that all programs make voluntary use of the
956:
development and execution of application programs. Executing an application program typically involves the creation of a
7076:
6664:
6572:
6477:
6253:
6238:
5749:
5734:
5693:
5538:
2870:"Special-Purpose Operating Systems - RWTH AACHEN UNIVERSITY Institute for Automation of Complex Power Systems - English"
1984:
1801:
592:
323:—which are associated with the operating system, but may not be part of the kernel—and applications—all other software.
127:
3305:
2036:
Operating systems security is hampered by their increasing complexity and the resulting inevitability of bugs. Because
1207:
733:
was a stripped-down version of UNIX, developed in 1987 for educational uses, that inspired the commercially available,
48:
7164:
6899:
6397:
5915:
5862:
2434:
1353:
types a key on the keyboard, typically the character appears immediately on the screen. Likewise, when a user moves a
405:
5539:"Understanding and Managing Complex Software Vulnerabilities: An Empirical Analysis of Open-Source Operating Systems"
842:
earlier operating systems had used. Following the success of
Macintosh, MS-DOS was updated with a GUI overlay called
808:(Control Program for Microcomputers) was the most popular operating system for microcomputers. Later, IBM bought the
3406:
674:
necessitated memory partitioning and safeguards against one job accessing the memory allocated to a different one.
7195:
7136:
6785:
5930:
5769:
5646:
4169:
2406:
2333:
2289:
1628:
would be produced, indicating a segmentation violation had occurred; however, the system would often crash anyway.
1287:
882:
752:
501:
257:
7154:
7081:
7056:
6919:
6567:
6173:
5965:
5784:
5744:
5739:
5698:
2652:
Modern CPUs provide instructions (e.g. SYSENTER) to invoke selected kernel services without an interrupts. Visit
2617:
2572:
2518:
2152:
1933:
1715:
1618:
1610:
1583:
1573:
1565:
1468:
1231:
961:
910:
452:
417:
408:, which enables each CPU to access memory belonging to other CPUs. Multicomputer operating systems often support
316:
556:: a specialized (only the absolute necessary pieces of code are extracted from libraries and bound together ),
7005:
6838:
6424:
6293:
6008:
5895:
5759:
3807:
Hardware may trigger an interrupt at any time by sending a signal to the CPU, usually by way of the system bus.
2607:
2494:
2396:
2348:
2208:
2104:
2010:
1968:
1727:
1625:
1286:
for each I/O to finish. Instead, a computer may implement interrupts for I/O completion, avoiding the need for
831:
782:
710:
701:
was available, it became the basis of other, incompatible operating systems, of which the most successful were
50:
5400:
Auslander, M. A.; Larkin, D. C.; Scherr, A. L. (September 1981). "The
Evolution of the MVS Operating System".
1369:. An interrupt-driven I/O occurs when a process causes an interrupt for every character or word transmitted.
353:
can provide a program with the illusion of nearly unlimited memory that exceeds the computer's actual memory.
7066:
7000:
6891:
6707:
6367:
5754:
4176:
2602:
2526:
2364:
2277:
1735:
1730:). Because this model can allow a single thread to monopolize the processor, most operating systems now can
1358:
1062:
1027:
1015:
793:
485:
331:
245:
2203:
This cost in supporting operating systems diversity can be avoided by instead writing applications against
1586:
to limit a process' access to the computer's memory. Various methods of memory protection exist, including
1105:
can send messages to the kernel to modify the behavior of a currently running process. For example, in the
7131:
6962:
6843:
6610:
6600:
6595:
6142:
6081:
5970:
5950:
5899:
5857:
2534:
2438:
2161:
2098:
2049:
1614:
1533:
1510:
1293:
Some computers require an interrupt for each character or word, costing a significant amount of CPU time.
1215:
1148:
1106:
1084:
may set a timer to go off after a few seconds in case too much data causes an algorithm to take too long.
1073:
854:
was paid. In the twenty-first century, Windows continues to be popular on personal computers but has less
846:. Windows later was rewritten as a stand-alone operating system, borrowing so many features from another (
839:
767:
635:
597:
580:
508:
or data by or at a specific moment in time. Hard real-time systems require exact timing and are common in
413:
179:
2359:
syntax. Linux supports standard UNIX networking features, as well as the full suite of UNIX tools, while
1014:) provides an efficient way for most operating systems to react to the environment. Interrupts cause the
7101:
7071:
7061:
6957:
6871:
6747:
6687:
6654:
6644:
6527:
6492:
6482:
6419:
6288:
6263:
6258:
6223:
5925:
5891:
5793:
5729:
5562:
4263:
4243:
3367:
instructions are ignored) of one of the SPEC CPU 2006 benchmarks (Xalan) immediately before and after a
2399:(GUI) with a desktop, folder and file icons, as well as the option to access the operating system via a
2380:
2165:
2073:
2041:
1921:
1863:
1790:
1695:
1426:
1129:
973:
936:
409:
319:—but can include other software as well. The two other types of programs that can run on a computer are
175:
2215:. These abstractions have already borne the cost of adaptation to specific operating systems and their
1546:
Pop from the call stack the address of the next instruction, and set it back into the program counter.
6861:
6833:
6805:
6800:
6629:
6605:
6557:
6540:
6535:
6517:
6507:
6502:
6464:
6414:
6409:
6326:
6272:
6122:
6096:
5489:
5121:
2510:
2197:
2030:
1988:
1925:
1905:(I/O) device that enables the operating system to work without modification over different hardware.
1723:
1440:
1395:
1298:
1294:
940:
935:, the hardware checks that the software is only executing legal instructions, whereas the kernel has
622:
330:
Operating systems allocate resources between different applications, deciding when they will receive
312:
2484:
1832:
that stores data in electrical circuits). The latter is more expensive but faster and more durable.
7126:
7051:
6967:
6952:
6717:
6497:
6454:
6449:
6346:
6336:
6308:
6091:
6043:
5920:
2530:
2169:
2128:
2065:
2053:
2037:
1813:
1777:
1587:
1054:
957:
549:
320:
47:
1979:—is key to achieving security. Other ways to increase security include simplicity to minimize the
1842:
used by the operating system to simplify access to permanent storage. They provide human-readable
7091:
6990:
6866:
6823:
6732:
6674:
6659:
6649:
6434:
6233:
6028:
5935:
5378:
2700:
2422:
1759:
1746:
1710:
1418:
1183:
1096:
999:
928:
671:
460:
433:
384:
269:
241:
161:
4250:
397:
287:
Some operating systems require installation or may come pre-installed with purchased computers (
178:
for efficient use of the system and may also include accounting software for cost allocation of
1878:
divided by punctuation, while a relative path defines the location of a file from a directory.
1026:, also known as an interrupt service routine (ISR). An interrupt service routine may cause the
404:—to reduce the need for packet copying and support more concurrent users. Another technique is
7111:
7041:
7020:
6982:
6790:
6757:
6737:
6429:
6341:
6215:
6137:
6086:
6018:
5975:
5816:
5602:
5583:
5523:
5514:
Leva, Alberto; Maggio, Martina; Papadopoulos, Alessandro
Vittorio; Terraneo, Federico (2013).
5493:
5457:
5434:
5417:
5386:
4484:
4459:
4455:
4449:
4428:
4424:
4418:
4394:
4390:
4384:
4360:
4335:
4223:
4219:
4213:
4148:
4144:
4138:
4117:
4089:
4064:
4039:
4014:
4010:
4004:
3980:
3955:
3916:
3889:
3852:
3824:
3796:
3771:
3734:
3705:
3676:
3672:
3666:
3607:
3254:
2726:
2722:
2552:
2490:
2472:
2450:
2318:
2253:
2249:
2204:
2132:
2085:
1995:
1958:
1909:
1890:
1829:
1805:
1579:
1559:
1382:
1211:
1132:
1066:
1023:
995:
886:
859:
797:
682:
655:
602:
505:
342:
308:
221:
217:
194:
153:
96:
76:
5577:
1854:
of accesses, prevent multiple threads from accessing the same section of memory, and include
6944:
6828:
6795:
6590:
6512:
6401:
6387:
6331:
6318:
6243:
6196:
6117:
5550:
5409:
3246:
2622:
2392:
2176:
2108:
1885:
1866:(also called folders) that list human-readable filenames and other directories. An absolute
1789:
allow users and programs to organize and sort files on a computer, often through the use of
1402:
1350:
1102:
1092:
1081:
851:
663:
568:
437:
380:
190:
165:
120:
91:
1862:. File systems are composed of files (named collections of data, of an arbitrary size) and
7015:
6909:
6881:
6775:
6727:
6712:
6697:
6552:
6547:
6487:
6377:
6351:
6303:
6248:
6061:
6023:
5994:
5623:
2840:"VII. Special-Purpose Systems - Operating System Concepts, Seventh Edition [Book]"
2592:
2426:
2414:
2314:
2285:
2120:
2022:
2018:
1976:
1972:
1859:
1798:
1742:
1606:
1496:
1492:
1447:
1422:
1378:
924:
697:
operating system originated as a development of MULTICS for a single user. Because UNIX's
690:
564:
533:
456:
388:
335:
296:
273:
253:
149:
2367:. Initially of a minimalist design, Linux is a flexible system that can work in under 16
1540:
Pop from the call stack the registers other than the status register and program counter.
1550:
With the program counter now reset, the interrupted process will resume its time slice.
17:
7121:
7025:
6924:
6770:
6742:
6147:
6071:
6033:
5905:
2686:
often in the form of a DMA chip for smaller systems and I/O channels for larger systems
2506:
2502:
2430:
2388:
2376:
2216:
2091:
1980:
1917:
1875:
1871:
1719:
1637:
1602:
1464:
1433:
1354:
1226:
will write to the pipe when its computation is ready and then sleep in the wait queue.
1077:
1031:
572:
473:
421:
401:
393:
372:
350:
346:
1318:
1282:
are slower than the CPU. Therefore, it would slow down the computer if the CPU had to
7189:
7010:
6298:
6013:
5852:
5806:
5476:
5450:
2597:
2498:
2467:
operating system that is widely used on desktop computers, laptops, tablets, phones,
2352:
2336:(GPL), which means that all of its derivatives are legally required to release their
2329:
2212:
2061:
1898:
1821:
1809:
1386:
870:
835:
801:
734:
609:
The first computers in the late 1940s and 1950s were directly programmed either with
509:
376:
210:
86:
4292:
1361:
immediately moves across the screen. Each keystroke and mouse movement generates an
7106:
6765:
5940:
3279:
2718:
The address might refer to a page or segment that has been moved to a backing store
2666:
2627:
2400:
2384:
2257:
1983:, locking access to resources by default, checking all requests for authorization,
1902:
1825:
1782:
1457:
1283:
1275:
1175:
1088:
1019:
1007:
944:
855:
667:
659:
614:
349:
also enables the operating system to mask limited hardware resources; for example,
183:
171:
101:
2222:
Another approach is for operating system vendors to adopt standards. For example,
778:
862:
and servers but are also used on mobile devices and many other computer systems.
685:
so multiple users could access the computer simultaneously. The operating system
7096:
6722:
6634:
6066:
6048:
5831:
5821:
5811:
3309:
2696:
2468:
2464:
2418:
2410:
2344:
2337:
2140:
2124:
2069:
2057:
1999:
1894:
1881:
1839:
1835:
1786:
1771:
1754:
1406:
1391:
1171:
1144:
763:
748:
698:
678:
666:, such that the CPU could be put to use on one job while another was waiting on
601:
IBM System/360 Model 50 operator's console and CPU; the operator's console is a
469:
198:
113:
81:
5632:
3342:
1621:
generally resorts to terminating the offending program, and reports the error.
1297:(DMA) is an architecture feature to allow devices to bypass the CPU and access
341:
Operating systems provide an interface that abstracts the details of accessing
7116:
7046:
6639:
6372:
6228:
2562:
2281:
2265:
2116:
1913:
1817:
1669:
1643:
1500:
1279:
866:
858:
of servers. UNIX operating systems, especially Linux, are the most popular on
744:
647:
626:
618:
529:
441:
249:
229:
206:
5421:
3258:
1398:
controller; an interrupt is delivered only when all the data is transferred.
563:
The operating system code and application code are not executed in separated
552:
and composed with a single application and configuration code to construct a
6621:
6582:
6003:
5910:
5836:
5801:
5431:
Evaluation of Open Source
Operating Systems for Safety-Critical Applications
3343:
OSDI '10, 9th USENIX Symposium on
Operating System Design and Implementation
3250:
2368:
2360:
2191:
If an application is written for use on a specific operating system, and is
2003:
1964:
1945:
1867:
1855:
1843:
1731:
1648:
1164:
1114:
1072:
Software interrupts may be normally occurring events. It is expected that a
991:
985:
932:
827:
813:
786:
630:
610:
576:
553:
465:
202:
71:
5554:
2721:
The address might refer to memory that has restricted access due to, e.g.,
915:
315:". Operating systems include the software that is always running, called a
3238:
2529:. Windows has many security features; especially important are the use of
2040:
of operating systems may not be feasible, developers use operating system
1413:
operation, then the system call might execute the following instructions:
6682:
6132:
3400:
2522:
2273:
2180:
2136:
1847:
1797:
Permanent storage devices used in twenty-first century computers, unlike
1191:
919:
A kernel connects the application software to the hardware of a computer.
898:
885:
operating system (introduced 2008), with a Linux kernel and a C library (
706:
513:
345:
details (such as physical memory) to make things easier for programmers.
237:
157:
5413:
3338:
FlexSC: Flexible System Call
Scheduling with Exception-Less System Calls
816:. After modifications requested by IBM, the resulting system was called
560:, machine image that can be deployed to cloud or embedded environments.
6127:
6056:
5826:
2699:
have a DMA controller. Additionally, a device may also have one. Visit
2670:
2582:
1198:
was chosen because early implementations only terminated the process.)
847:
843:
702:
686:
583:, and so on) which affects both user-mode and kernel-mode performance.
481:
292:
5193:
5191:
3717:
of code in the operating system determine what action should be taken.
280:
also exist. Some operating systems have low system requirements (e.g.
5627:
5448:
Deitel, Harvey M.; Deitel, Paul; Choffnes, David (25 December 2015).
3346:
3245:. Vol. 11, no. 11. New York, NY, USA: ACM. pp. 30–44.
2674:
2297:
2192:
1929:
1680:
1591:
878:
817:
771:
651:
489:
307:
An operating system is difficult to define, but has been called "the
265:
5638:
1509:
Read the integer from the data bus. The integer is an offset to the
662:. The OS/360 also was the first popular operating system to support
6165:
2014:
1453:
Set the buffer size (an integer) to another predetermined register.
1234:
and soon will read from its input stream. The kernel will generate
6076:
4483:. New Delhi: Prentice-Hall of India Private Limited. p. 267.
2924:
2922:
2653:
2454:
2325:
2313:
2309:
2269:
2261:
2223:
1987:(granting the minimum privilege essential for performing a task),
1897:
data that the application has not asked for, but might need next.
1781:
1595:
1594:. All methods require some level of hardware support (such as the
914:
823:
777:
762:
741:
737:
730:
722:
639:
596:
571:
them based on compiler thresholds), without the usual overhead of
233:
225:
4853:
4851:
4790:
4788:
3362:
costs of mode switching and, more interestingly, in terms of the
2517:
file system has a master table and each file is represented as a
1087:
Software interrupts may be error conditions, such as a malformed
326:
There are three main purposes that an operating system fulfills:
291:-installation), whereas others may run directly from media (i.e.
5429:
Berntsson, Petter Sainio; Strandén, Lars; Warg, Fredrik (2017).
5333:
5331:
5318:
5316:
2712:
There are several reasons that the memory might be inaccessible
2557:
2514:
2476:
1940:
corruption is addressed by redundant storage (for example, RAID—
805:
718:
694:
517:
6169:
5642:
4916:
4914:
3910:"Intel® 64 and IA-32 Architectures Software Developer's Manual"
3006:
3004:
3002:
1446:
Set the memory address of the memory buffer to a predetermined
6112:
5212:"Linus Torvalds prepares to move the Linux kernel to modern C"
3632:"Chapter Seventeen: Interrupts, Traps and Exceptions (Part 1)"
3306:"Leave your OS at home: the rise of library operating systems"
3069:
3067:
2941:
2939:
2937:
2372:
2356:
2293:
1975:—in the case of operating systems, the kernel, processes, and
1313:
1125:
874:
809:
643:
605:
used by the operating system to communicate with the operator.
477:
288:
261:
5576:
Silberschatz, Abraham; Galvin, Peter B.; Gagne, Greg (2018).
5147:"Mobile & Tablet Operating System Market Share Worldwide"
3498:
3496:
3184:
3182:
3180:
3178:
2815:"Mobile & Tablet Operating System Market Share Worldwide"
923:
The kernel is the part of the operating system that provides
3382:
3380:
1214:
for its output to be sent to the reader's input stream. The
939:
and is not subject to these checks. The kernel also manages
901:
must interact with the operating system to access hardware.
311:
that manages a computer's resources for its users and their
42:
2897:
2895:
1722:
a running thread is suspended, its state is saved into the
646:
introduced the first series of intercompatible computers (
1439:
Place all the characters to be sent to the device into a
1244:
may be classified into 7 categories. The categories are:
3335:
Soares, Livio
Baldini; Stumm, Michael (4 October 2010).
2343:
Its design is similar to other UNIX systems not using a
1564:
Among other things, a multiprogramming operating system
424:
to generate shared memory that does not actually exist.
5433:. Springer International Publishing. pp. 117–132.
5057:
sfn error: no target: CITEREFBerntssoStrandénWarg2017 (
3597:
3595:
1330:
5484:
Silberschatz, Avi; Galvin, Peter; Gagne, Greg (2008).
3399:
Arpaci-Dusseau, Remzi; Arpaci-Dusseau, Andrea (2015).
2300:
with 30.42%, and other operating systems with 0.66%.
2160:
In some cases, hobby development is in support of a "
1526:
Perform a context switch back to the writing process.
1022:
change away from the currently running program to an
5052:
3237:
Madhavapeddy, Anil; Scott, David J (November 2013).
889:) partially based on BSD code, became most popular.
625:
or operating systems. After the introduction of the
276:
and real-time systems, exist for many applications.
268:
with 30.42%, and other operating systems with .66%.
7034:
6981:
6943:
6890:
6852:
6814:
6756:
6673:
6619:
6581:
6526:
6463:
6396:
6360:
6317:
6281:
6214:
6105:
6042:
5988:
5949:
5884:
5875:
5845:
5792:
5783:
5722:
5676:
5361:
5349:
5307:
5235:
5197:
5170:
4623:
4611:
4599:
4575:
4515:
3212:
3200:
2928:
740:. Since 2008, MINIX is used in controllers of most
5449:
4116:. Addison-Wesley Publishing Company. p. 149.
4088:. Addison-Wesley Publishing Company. p. 148.
4063:. Addison-Wesley Publishing Company. p. 153.
2753:Operating Systems, Internals and Design Principles
2101:, where computer commands are typed, line-by-line,
1057:that an event has occurred. This contrasts with a
1044:restore the state after the interrupt is serviced.
504:is an operating system that guarantees to process
357:great majority of code for most operating systems.
3998:
3996:
2785:"Desktop Operating System Market Share Worldwide"
2505:, which speeds up I/O for many applications. I/O
2230:provide commonalities that reduce porting costs.
1266:when a process has a tracing alert for debugging.
1117:) might terminate the currently running process.
1076:will occur, so the kernel will have to perform a
1038:transfer control to an interrupt service routine.
729:(APIs), which is supported by most UNIX systems.
27:Software that manages computer hardware resources
3879:
3877:
3875:
3873:
3871:
2127:, user input is typically from a combination of
1928:to track free blocks, commonly implemented as a
1091:. However, the most common error conditions are
1041:save the state of the currently running process.
5040:
5028:
4451:Structured Computer Organization, Third Edition
4420:Structured Computer Organization, Third Edition
4412:
4410:
4386:Structured Computer Organization, Third Edition
4378:
4376:
4215:Structured Computer Organization, Third Edition
4207:
4205:
4140:Structured Computer Organization, Third Edition
4107:
4105:
4006:Structured Computer Organization, Third Edition
3668:Structured Computer Organization, Third Edition
2433:". Unlike Linux, much of Android is written in
2276:, are collectively in third place (7%). In the
2268:is in second place (20%), and the varieties of
1257:when a process executes an illegal instruction.
804:) from around 1980. For around five years, the
284:). Others may have higher system requirements.
232:is in second place (20%), and the varieties of
46:
4857:
4830:
4818:
4806:
4794:
4779:
4755:
4743:
4731:
4707:
4695:
4683:
4659:
4635:
4587:
4563:
4551:
4539:
4527:
4503:
3761:
3759:
3757:
3755:
3753:
3586:
3574:
3550:
3224:
3034:
3022:
3010:
2981:
2957:
2945:
2913:
2379:systems. Similar to other UNIX systems, Linux
2187:Diversity of operating systems and portability
6205:Note: This template roughly follows the 2012
6181:
5654:
1971:). As with other computer systems, isolating
1598:MMU), which does not exist in all computers.
1254:when a process runs out of a system resource.
650:). All of them ran the same operating system—
224:holds a dominant market share of around 68%.
121:
8:
5567:: CS1 maint: DOI inactive as of June 2024 (
5506:O'Brien, J. A., & Marakas, G. M.(2011).
5337:
5322:
5295:
5283:
5271:
5259:
5247:
5182:
5107:
5095:
5083:
5071:
5016:
5004:
4992:
4980:
4968:
4956:
4944:
4932:
4920:
4905:
4893:
4881:
4869:
4842:
4767:
4719:
4671:
4647:
3945:
3943:
3941:
3562:
3538:
3526:
3514:
3502:
3487:
3475:
3463:
3451:
3439:
3427:
3386:
3188:
3169:
3157:
3145:
3133:
3121:
3109:
3097:
3085:
3073:
3058:
3046:
2993:
2969:
2901:
2175:Examples of hobby operating systems include
1912:that maps a file's name and metadata to the
1543:Pop from the call stack the status register.
1513:. The vector table's instructions will then:
1263:when a process is aborted from the keyboard.
5597:Tanenbaum, Andrew S.; Bos, Herbert (2023).
5537:Richet, Jean-Loup; Bouaynaya, Wafa (2023).
943:for other processes and controls access to
6188:
6174:
6166:
5881:
5789:
5661:
5647:
5639:
5383:Operating Systems: Principles and Practice
2164:" computing device, for example, a simple
2025:. Hardware vulnerabilities, some of them
2021:attacks, which are enabled by the lack of
1194:format) to be sent. (The abrasive name of
400:—separating groups of users into separate
128:
114:
31:
4357:Operating System Concepts, Fourth Edition
4332:Operating System Concepts, Fourth Edition
4036:Operating System Concepts, Fourth Edition
3793:Operating System Concepts, Fourth Edition
3768:Operating System Concepts, Fourth Edition
3731:Operating System Concepts, Fourth Edition
3702:Operating System Concepts, Fourth Edition
1601:In both segmentation and paging, certain
654:—which consisted of millions of lines of
5599:Modern Operating Systems, Global Edition
4481:Computer Organization & Architecture
3636:The Art Of Assembly Language Programming
1668:. This kind of interrupt is typically a
1647:
1135:instruction is available. The syntax is
869:was dominant at first, being usurped by
830:was the first popular computer to use a
5543:Systèmes d'information & management
5471:Bic, Lubomur F.; Shaw, Alan C. (2003).
5402:IBM Journal of Research and Development
3952:The Design of the UNIX Operating System
2743:
2645:
2147:Operating system development as a hobby
1908:Another component of file systems is a
1053:A software interrupt is a message to a
881:(from 2007). Later on, the open-source
58:
34:
6905:Knowledge representation and reasoning
5560:
4178:IBM System/360 Principles of Operation
2009:Most operating systems are written in
1663:
1251:when a process has an error exception.
1210:. The writer receives a pipe from the
717:(BSD). To increase compatibility, the
6930:Philosophy of artificial intelligence
5516:Control-based Operating System Design
4112:Haviland, Keith; Salama, Ben (1987).
4084:Haviland, Keith; Salama, Ben (1987).
4059:Haviland, Keith; Salama, Ben (1987).
3642:from the original on 22 December 2021
2292:share is 68.92%, followed by Apple's
1924:). Separately, there is a free space
1804:(DRAM), are still accessible after a
420:, in which the operating system uses
260:share is 68.92%, followed by Apple's
7:
6249:Energy consumption (Green computing)
5635:and the history of operating systems
4311:from the original on 25 January 2019
4244:"Program Interrupt Controller (PIC)"
3402:Operating Systems: Three Easy Pieces
2779:
2777:
2770:. Technical Publications. p. 1.
2755:. Pearson: Prentice Hall. p. 6.
2578:List of pioneers in computer science
1942:redundant array of inexpensive disks
1536:expired, the operating system will:
186:, peripherals, and other resources.
6935:Distributed artificial intelligence
6207:ACM Computing Classification System
5120:Holwerda, Thom (20 December 2009).
3372:kernel on key processor structures.
2795:from the original on 2 October 2023
2588:Glossary of operating systems terms
2252:market, as of September 2023,
1260:when a process sets an alarm event.
1097:accessing an invalid memory address
532:is an operating system that runs a
220:market, as of September 2023,
6440:Integrated development environment
5053:Berntsso, Strandén & Warg 2017
4191:from the original on 19 March 2022
3926:from the original on 23 March 2022
3286:from the original on 22 April 2024
2115:For personal computers, including
2046:address space layout randomization
1741:Threads have their own thread ID,
1523:Extract the process control block.
727:application programming interfaces
278:Security-focused operating systems
25:
6915:Automated planning and scheduling
6445:Software configuration management
4294:PDP-1 Input-Output Systems Manual
3409:from the original on 25 July 2016
3316:from the original on 1 March 2024
2880:from the original on 14 June 2021
2850:from the original on 13 June 2021
2715:The address might be out of range
1532:When the writing process has its
1479:the currently running process by
1248:when a process finishes normally.
383:has multiple CPUs, each of which
7169:
7159:
7150:
7149:
5765:Object-oriented operating system
5210:Vaughan-Nichols, Steven (2022).
5122:"My OS Is Less Hobby than Yours"
4273:from the original on 10 May 2022
3979:. No Starch Press. p. 400.
3888:. No Starch Press. p. 388.
3851:. No Starch Press. p. 388.
3823:. No Starch Press. p. 388.
3606:. No Starch Press. p. 388.
2613:Object-oriented operating system
2240:Usage share of operating systems
2044:to reduce vulnerabilities, e.g.
1317:
1201:In Unix-like operating systems,
834:(GUI). The GUI proved much more
670:(I/O). Holding multiple jobs in
7160:
6563:Computational complexity theory
4038:. Addison-Wesley. p. 182.
3977:The Linux Programming Interface
3919:. September 2016. p. 610.
3886:The Linux Programming Interface
3849:The Linux Programming Interface
3821:The Linux Programming Interface
3733:. Addison-Wesley. p. 105.
3604:The Linux Programming Interface
2654:https://wiki.osdev.org/SYSENTER
2548:Comparison of operating systems
2244:Comparison of operating systems
2086:Operating system user interface
1520:Access the device-status table.
747:, while Linux is widespread in
367:Multicomputer operating systems
282:light-weight Linux distribution
189:For hardware functions such as
160:resources, and provides common
6347:Network performance evaluation
5775:Supercomputer operating system
5508:Management Information Systems
4359:. Addison-Wesley. p. 34.
4355:Silberschatz, Abraham (1994).
4334:. Addison-Wesley. p. 32.
4330:Silberschatz, Abraham (1994).
4034:Silberschatz, Abraham (1994).
3954:. Prentice-Hall. p. 200.
3795:. Addison-Wesley. p. 30.
3791:Silberschatz, Abraham (1994).
3770:. Addison-Wesley. p. 31.
3766:Silberschatz, Abraham (1994).
3729:Silberschatz, Abraham (1994).
3704:. Addison-Wesley. p. 32.
3700:Silberschatz, Abraham (1994).
2568:Interruptible operating system
2288:), as of September 2023,
1901:are software specific to each
1700:Process management (computing)
1417:Set the contents of the CPU's
725:standard for operating system
715:Berkeley Software Distribution
484:, and the extra-small systems
375:multiple CPUs share memory. A
256:), as of September 2023,
1:
6718:Multimedia information system
6703:Geographic information system
6693:Enterprise information system
6282:Computer systems organization
4448:Tanenbaum, Andrew S. (1990).
4417:Tanenbaum, Andrew S. (1990).
4383:Tanenbaum, Andrew S. (1990).
4302:Digital Equipment Corporation
4260:Digital Equipment Corporation
4212:Tanenbaum, Andrew S. (1990).
4184:, Eighth Edition, p. 7,
4137:Tanenbaum, Andrew S. (1990).
4003:Tanenbaum, Andrew S. (1990).
3665:Tanenbaum, Andrew S. (1990).
2874:www.acs.eonerc.rwth-aachen.de
2633:Timeline of operating systems
2375:, but still is used on large
1495:(a register) followed by the
1436:of the process control block.
812:(Disk Operating System) from
7077:Computational social science
6665:Theoretical computer science
6478:Software development process
6254:Electronic design automation
6239:Very Large Scale Integration
5750:Just enough operating system
5735:Distributed operating system
1991:, and reducing shared data.
1985:principle of least authority
1802:dynamic random-access memory
1613:in charge. This is called a
1061:— which is a message to the
593:History of operating systems
468:, and the smallest are for
244:in third place (7%). In the
6900:Natural language processing
6688:Information storage systems
5863:User space and kernel space
5041:Richet & Bouaynaya 2023
5029:Richet & Bouaynaya 2023
4479:Stallings, William (2008).
2064:to expunge malicious code.
2027:caused by CPU optimizations
1850:, increase performance via
1661:
1467:to the next process in the
455:are designed to be used in
406:remote direct memory access
7212:
6816:Human–computer interaction
6786:Intrusion detection system
6698:Social information systems
6683:Database management system
5770:Real-time operating system
5486:Operating Systems Concepts
5381:; Dahlin, Michael (2014).
4858:Anderson & Dahlin 2014
4831:Anderson & Dahlin 2014
4819:Anderson & Dahlin 2014
4807:Anderson & Dahlin 2014
4795:Anderson & Dahlin 2014
4780:Anderson & Dahlin 2014
4756:Anderson & Dahlin 2014
4744:Anderson & Dahlin 2014
4732:Anderson & Dahlin 2014
4708:Anderson & Dahlin 2014
4696:Anderson & Dahlin 2014
4684:Anderson & Dahlin 2014
4660:Anderson & Dahlin 2014
4636:Anderson & Dahlin 2014
4588:Anderson & Dahlin 2014
4564:Anderson & Dahlin 2014
4552:Anderson & Dahlin 2014
4540:Anderson & Dahlin 2014
4528:Anderson & Dahlin 2014
4504:Anderson & Dahlin 2014
3587:Anderson & Dahlin 2014
3575:Anderson & Dahlin 2014
3551:Anderson & Dahlin 2014
3280:"Build Process - Unikraft"
3225:Anderson & Dahlin 2014
3035:Anderson & Dahlin 2014
3023:Anderson & Dahlin 2014
3011:Anderson & Dahlin 2014
2982:Anderson & Dahlin 2014
2958:Anderson & Dahlin 2014
2946:Anderson & Dahlin 2014
2914:Anderson & Dahlin 2014
2525:. The scheduling includes
2448:
2355:syntax, but also supports
2334:GNU General Public License
2307:
2237:
2150:
2083:
1956:
1775:
1769:
1693:
1641:
1635:
1557:
1390:CPU by hardware such as a
1238:to coordinate the piping.
1230:will then be moved to the
1186:of the receiving process.
983:
908:
796:enabled the production of
617:inputted on media such as
590:
502:real-time operating system
453:Embedded operating systems
396:. Newer systems are often
362:Types of operating systems
7145:
7082:Computational engineering
7057:Computational mathematics
6203:
5966:Multilevel feedback queue
5961:Fixed-priority preemptive
5745:Hobbyist operating system
5740:Embedded operating system
5579:Operating System Concepts
5510:. 10e. McGraw-Hill Irwin.
5456:. Pearson/Prentice Hall.
4454:. Prentice Hall. p.
4423:. Prentice Hall. p.
4389:. Prentice Hall. p.
4218:. Prentice Hall. p.
4143:. Prentice Hall. p.
4009:. Prentice Hall. p.
3975:Kerrisk, Michael (2010).
3950:Bach, Maurice J. (1986).
3884:Kerrisk, Michael (2010).
3847:Kerrisk, Michael (2010).
3819:Kerrisk, Michael (2010).
3671:. Prentice Hall. p.
3602:Kerrisk, Michael (2010).
2618:Operating System Projects
2573:List of operating systems
2487:also became priorities.
2413:and, to a lesser extent,
2361:supporting multiple users
2234:Popular operating systems
2153:Hobbyist operating system
1491:Push the contents of the
1190:is the signal number (in
1143:is the offset number (in
1067:interrupt service routine
911:Kernel (operating system)
457:embedded computer systems
418:distributed shared memory
7092:Computational healthcare
7087:Differentiable computing
7006:Graphics processing unit
6425:Domain-specific language
6294:Computational complexity
6009:General protection fault
5760:Network operating system
5714:User features comparison
5557:(inactive 13 June 2024).
5362:Silberschatz et al. 2018
5350:Silberschatz et al. 2018
5338:Tanenbaum & Bos 2023
5323:Tanenbaum & Bos 2023
5308:Silberschatz et al. 2018
5296:Tanenbaum & Bos 2023
5284:Tanenbaum & Bos 2023
5272:Tanenbaum & Bos 2023
5260:Tanenbaum & Bos 2023
5248:Tanenbaum & Bos 2023
5236:Silberschatz et al. 2018
5198:Silberschatz et al. 2018
5183:Tanenbaum & Bos 2023
5171:Silberschatz et al. 2018
5151:StatCounter Global Stats
5108:Tanenbaum & Bos 2023
5096:Tanenbaum & Bos 2023
5084:Tanenbaum & Bos 2023
5072:Tanenbaum & Bos 2023
5017:Tanenbaum & Bos 2023
5005:Tanenbaum & Bos 2023
4993:Tanenbaum & Bos 2023
4981:Tanenbaum & Bos 2023
4971:, pp. 605, 617–618.
4969:Tanenbaum & Bos 2023
4957:Tanenbaum & Bos 2023
4947:, pp. 668–669, 674.
4945:Tanenbaum & Bos 2023
4933:Tanenbaum & Bos 2023
4921:Tanenbaum & Bos 2023
4906:Tanenbaum & Bos 2023
4894:Tanenbaum & Bos 2023
4882:Tanenbaum & Bos 2023
4870:Tanenbaum & Bos 2023
4843:Tanenbaum & Bos 2023
4768:Tanenbaum & Bos 2023
4720:Tanenbaum & Bos 2023
4672:Tanenbaum & Bos 2023
4648:Tanenbaum & Bos 2023
4624:Silberschatz et al. 2018
4612:Silberschatz et al. 2018
4600:Silberschatz et al. 2018
4576:Silberschatz et al. 2018
4516:Silberschatz et al. 2018
3563:Tanenbaum & Bos 2023
3539:Tanenbaum & Bos 2023
3527:Tanenbaum & Bos 2023
3515:Tanenbaum & Bos 2023
3503:Tanenbaum & Bos 2023
3488:Tanenbaum & Bos 2023
3476:Tanenbaum & Bos 2023
3464:Tanenbaum & Bos 2023
3452:Tanenbaum & Bos 2023
3440:Tanenbaum & Bos 2023
3428:Tanenbaum & Bos 2023
3387:Tanenbaum & Bos 2023
3213:Silberschatz et al. 2018
3201:Silberschatz et al. 2018
3189:Tanenbaum & Bos 2023
3170:Tanenbaum & Bos 2023
3158:Tanenbaum & Bos 2023
3146:Tanenbaum & Bos 2023
3134:Tanenbaum & Bos 2023
3122:Tanenbaum & Bos 2023
3110:Tanenbaum & Bos 2023
3098:Tanenbaum & Bos 2023
3086:Tanenbaum & Bos 2023
3074:Tanenbaum & Bos 2023
3059:Tanenbaum & Bos 2023
3047:Tanenbaum & Bos 2023
2994:Tanenbaum & Bos 2023
2970:Tanenbaum & Bos 2023
2929:Silberschatz et al. 2018
2902:Tanenbaum & Bos 2023
2819:StatCounter Global Stats
2789:StatCounter Global Stats
2608:Network operating system
2417:needing a GUI, such as "
2397:graphical user interface
2105:graphical user interface
1969:denial of service attack
1920:(often implemented as a
1728:cooperative multitasking
1664:§ Memory management
1626:general protection fault
1107:command-line environment
960:by the operating system
832:graphical user interface
783:Graphical user interface
711:University of California
546:library operating system
436:is a group of distinct,
295:) or flash memory (i.e.
201:to an OS function or is
18:Desktop operating system
7067:Computational chemistry
7001:Photograph manipulation
6892:Artificial intelligence
6708:Decision support system
5755:Mobile operating system
4114:UNIX System Programming
4086:UNIX System Programming
4061:UNIX System Programming
3251:10.1145/2557963.2566628
2603:Mobile operating system
2527:preemptive multitasking
2365:preemptive multitasking
1736:preemptive multitasking
1409:to perform a block I/O
1167:operating systems, the
1063:central processing unit
1028:central processing unit
1016:central processing unit
794:large scale integration
412:where a CPU can call a
334:(CPU) time or space in
332:central processing unit
7132:Educational technology
6963:Reinforcement learning
6713:Process control system
6611:Computational geometry
6601:Algorithmic efficiency
6596:Analysis of algorithms
6244:Systems on Chip (SoCs)
5858:Loadable kernel module
5582:(10 ed.). Wiley.
5555:10.54695/sim.28.1.0087
4252:Users Handbook - PDP-7
4168:IBM (September 1968),
3630:Hyde, Randall (1996).
2460:
2439:object-oriented design
2425:, airplane seatbacks,
2332:distributed under the
2322:
2099:command-line interface
2068:advises releasing the
2050:control-flow integrity
1794:
1653:
1615:segmentation violation
1511:interrupt vector table
1149:interrupt vector table
920:
873:(introduced 2002) and
840:command-line interface
789:
775:
768:Command-line interface
677:Around the same time,
658:that had thousands of
636:Fortran Monitor System
606:
410:remote procedure calls
303:Definition and purpose
53:
7102:Electronic publishing
7072:Computational biology
7062:Computational physics
6958:Unsupervised learning
6872:Distributed computing
6748:Information retrieval
6655:Mathematical analysis
6645:Mathematical software
6528:Theory of computation
6493:Software construction
6483:Requirements analysis
6361:Software organization
6289:Computer architecture
6259:Hardware acceleration
6224:Printed circuit board
5926:Process control block
5892:Computer multitasking
5730:Disk operating system
5601:. Pearson Higher Ed.
5490:John Wiley & Sons
5286:, pp. 1021–1022.
3312:. 14 September 2017.
2766:Dhotre, I.A. (2009).
2656:for more information.
2458:
2423:automotive dashboards
2317:
2238:Further information:
2228:OS abstraction layers
2166:single-board computer
2074:security by obscurity
1884:(which are sometimes
1785:
1696:Computer multitasking
1651:
1642:Further information:
1460:to begin the writing.
1427:process control block
1208:reader/writer problem
974:OS/360 and successors
918:
781:
766:
623:programming languages
600:
52:
6862:Concurrent computing
6834:Ubiquitous computing
6806:Application security
6801:Information security
6630:Discrete mathematics
6606:Randomized algorithm
6558:Computability theory
6536:Model of computation
6508:Software maintenance
6503:Software engineering
6465:Software development
6415:Programming language
6410:Programming paradigm
6327:Network architecture
6097:Virtual tape library
5689:Forensic engineering
5098:, pp. 395, 408.
5086:, pp. 396, 402.
4935:, pp. 648, 657.
4821:, pp. 589, 591.
4662:, pp. 517, 530.
4638:, pp. 492, 517.
4554:, pp. 157, 159.
3025:, pp. 7, 9, 13.
2531:access-control lists
2511:Windows Driver Model
1989:privilege separation
1724:thread control block
1676:been allocated yet.
1396:direct memory access
1373:Direct memory access
1367:Interrupt-driven I/O
1310:Interrupt-driven I/O
1295:Direct memory access
1178:to another process.
681:began to be used as
581:instruction pipeline
558:single address space
472:. Examples include
464:run in less than 10
7137:Document management
7127:Operations research
7052:Enterprise software
6968:Multi-task learning
6953:Supervised learning
6675:Information systems
6498:Software deployment
6455:Software repository
6309:Real-time computing
6106:Supporting concepts
6092:Virtual file system
5414:10.1147/rd.255.0471
5385:. Recursive Books.
5262:, pp. 793–794.
5250:, pp. 715–716.
5185:, pp. 713–714.
5173:, pp. 779–780.
5055:, pp. 130–131.
4983:, pp. 681–682.
4959:, pp. 679–680.
4908:, pp. 609–610.
4872:, pp. 605–606.
4845:, pp. 385–386.
4833:, pp. 591–592.
4734:, pp. 502–504.
4722:, pp. 274–275.
4710:, pp. 496–497.
4686:, pp. 492–493.
4650:, pp. 259–260.
4614:, pp. 162–163.
3638:. No Starch Press.
2495:kernel-mode objects
2347:. It is written in
2170:6502 microprocessor
2066:Andrew S. Tanenbaum
2054:access restrictions
2038:formal verification
1778:Virtual file system
1588:memory segmentation
1458:machine instruction
1236:software interrupts
1161:software interrupts
1122:software interrupts
1111:interrupt character
1089:machine instruction
937:unrestricted powers
865:On mobile devices,
838:than the text-only
459:, whether they are
428:Distributed systems
416:on another CPU, or
270:Linux distributions
6920:Search methodology
6867:Parallel computing
6824:Interaction design
6733:Computing platform
6660:Numerical analysis
6650:Information theory
6435:Software framework
6398:Software notations
6337:Network components
6234:Integrated circuit
6029:Segmentation fault
5877:Process management
4304:. pp. 19–20.
3577:, pp. 41, 45.
2751:Stallings (2005).
2701:SCSI RDMA Protocol
2473:enterprise servers
2461:
2383:are composed of a
2323:
2280:sector (including
2205:software platforms
1795:
1753:, but share code,
1654:
1383:solid-state drives
1329:. You can help by
1271:Hardware interrupt
1184:process identifier
1059:hardware interrupt
1049:Software interrupt
994:(also known as an
929:malicious software
921:
860:enterprise systems
800:(initially called
798:personal computers
790:
776:
629:in the mid-1950s,
607:
565:protection domains
461:internet of things
434:distributed system
385:has its own memory
248:sector (including
174:operating systems
67:Process management
54:
7196:Operating systems
7183:
7182:
7112:Electronic voting
7042:Quantum Computing
7035:Applied computing
7021:Image compression
6791:Hardware security
6781:Security services
6738:Digital marketing
6518:Open-source model
6430:Modeling language
6342:Network scheduler
6163:
6162:
6019:Memory protection
5990:Memory management
5984:
5983:
5976:Shortest job next
5871:
5870:
5670:Operating systems
5624:Operating Systems
5608:978-1-292-72789-9
5589:978-1-119-32091-3
5529:978-1-84919-609-3
5499:978-0-470-12872-5
5473:Operating Systems
5463:978-0-13-092641-8
5452:Operating Systems
5440:978-3-319-65948-0
5392:978-0-9856735-2-9
5043:, pp. 92–93.
4490:978-81-203-2962-1
4465:978-0-13-854662-5
4434:978-0-13-854662-5
4400:978-0-13-854662-5
4366:978-0-201-50480-4
4341:978-0-201-50480-4
4262:. 1965. pp.
4229:978-0-13-854662-5
4154:978-0-13-854662-5
4045:978-0-201-50480-4
4020:978-0-13-854662-5
3986:978-1-59327-220-3
3917:Intel Corporation
3895:978-1-59327-220-3
3858:978-1-59327-220-3
3830:978-1-59327-220-3
3802:978-0-201-50480-4
3777:978-0-201-50480-4
3740:978-0-201-50480-4
3711:978-0-201-50480-4
3682:978-0-13-854662-5
3613:978-1-59327-220-3
3589:, pp. 52–53.
3553:, pp. 39–40.
3541:, pp. 19–20.
3490:, pp. 15–16.
3466:, pp. 14–15.
3454:, pp. 13–14.
3442:, pp. 11–12.
3160:, pp. 37–38.
3037:, pp. 12–13.
2768:Operating Systems
2665:Examples include
2553:Crash (computing)
2491:Windows Executive
2481:energy efficiency
2451:Microsoft Windows
2445:Microsoft Windows
2321:of a Linux system
2254:Microsoft Windows
2250:personal computer
1996:monolithic kernel
1959:Computer security
1830:solid-state drive
1580:Memory protection
1560:Memory management
1554:Memory management
1485:interrupt request
1347:
1346:
1290:or busy waiting.
1133:assembly language
1024:interrupt handler
951:Program execution
792:The invention of
656:assembly language
309:layer of software
222:Microsoft Windows
218:personal computer
195:memory allocation
166:computer programs
154:computer hardware
138:
137:
77:Memory management
36:Operating systems
16:(Redirected from
7203:
7173:
7172:
7163:
7162:
7153:
7152:
6973:Cross-validation
6945:Machine learning
6829:Social computing
6796:Network security
6591:Algorithm design
6513:Programming team
6473:Control variable
6450:Software library
6388:Software quality
6383:Operating system
6332:Network protocol
6197:Computer science
6190:
6183:
6176:
6167:
6118:Computer network
5882:
5790:
5663:
5656:
5649:
5640:
5612:
5593:
5572:
5566:
5558:
5533:
5503:
5480:
5467:
5455:
5444:
5425:
5396:
5379:Anderson, Thomas
5365:
5359:
5353:
5347:
5341:
5335:
5326:
5320:
5311:
5305:
5299:
5293:
5287:
5281:
5275:
5269:
5263:
5257:
5251:
5245:
5239:
5233:
5227:
5226:
5224:
5222:
5207:
5201:
5195:
5186:
5180:
5174:
5168:
5162:
5161:
5159:
5157:
5143:
5137:
5136:
5134:
5132:
5117:
5111:
5105:
5099:
5093:
5087:
5081:
5075:
5069:
5063:
5062:
5050:
5044:
5038:
5032:
5026:
5020:
5014:
5008:
5002:
4996:
4990:
4984:
4978:
4972:
4966:
4960:
4954:
4948:
4942:
4936:
4930:
4924:
4918:
4909:
4903:
4897:
4891:
4885:
4879:
4873:
4867:
4861:
4855:
4846:
4840:
4834:
4828:
4822:
4816:
4810:
4804:
4798:
4792:
4783:
4777:
4771:
4765:
4759:
4753:
4747:
4741:
4735:
4729:
4723:
4717:
4711:
4705:
4699:
4693:
4687:
4681:
4675:
4669:
4663:
4657:
4651:
4645:
4639:
4633:
4627:
4621:
4615:
4609:
4603:
4597:
4591:
4585:
4579:
4573:
4567:
4561:
4555:
4549:
4543:
4537:
4531:
4525:
4519:
4513:
4507:
4501:
4495:
4494:
4476:
4470:
4469:
4445:
4439:
4438:
4414:
4405:
4404:
4380:
4371:
4370:
4352:
4346:
4345:
4327:
4321:
4320:
4318:
4316:
4310:
4299:
4289:
4283:
4282:
4280:
4278:
4272:
4257:
4248:
4240:
4234:
4233:
4209:
4200:
4199:
4198:
4196:
4190:
4183:
4174:
4165:
4159:
4158:
4134:
4128:
4127:
4109:
4100:
4099:
4081:
4075:
4074:
4056:
4050:
4049:
4031:
4025:
4024:
4000:
3991:
3990:
3972:
3966:
3965:
3947:
3936:
3935:
3933:
3931:
3925:
3914:
3906:
3900:
3899:
3881:
3866:
3865:
3844:
3838:
3837:
3816:
3810:
3809:
3788:
3782:
3781:
3763:
3748:
3747:
3726:
3720:
3719:
3697:
3691:
3690:
3662:
3656:
3655:
3649:
3647:
3627:
3621:
3620:
3599:
3590:
3584:
3578:
3572:
3566:
3560:
3554:
3548:
3542:
3536:
3530:
3524:
3518:
3512:
3506:
3500:
3491:
3485:
3479:
3473:
3467:
3461:
3455:
3449:
3443:
3437:
3431:
3425:
3419:
3418:
3416:
3414:
3396:
3390:
3384:
3375:
3374:
3370:
3355:
3353:
3332:
3326:
3325:
3323:
3321:
3302:
3296:
3295:
3293:
3291:
3276:
3270:
3269:
3267:
3265:
3234:
3228:
3222:
3216:
3210:
3204:
3198:
3192:
3186:
3173:
3167:
3161:
3155:
3149:
3143:
3137:
3131:
3125:
3119:
3113:
3107:
3101:
3095:
3089:
3083:
3077:
3071:
3062:
3056:
3050:
3044:
3038:
3032:
3026:
3020:
3014:
3008:
2997:
2991:
2985:
2979:
2973:
2967:
2961:
2960:, pp. 9–10.
2955:
2949:
2943:
2932:
2926:
2917:
2911:
2905:
2899:
2890:
2889:
2887:
2885:
2866:
2860:
2859:
2857:
2855:
2836:
2830:
2829:
2827:
2825:
2811:
2805:
2804:
2802:
2800:
2781:
2772:
2771:
2763:
2757:
2756:
2748:
2732:
2710:
2704:
2693:
2687:
2684:
2678:
2663:
2657:
2650:
2623:System Commander
2535:integrity levels
2483:and support for
2415:embedded systems
2393:system utilities
2389:system libraries
2256:has the highest
2217:system libraries
2121:tablet computers
1977:virtual machines
1973:security domains
1667:
1403:computer program
1379:hard disk drives
1377:Devices such as
1342:
1339:
1321:
1314:
1229:
1225:
1221:
1197:
1189:
1181:
1170:
1169:kill(pid,signum)
1142:
1138:
1093:division by zero
1082:computer program
1030:(CPU) to have a
1018:(CPU) to have a
852:legal settlement
774:operating system
664:multiprogramming
642:. In the 1960s,
573:context switches
381:cluster computer
191:input and output
142:operating system
130:
123:
116:
45:
32:
21:
7211:
7210:
7206:
7205:
7204:
7202:
7201:
7200:
7186:
7185:
7184:
7179:
7170:
7141:
7122:Word processing
7030:
7016:Virtual reality
6977:
6939:
6910:Computer vision
6886:
6882:Multiprocessing
6848:
6810:
6776:Security hacker
6752:
6728:Digital library
6669:
6620:Mathematics of
6615:
6577:
6553:Automata theory
6548:Formal language
6522:
6488:Software design
6459:
6392:
6378:Virtual machine
6356:
6352:Network service
6313:
6304:Embedded system
6277:
6210:
6199:
6194:
6164:
6159:
6101:
6062:Defragmentation
6047:
6038:
6024:Protection ring
5993:
5980:
5952:
5945:
5867:
5841:
5779:
5718:
5672:
5667:
5633:Multics History
5620:
5615:
5609:
5596:
5590:
5575:
5559:
5536:
5530:
5513:
5500:
5483:
5470:
5464:
5447:
5441:
5428:
5399:
5393:
5377:
5373:
5371:Further reading
5368:
5360:
5356:
5348:
5344:
5340:, p. 1036.
5336:
5329:
5325:, p. 1035.
5321:
5314:
5306:
5302:
5294:
5290:
5282:
5278:
5270:
5266:
5258:
5254:
5246:
5242:
5234:
5230:
5220:
5218:
5209:
5208:
5204:
5196:
5189:
5181:
5177:
5169:
5165:
5155:
5153:
5145:
5144:
5140:
5130:
5128:
5119:
5118:
5114:
5106:
5102:
5094:
5090:
5082:
5078:
5070:
5066:
5056:
5051:
5047:
5039:
5035:
5027:
5023:
5015:
5011:
5003:
4999:
4991:
4987:
4979:
4975:
4967:
4963:
4955:
4951:
4943:
4939:
4931:
4927:
4919:
4912:
4904:
4900:
4892:
4888:
4880:
4876:
4868:
4864:
4856:
4849:
4841:
4837:
4829:
4825:
4817:
4813:
4805:
4801:
4793:
4786:
4778:
4774:
4766:
4762:
4754:
4750:
4742:
4738:
4730:
4726:
4718:
4714:
4706:
4702:
4694:
4690:
4682:
4678:
4670:
4666:
4658:
4654:
4646:
4642:
4634:
4630:
4622:
4618:
4610:
4606:
4598:
4594:
4586:
4582:
4574:
4570:
4562:
4558:
4550:
4546:
4538:
4534:
4526:
4522:
4514:
4510:
4502:
4498:
4491:
4478:
4477:
4473:
4466:
4447:
4446:
4442:
4435:
4416:
4415:
4408:
4401:
4382:
4381:
4374:
4367:
4354:
4353:
4349:
4342:
4329:
4328:
4324:
4314:
4312:
4308:
4297:
4291:
4290:
4286:
4276:
4274:
4270:
4255:
4246:
4242:
4241:
4237:
4230:
4211:
4210:
4203:
4194:
4192:
4188:
4181:
4172:
4167:
4166:
4162:
4155:
4136:
4135:
4131:
4124:
4111:
4110:
4103:
4096:
4083:
4082:
4078:
4071:
4058:
4057:
4053:
4046:
4033:
4032:
4028:
4021:
4002:
4001:
3994:
3987:
3974:
3973:
3969:
3962:
3949:
3948:
3939:
3929:
3927:
3923:
3912:
3908:
3907:
3903:
3896:
3883:
3882:
3869:
3859:
3846:
3845:
3841:
3831:
3818:
3817:
3813:
3803:
3790:
3789:
3785:
3778:
3765:
3764:
3751:
3741:
3728:
3727:
3723:
3712:
3699:
3698:
3694:
3683:
3664:
3663:
3659:
3645:
3643:
3629:
3628:
3624:
3614:
3601:
3600:
3593:
3585:
3581:
3573:
3569:
3561:
3557:
3549:
3545:
3537:
3533:
3525:
3521:
3513:
3509:
3501:
3494:
3486:
3482:
3474:
3470:
3462:
3458:
3450:
3446:
3438:
3434:
3426:
3422:
3412:
3410:
3398:
3397:
3393:
3385:
3378:
3368:
3351:
3349:
3334:
3333:
3329:
3319:
3317:
3304:
3303:
3299:
3289:
3287:
3278:
3277:
3273:
3263:
3261:
3236:
3235:
3231:
3223:
3219:
3215:, pp. 705.
3211:
3207:
3203:, pp. 701.
3199:
3195:
3187:
3176:
3168:
3164:
3156:
3152:
3144:
3140:
3132:
3128:
3120:
3116:
3108:
3104:
3096:
3092:
3084:
3080:
3072:
3065:
3057:
3053:
3045:
3041:
3033:
3029:
3021:
3017:
3009:
3000:
2992:
2988:
2980:
2976:
2972:, pp. 6–7.
2968:
2964:
2956:
2952:
2944:
2935:
2927:
2920:
2912:
2908:
2900:
2893:
2883:
2881:
2868:
2867:
2863:
2853:
2851:
2844:www.oreilly.com
2838:
2837:
2833:
2823:
2821:
2813:
2812:
2808:
2798:
2796:
2783:
2782:
2775:
2765:
2764:
2760:
2750:
2749:
2745:
2741:
2736:
2735:
2711:
2707:
2694:
2690:
2685:
2681:
2664:
2660:
2651:
2647:
2642:
2637:
2593:Microcontroller
2543:
2485:dynamic devices
2453:
2447:
2431:home appliances
2427:medical devices
2312:
2306:
2246:
2236:
2189:
2155:
2149:
2088:
2082:
2023:bounds checking
2019:buffer overflow
1961:
1955:
1889:of memory in a
1780:
1774:
1768:
1743:program counter
1702:
1692:
1646:
1640:
1634:
1607:supervisor mode
1562:
1556:
1497:status register
1493:program counter
1448:device register
1423:program counter
1421:(including the
1375:
1343:
1337:
1334:
1327:needs expansion
1312:
1307:
1273:
1227:
1223:
1219:
1195:
1187:
1179:
1168:
1157:
1147:format) to the
1140:
1136:
1109:, pressing the
1051:
988:
982:
953:
913:
907:
895:
850:) that a large
761:
691:cloud computing
595:
589:
542:
534:virtual machine
526:
498:
450:
430:
389:cloud computing
373:multiprocessors
369:
364:
321:system programs
305:
150:system software
134:
59:Common features
51:
43:
28:
23:
22:
15:
12:
11:
5:
7209:
7207:
7199:
7198:
7188:
7187:
7181:
7180:
7178:
7177:
7167:
7157:
7146:
7143:
7142:
7140:
7139:
7134:
7129:
7124:
7119:
7114:
7109:
7104:
7099:
7094:
7089:
7084:
7079:
7074:
7069:
7064:
7059:
7054:
7049:
7044:
7038:
7036:
7032:
7031:
7029:
7028:
7026:Solid modeling
7023:
7018:
7013:
7008:
7003:
6998:
6993:
6987:
6985:
6979:
6978:
6976:
6975:
6970:
6965:
6960:
6955:
6949:
6947:
6941:
6940:
6938:
6937:
6932:
6927:
6925:Control method
6922:
6917:
6912:
6907:
6902:
6896:
6894:
6888:
6887:
6885:
6884:
6879:
6877:Multithreading
6874:
6869:
6864:
6858:
6856:
6850:
6849:
6847:
6846:
6841:
6836:
6831:
6826:
6820:
6818:
6812:
6811:
6809:
6808:
6803:
6798:
6793:
6788:
6783:
6778:
6773:
6771:Formal methods
6768:
6762:
6760:
6754:
6753:
6751:
6750:
6745:
6743:World Wide Web
6740:
6735:
6730:
6725:
6720:
6715:
6710:
6705:
6700:
6695:
6690:
6685:
6679:
6677:
6671:
6670:
6668:
6667:
6662:
6657:
6652:
6647:
6642:
6637:
6632:
6626:
6624:
6617:
6616:
6614:
6613:
6608:
6603:
6598:
6593:
6587:
6585:
6579:
6578:
6576:
6575:
6570:
6565:
6560:
6555:
6550:
6545:
6544:
6543:
6532:
6530:
6524:
6523:
6521:
6520:
6515:
6510:
6505:
6500:
6495:
6490:
6485:
6480:
6475:
6469:
6467:
6461:
6460:
6458:
6457:
6452:
6447:
6442:
6437:
6432:
6427:
6422:
6417:
6412:
6406:
6404:
6394:
6393:
6391:
6390:
6385:
6380:
6375:
6370:
6364:
6362:
6358:
6357:
6355:
6354:
6349:
6344:
6339:
6334:
6329:
6323:
6321:
6315:
6314:
6312:
6311:
6306:
6301:
6296:
6291:
6285:
6283:
6279:
6278:
6276:
6275:
6266:
6261:
6256:
6251:
6246:
6241:
6236:
6231:
6226:
6220:
6218:
6212:
6211:
6204:
6201:
6200:
6195:
6193:
6192:
6185:
6178:
6170:
6161:
6160:
6158:
6157:
6152:
6151:
6150:
6148:User interface
6145:
6135:
6130:
6125:
6120:
6115:
6109:
6107:
6103:
6102:
6100:
6099:
6094:
6089:
6084:
6079:
6074:
6072:File attribute
6069:
6064:
6059:
6053:
6051:
6040:
6039:
6037:
6036:
6034:Virtual memory
6031:
6026:
6021:
6016:
6011:
6006:
6000:
5998:
5986:
5985:
5982:
5981:
5979:
5978:
5973:
5968:
5963:
5957:
5955:
5947:
5946:
5944:
5943:
5938:
5933:
5928:
5923:
5918:
5913:
5908:
5906:Context switch
5903:
5888:
5886:
5879:
5873:
5872:
5869:
5868:
5866:
5865:
5860:
5855:
5849:
5847:
5843:
5842:
5840:
5839:
5834:
5829:
5824:
5819:
5814:
5809:
5804:
5798:
5796:
5787:
5781:
5780:
5778:
5777:
5772:
5767:
5762:
5757:
5752:
5747:
5742:
5737:
5732:
5726:
5724:
5720:
5719:
5717:
5716:
5711:
5706:
5701:
5696:
5691:
5686:
5680:
5678:
5674:
5673:
5668:
5666:
5665:
5658:
5651:
5643:
5637:
5636:
5630:
5619:
5618:External links
5616:
5614:
5613:
5607:
5594:
5588:
5573:
5534:
5528:
5511:
5504:
5498:
5481:
5468:
5462:
5445:
5439:
5426:
5408:(5): 471–482.
5397:
5391:
5374:
5372:
5369:
5367:
5366:
5364:, p. 827.
5354:
5352:, p. 821.
5342:
5327:
5312:
5310:, p. 826.
5300:
5298:, p. 871.
5288:
5276:
5274:, p. 793.
5264:
5252:
5240:
5238:, p. 781.
5228:
5202:
5200:, p. 780.
5187:
5175:
5163:
5138:
5112:
5110:, p. 402.
5100:
5088:
5076:
5074:, p. 611.
5064:
5045:
5033:
5021:
5019:, p. 689.
5009:
5007:, p. 685.
4997:
4995:, p. 683.
4985:
4973:
4961:
4949:
4937:
4925:
4923:, p. 612.
4910:
4898:
4896:, p. 609.
4886:
4884:, p. 608.
4874:
4862:
4860:, p. 592.
4847:
4835:
4823:
4811:
4809:, p. 547.
4799:
4797:, p. 546.
4784:
4782:, p. 545.
4772:
4770:, p. 359.
4760:
4758:, p. 508.
4748:
4746:, p. 507.
4736:
4724:
4712:
4700:
4698:, p. 496.
4688:
4676:
4674:, p. 260.
4664:
4652:
4640:
4628:
4626:, p. 164.
4616:
4604:
4602:, p. 162.
4592:
4590:, p. 183.
4580:
4578:, p. 160.
4568:
4566:, p. 139.
4556:
4544:
4542:, p. 131.
4532:
4530:, p. 130.
4520:
4518:, p. 159.
4508:
4506:, p. 129.
4496:
4489:
4471:
4464:
4440:
4433:
4406:
4399:
4372:
4365:
4347:
4340:
4322:
4284:
4235:
4228:
4201:
4170:"Main Storage"
4160:
4153:
4129:
4122:
4101:
4094:
4076:
4069:
4051:
4044:
4026:
4019:
3992:
3985:
3967:
3960:
3937:
3901:
3894:
3867:
3857:
3839:
3829:
3811:
3801:
3783:
3776:
3749:
3739:
3721:
3710:
3692:
3681:
3657:
3622:
3612:
3591:
3579:
3567:
3555:
3543:
3531:
3519:
3507:
3492:
3480:
3468:
3456:
3444:
3432:
3420:
3391:
3376:
3327:
3297:
3271:
3229:
3217:
3205:
3193:
3174:
3162:
3150:
3148:, p. 581.
3138:
3136:, p. 579.
3126:
3124:, p. 571.
3114:
3112:, p. 569.
3102:
3100:, p. 563.
3090:
3088:, p. 562.
3078:
3076:, p. 565.
3063:
3061:, p. 558.
3051:
3049:, p. 557.
3039:
3027:
3015:
2998:
2986:
2974:
2962:
2950:
2933:
2918:
2906:
2891:
2861:
2831:
2806:
2773:
2758:
2742:
2740:
2737:
2734:
2733:
2731:
2730:
2719:
2716:
2705:
2688:
2679:
2658:
2644:
2643:
2641:
2638:
2636:
2635:
2630:
2625:
2620:
2615:
2610:
2605:
2600:
2595:
2590:
2585:
2580:
2575:
2570:
2565:
2560:
2555:
2550:
2544:
2542:
2539:
2507:device drivers
2503:virtual memory
2449:Main article:
2446:
2443:
2395:. Linux has a
2377:multiprocessor
2363:and employing
2308:Main article:
2305:
2302:
2260:, around 68%.
2235:
2232:
2188:
2185:
2151:Main article:
2148:
2145:
2113:
2112:
2102:
2092:user interface
2084:Main article:
2081:
2080:User interface
2078:
1981:attack surface
1957:Main article:
1954:
1951:
1899:Device drivers
1876:subdirectories
1872:root directory
1870:begins at the
1822:magnetic disks
1820:consisting of
1770:Main article:
1767:
1764:
1720:context switch
1691:
1688:
1638:Virtual memory
1636:Main article:
1633:
1632:Virtual memory
1630:
1609:, placing the
1603:protected mode
1558:Main article:
1555:
1552:
1548:
1547:
1544:
1541:
1530:
1529:
1528:
1527:
1524:
1521:
1515:
1514:
1507:
1504:
1473:
1472:
1465:context switch
1461:
1454:
1451:
1444:
1437:
1434:memory address
1430:
1374:
1371:
1345:
1344:
1324:
1322:
1311:
1308:
1306:
1303:
1272:
1269:
1268:
1267:
1264:
1261:
1258:
1255:
1252:
1249:
1156:
1153:
1078:context switch
1050:
1047:
1046:
1045:
1042:
1039:
1032:context switch
984:Main article:
981:
978:
972:facilities of
952:
949:
909:Main article:
906:
903:
894:
891:
802:microcomputers
760:
759:Microcomputers
757:
591:Main article:
588:
585:
541:
538:
525:
522:
497:
494:
474:Embedded Linux
449:
446:
429:
426:
422:virtualization
368:
365:
363:
360:
359:
358:
354:
351:virtual memory
347:Virtualization
339:
304:
301:
211:supercomputers
180:processor time
176:schedule tasks
136:
135:
133:
132:
125:
118:
110:
107:
106:
105:
104:
99:
94:
89:
87:Device drivers
84:
79:
74:
69:
61:
60:
56:
55:
39:
38:
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
7208:
7197:
7194:
7193:
7191:
7176:
7168:
7166:
7158:
7156:
7148:
7147:
7144:
7138:
7135:
7133:
7130:
7128:
7125:
7123:
7120:
7118:
7115:
7113:
7110:
7108:
7105:
7103:
7100:
7098:
7095:
7093:
7090:
7088:
7085:
7083:
7080:
7078:
7075:
7073:
7070:
7068:
7065:
7063:
7060:
7058:
7055:
7053:
7050:
7048:
7045:
7043:
7040:
7039:
7037:
7033:
7027:
7024:
7022:
7019:
7017:
7014:
7012:
7011:Mixed reality
7009:
7007:
7004:
7002:
6999:
6997:
6994:
6992:
6989:
6988:
6986:
6984:
6980:
6974:
6971:
6969:
6966:
6964:
6961:
6959:
6956:
6954:
6951:
6950:
6948:
6946:
6942:
6936:
6933:
6931:
6928:
6926:
6923:
6921:
6918:
6916:
6913:
6911:
6908:
6906:
6903:
6901:
6898:
6897:
6895:
6893:
6889:
6883:
6880:
6878:
6875:
6873:
6870:
6868:
6865:
6863:
6860:
6859:
6857:
6855:
6851:
6845:
6844:Accessibility
6842:
6840:
6839:Visualization
6837:
6835:
6832:
6830:
6827:
6825:
6822:
6821:
6819:
6817:
6813:
6807:
6804:
6802:
6799:
6797:
6794:
6792:
6789:
6787:
6784:
6782:
6779:
6777:
6774:
6772:
6769:
6767:
6764:
6763:
6761:
6759:
6755:
6749:
6746:
6744:
6741:
6739:
6736:
6734:
6731:
6729:
6726:
6724:
6721:
6719:
6716:
6714:
6711:
6709:
6706:
6704:
6701:
6699:
6696:
6694:
6691:
6689:
6686:
6684:
6681:
6680:
6678:
6676:
6672:
6666:
6663:
6661:
6658:
6656:
6653:
6651:
6648:
6646:
6643:
6641:
6638:
6636:
6633:
6631:
6628:
6627:
6625:
6623:
6618:
6612:
6609:
6607:
6604:
6602:
6599:
6597:
6594:
6592:
6589:
6588:
6586:
6584:
6580:
6574:
6571:
6569:
6566:
6564:
6561:
6559:
6556:
6554:
6551:
6549:
6546:
6542:
6539:
6538:
6537:
6534:
6533:
6531:
6529:
6525:
6519:
6516:
6514:
6511:
6509:
6506:
6504:
6501:
6499:
6496:
6494:
6491:
6489:
6486:
6484:
6481:
6479:
6476:
6474:
6471:
6470:
6468:
6466:
6462:
6456:
6453:
6451:
6448:
6446:
6443:
6441:
6438:
6436:
6433:
6431:
6428:
6426:
6423:
6421:
6418:
6416:
6413:
6411:
6408:
6407:
6405:
6403:
6399:
6395:
6389:
6386:
6384:
6381:
6379:
6376:
6374:
6371:
6369:
6366:
6365:
6363:
6359:
6353:
6350:
6348:
6345:
6343:
6340:
6338:
6335:
6333:
6330:
6328:
6325:
6324:
6322:
6320:
6316:
6310:
6307:
6305:
6302:
6300:
6299:Dependability
6297:
6295:
6292:
6290:
6287:
6286:
6284:
6280:
6274:
6270:
6267:
6265:
6262:
6260:
6257:
6255:
6252:
6250:
6247:
6245:
6242:
6240:
6237:
6235:
6232:
6230:
6227:
6225:
6222:
6221:
6219:
6217:
6213:
6208:
6202:
6198:
6191:
6186:
6184:
6179:
6177:
6172:
6171:
6168:
6156:
6153:
6149:
6146:
6144:
6141:
6140:
6139:
6136:
6134:
6131:
6129:
6126:
6124:
6121:
6119:
6116:
6114:
6111:
6110:
6108:
6104:
6098:
6095:
6093:
6090:
6088:
6085:
6083:
6080:
6078:
6075:
6073:
6070:
6068:
6065:
6063:
6060:
6058:
6055:
6054:
6052:
6050:
6045:
6041:
6035:
6032:
6030:
6027:
6025:
6022:
6020:
6017:
6015:
6014:Memory paging
6012:
6010:
6007:
6005:
6002:
6001:
5999:
5996:
5991:
5987:
5977:
5974:
5972:
5969:
5967:
5964:
5962:
5959:
5958:
5956:
5954:
5948:
5942:
5939:
5937:
5934:
5932:
5929:
5927:
5924:
5922:
5919:
5917:
5914:
5912:
5909:
5907:
5904:
5901:
5897:
5893:
5890:
5889:
5887:
5883:
5880:
5878:
5874:
5864:
5861:
5859:
5856:
5854:
5853:Device driver
5851:
5850:
5848:
5844:
5838:
5835:
5833:
5830:
5828:
5825:
5823:
5820:
5818:
5815:
5813:
5810:
5808:
5805:
5803:
5800:
5799:
5797:
5795:
5794:Architectures
5791:
5788:
5786:
5782:
5776:
5773:
5771:
5768:
5766:
5763:
5761:
5758:
5756:
5753:
5751:
5748:
5746:
5743:
5741:
5738:
5736:
5733:
5731:
5728:
5727:
5725:
5721:
5715:
5712:
5710:
5707:
5705:
5702:
5700:
5697:
5695:
5692:
5690:
5687:
5685:
5682:
5681:
5679:
5675:
5671:
5664:
5659:
5657:
5652:
5650:
5645:
5644:
5641:
5634:
5631:
5629:
5625:
5622:
5621:
5617:
5610:
5604:
5600:
5595:
5591:
5585:
5581:
5580:
5574:
5570:
5564:
5556:
5552:
5549:(1): 87–114.
5548:
5544:
5540:
5535:
5531:
5525:
5521:
5517:
5512:
5509:
5505:
5501:
5495:
5491:
5487:
5482:
5478:
5477:Prentice Hall
5474:
5469:
5465:
5459:
5454:
5453:
5446:
5442:
5436:
5432:
5427:
5423:
5419:
5415:
5411:
5407:
5403:
5398:
5394:
5388:
5384:
5380:
5376:
5375:
5370:
5363:
5358:
5355:
5351:
5346:
5343:
5339:
5334:
5332:
5328:
5324:
5319:
5317:
5313:
5309:
5304:
5301:
5297:
5292:
5289:
5285:
5280:
5277:
5273:
5268:
5265:
5261:
5256:
5253:
5249:
5244:
5241:
5237:
5232:
5229:
5217:
5213:
5206:
5203:
5199:
5194:
5192:
5188:
5184:
5179:
5176:
5172:
5167:
5164:
5152:
5148:
5142:
5139:
5127:
5123:
5116:
5113:
5109:
5104:
5101:
5097:
5092:
5089:
5085:
5080:
5077:
5073:
5068:
5065:
5060:
5054:
5049:
5046:
5042:
5037:
5034:
5031:, p. 92.
5030:
5025:
5022:
5018:
5013:
5010:
5006:
5001:
4998:
4994:
4989:
4986:
4982:
4977:
4974:
4970:
4965:
4962:
4958:
4953:
4950:
4946:
4941:
4938:
4934:
4929:
4926:
4922:
4917:
4915:
4911:
4907:
4902:
4899:
4895:
4890:
4887:
4883:
4878:
4875:
4871:
4866:
4863:
4859:
4854:
4852:
4848:
4844:
4839:
4836:
4832:
4827:
4824:
4820:
4815:
4812:
4808:
4803:
4800:
4796:
4791:
4789:
4785:
4781:
4776:
4773:
4769:
4764:
4761:
4757:
4752:
4749:
4745:
4740:
4737:
4733:
4728:
4725:
4721:
4716:
4713:
4709:
4704:
4701:
4697:
4692:
4689:
4685:
4680:
4677:
4673:
4668:
4665:
4661:
4656:
4653:
4649:
4644:
4641:
4637:
4632:
4629:
4625:
4620:
4617:
4613:
4608:
4605:
4601:
4596:
4593:
4589:
4584:
4581:
4577:
4572:
4569:
4565:
4560:
4557:
4553:
4548:
4545:
4541:
4536:
4533:
4529:
4524:
4521:
4517:
4512:
4509:
4505:
4500:
4497:
4492:
4486:
4482:
4475:
4472:
4467:
4461:
4457:
4453:
4452:
4444:
4441:
4436:
4430:
4426:
4422:
4421:
4413:
4411:
4407:
4402:
4396:
4392:
4388:
4387:
4379:
4377:
4373:
4368:
4362:
4358:
4351:
4348:
4343:
4337:
4333:
4326:
4323:
4307:
4303:
4296:
4295:
4288:
4285:
4269:
4265:
4261:
4254:
4253:
4245:
4239:
4236:
4231:
4225:
4221:
4217:
4216:
4208:
4206:
4202:
4187:
4180:
4179:
4171:
4164:
4161:
4156:
4150:
4146:
4142:
4141:
4133:
4130:
4125:
4123:0-201-12919-1
4119:
4115:
4108:
4106:
4102:
4097:
4095:0-201-12919-1
4091:
4087:
4080:
4077:
4072:
4070:0-201-12919-1
4066:
4062:
4055:
4052:
4047:
4041:
4037:
4030:
4027:
4022:
4016:
4012:
4008:
4007:
3999:
3997:
3993:
3988:
3982:
3978:
3971:
3968:
3963:
3961:0-13-201799-7
3957:
3953:
3946:
3944:
3942:
3938:
3922:
3918:
3911:
3905:
3902:
3897:
3891:
3887:
3880:
3878:
3876:
3874:
3872:
3868:
3864:
3860:
3854:
3850:
3843:
3840:
3836:
3832:
3826:
3822:
3815:
3812:
3808:
3804:
3798:
3794:
3787:
3784:
3779:
3773:
3769:
3762:
3760:
3758:
3756:
3754:
3750:
3746:
3742:
3736:
3732:
3725:
3722:
3718:
3713:
3707:
3703:
3696:
3693:
3689:
3684:
3678:
3674:
3670:
3669:
3661:
3658:
3654:
3641:
3637:
3633:
3626:
3623:
3619:
3615:
3609:
3605:
3598:
3596:
3592:
3588:
3583:
3580:
3576:
3571:
3568:
3564:
3559:
3556:
3552:
3547:
3544:
3540:
3535:
3532:
3529:, p. 18.
3528:
3523:
3520:
3517:, p. 17.
3516:
3511:
3508:
3505:, p. 16.
3504:
3499:
3497:
3493:
3489:
3484:
3481:
3478:, p. 15.
3477:
3472:
3469:
3465:
3460:
3457:
3453:
3448:
3445:
3441:
3436:
3433:
3430:, p. 10.
3429:
3424:
3421:
3408:
3404:
3403:
3395:
3392:
3388:
3383:
3381:
3377:
3373:
3365:
3361:
3356:. p. 2:
3348:
3344:
3340:
3339:
3331:
3328:
3315:
3311:
3307:
3301:
3298:
3285:
3281:
3275:
3272:
3260:
3256:
3252:
3248:
3244:
3240:
3233:
3230:
3227:, p. 12.
3226:
3221:
3218:
3214:
3209:
3206:
3202:
3197:
3194:
3191:, p. 38.
3190:
3185:
3183:
3181:
3179:
3175:
3172:, p. 39.
3171:
3166:
3163:
3159:
3154:
3151:
3147:
3142:
3139:
3135:
3130:
3127:
3123:
3118:
3115:
3111:
3106:
3103:
3099:
3094:
3091:
3087:
3082:
3079:
3075:
3070:
3068:
3064:
3060:
3055:
3052:
3048:
3043:
3040:
3036:
3031:
3028:
3024:
3019:
3016:
3013:, p. 11.
3012:
3007:
3005:
3003:
2999:
2995:
2990:
2987:
2984:, p. 10.
2983:
2978:
2975:
2971:
2966:
2963:
2959:
2954:
2951:
2947:
2942:
2940:
2938:
2934:
2930:
2925:
2923:
2919:
2915:
2910:
2907:
2903:
2898:
2896:
2892:
2879:
2875:
2871:
2865:
2862:
2849:
2845:
2841:
2835:
2832:
2820:
2816:
2810:
2807:
2794:
2790:
2786:
2780:
2778:
2774:
2769:
2762:
2759:
2754:
2747:
2744:
2738:
2728:
2724:
2720:
2717:
2714:
2713:
2709:
2706:
2702:
2698:
2692:
2689:
2683:
2680:
2676:
2672:
2668:
2662:
2659:
2655:
2649:
2646:
2639:
2634:
2631:
2629:
2626:
2624:
2621:
2619:
2616:
2614:
2611:
2609:
2606:
2604:
2601:
2599:
2598:Mobile device
2596:
2594:
2591:
2589:
2586:
2584:
2581:
2579:
2576:
2574:
2571:
2569:
2566:
2564:
2561:
2559:
2556:
2554:
2551:
2549:
2546:
2545:
2540:
2538:
2536:
2532:
2528:
2524:
2520:
2516:
2512:
2508:
2504:
2500:
2499:demand paging
2496:
2492:
2488:
2486:
2482:
2478:
2474:
2470:
2466:
2463:Windows is a
2457:
2452:
2444:
2442:
2440:
2436:
2432:
2428:
2424:
2420:
2419:smart watches
2416:
2412:
2408:
2404:
2402:
2398:
2394:
2390:
2386:
2382:
2381:distributions
2378:
2374:
2370:
2366:
2362:
2358:
2354:
2353:UNIX System V
2350:
2346:
2341:
2339:
2335:
2331:
2330:free software
2327:
2320:
2316:
2311:
2303:
2301:
2299:
2295:
2291:
2287:
2283:
2279:
2275:
2271:
2267:
2263:
2259:
2255:
2251:
2245:
2241:
2233:
2231:
2229:
2225:
2220:
2218:
2214:
2210:
2206:
2201:
2199:
2194:
2186:
2184:
2182:
2178:
2173:
2171:
2168:powered by a
2167:
2163:
2158:
2154:
2146:
2144:
2142:
2138:
2134:
2130:
2126:
2122:
2118:
2110:
2106:
2103:
2100:
2097:
2096:
2095:
2093:
2087:
2079:
2077:
2075:
2071:
2067:
2063:
2062:type checking
2059:
2055:
2051:
2047:
2043:
2039:
2034:
2032:
2028:
2024:
2020:
2016:
2012:
2007:
2005:
2001:
1997:
1992:
1990:
1986:
1982:
1978:
1974:
1970:
1966:
1960:
1952:
1950:
1947:
1943:
1937:
1935:
1934:fragmentation
1931:
1927:
1923:
1919:
1915:
1911:
1906:
1904:
1900:
1896:
1892:
1887:
1883:
1879:
1877:
1873:
1869:
1865:
1861:
1857:
1853:
1849:
1845:
1841:
1837:
1833:
1831:
1827:
1823:
1819:
1815:
1812:. Permanent (
1811:
1810:power failure
1807:
1803:
1800:
1793:(or folders).
1792:
1788:
1784:
1779:
1773:
1765:
1763:
1761:
1756:
1752:
1748:
1744:
1739:
1737:
1733:
1729:
1725:
1721:
1717:
1712:
1708:
1706:
1701:
1697:
1689:
1687:
1684:
1682:
1677:
1673:
1671:
1665:
1658:
1650:
1645:
1639:
1631:
1629:
1627:
1622:
1620:
1616:
1612:
1608:
1604:
1599:
1597:
1593:
1589:
1585:
1581:
1577:
1575:
1570:
1567:
1561:
1553:
1551:
1545:
1542:
1539:
1538:
1537:
1535:
1525:
1522:
1519:
1518:
1517:
1516:
1512:
1508:
1505:
1502:
1498:
1494:
1490:
1489:
1488:
1486:
1482:
1478:
1470:
1466:
1462:
1459:
1455:
1452:
1449:
1445:
1442:
1441:memory buffer
1438:
1435:
1431:
1428:
1424:
1420:
1416:
1415:
1414:
1412:
1408:
1404:
1399:
1397:
1393:
1388:
1387:magnetic tape
1384:
1380:
1372:
1370:
1368:
1364:
1360:
1356:
1352:
1351:computer user
1341:
1332:
1328:
1325:This section
1323:
1320:
1316:
1315:
1309:
1304:
1302:
1300:
1296:
1291:
1289:
1285:
1281:
1277:
1270:
1265:
1262:
1259:
1256:
1253:
1250:
1247:
1246:
1245:
1243:
1239:
1237:
1233:
1220:alpha | bravo
1217:
1213:
1209:
1204:
1199:
1193:
1185:
1177:
1173:
1166:
1162:
1154:
1152:
1150:
1146:
1134:
1131:
1127:
1123:
1118:
1116:
1112:
1108:
1104:
1100:
1098:
1094:
1090:
1085:
1083:
1079:
1075:
1070:
1068:
1064:
1060:
1056:
1048:
1043:
1040:
1037:
1036:
1035:
1033:
1029:
1025:
1021:
1017:
1013:
1009:
1005:
1001:
997:
993:
987:
979:
977:
975:
971:
967:
963:
959:
950:
948:
946:
942:
938:
934:
930:
926:
917:
912:
904:
902:
900:
892:
890:
888:
884:
880:
876:
872:
871:BlackBerry OS
868:
863:
861:
857:
853:
849:
845:
841:
837:
836:user friendly
833:
829:
825:
821:
819:
815:
811:
807:
803:
799:
795:
788:
784:
780:
773:
769:
765:
758:
756:
755:smartphones.
754:
750:
746:
743:
739:
736:
735:free software
732:
728:
724:
721:released the
720:
716:
712:
708:
704:
700:
696:
692:
688:
684:
680:
675:
673:
669:
665:
661:
657:
653:
649:
645:
641:
637:
632:
628:
624:
620:
616:
612:
604:
599:
594:
586:
584:
582:
578:
574:
570:
566:
561:
559:
555:
551:
547:
539:
537:
535:
531:
523:
521:
519:
515:
511:
510:manufacturing
507:
503:
495:
493:
491:
487:
483:
479:
475:
471:
467:
462:
458:
454:
447:
445:
443:
439:
435:
427:
425:
423:
419:
415:
411:
407:
403:
399:
395:
390:
386:
382:
378:
377:multicomputer
374:
366:
361:
355:
352:
348:
344:
340:
337:
333:
329:
328:
327:
324:
322:
318:
314:
310:
302:
300:
298:
294:
290:
285:
283:
279:
275:
271:
267:
263:
259:
255:
251:
247:
243:
239:
235:
231:
227:
223:
219:
214:
212:
208:
204:
200:
196:
192:
187:
185:
181:
177:
173:
169:
167:
163:
159:
155:
152:that manages
151:
147:
143:
131:
126:
124:
119:
117:
112:
111:
109:
108:
103:
100:
98:
95:
93:
90:
88:
85:
83:
80:
78:
75:
73:
70:
68:
65:
64:
63:
62:
57:
41:
40:
37:
33:
30:
19:
7107:Cyberwarfare
6766:Cryptography
6382:
6049:file systems
5941:Time-sharing
5669:
5598:
5578:
5563:cite journal
5546:
5542:
5515:
5507:
5485:
5472:
5451:
5430:
5405:
5401:
5382:
5357:
5345:
5303:
5291:
5279:
5267:
5255:
5243:
5231:
5219:. Retrieved
5215:
5205:
5178:
5166:
5154:. Retrieved
5150:
5141:
5129:. Retrieved
5125:
5115:
5103:
5091:
5079:
5067:
5048:
5036:
5024:
5012:
5000:
4988:
4976:
4964:
4952:
4940:
4928:
4901:
4889:
4877:
4865:
4838:
4826:
4814:
4802:
4775:
4763:
4751:
4739:
4727:
4715:
4703:
4691:
4679:
4667:
4655:
4643:
4631:
4619:
4607:
4595:
4583:
4571:
4559:
4547:
4535:
4523:
4511:
4499:
4480:
4474:
4450:
4443:
4419:
4385:
4356:
4350:
4331:
4325:
4313:. Retrieved
4293:
4287:
4275:. Retrieved
4251:
4238:
4214:
4193:, retrieved
4177:
4163:
4139:
4132:
4113:
4085:
4079:
4060:
4054:
4035:
4029:
4005:
3976:
3970:
3951:
3928:. Retrieved
3904:
3885:
3862:
3848:
3842:
3834:
3820:
3814:
3806:
3792:
3786:
3767:
3744:
3730:
3724:
3715:
3701:
3695:
3686:
3667:
3660:
3651:
3644:. Retrieved
3635:
3625:
3617:
3603:
3582:
3570:
3565:, p. 2.
3558:
3546:
3534:
3522:
3510:
3483:
3471:
3459:
3447:
3435:
3423:
3411:. Retrieved
3401:
3394:
3389:, p. 8.
3363:
3359:
3357:
3350:. Retrieved
3337:
3330:
3318:. Retrieved
3300:
3288:. Retrieved
3274:
3262:. Retrieved
3242:
3232:
3220:
3208:
3196:
3165:
3153:
3141:
3129:
3117:
3105:
3093:
3081:
3054:
3042:
3030:
3018:
2996:, p. 5.
2989:
2977:
2965:
2953:
2948:, p. 7.
2931:, p. 6.
2916:, p. 6.
2909:
2904:, p. 4.
2882:. Retrieved
2873:
2864:
2852:. Retrieved
2843:
2834:
2822:. Retrieved
2818:
2809:
2797:. Retrieved
2788:
2767:
2761:
2752:
2746:
2708:
2697:motherboards
2691:
2682:
2661:
2648:
2628:System image
2489:
2469:workstations
2462:
2405:
2401:command line
2342:
2324:
2272:, including
2258:market share
2247:
2221:
2202:
2190:
2174:
2159:
2156:
2125:workstations
2114:
2089:
2035:
2008:
2000:microkernels
1993:
1962:
1938:
1907:
1903:input/output
1882:System calls
1880:
1858:to identify
1852:amortization
1836:File systems
1834:
1826:flash memory
1814:non-volatile
1796:
1787:File systems
1740:
1709:
1703:
1685:
1678:
1674:
1659:
1655:
1623:
1600:
1582:enables the
1578:
1571:
1563:
1549:
1531:
1480:
1476:
1474:
1456:Execute the
1410:
1400:
1376:
1366:
1362:
1348:
1335:
1331:adding to it
1326:
1305:Input/output
1292:
1276:Input/output
1274:
1241:
1240:
1235:
1216:command-line
1202:
1200:
1174:will send a
1160:
1159:To generate
1158:
1121:
1120:To generate
1119:
1110:
1101:
1086:
1071:
1058:
1052:
1020:control flow
1011:
1003:
989:
969:
965:
954:
945:input/output
922:
896:
864:
856:market share
822:
791:
749:data centers
679:teleprinters
676:
668:input/output
615:machine code
608:
562:
545:
543:
527:
499:
451:
431:
370:
325:
313:applications
306:
286:
242:collectively
236:, including
215:
199:system calls
188:
184:mass storage
172:Time-sharing
170:
145:
141:
139:
102:Input/output
35:
29:
7117:Video games
7097:Digital art
6854:Concurrency
6723:Data mining
6635:Probability
6368:Interpreter
6067:Device file
6057:Boot loader
5971:Round-robin
5896:Cooperative
5832:Rump kernel
5822:Multikernel
5812:Microkernel
5709:Usage share
5475:. Pearson:
3646:22 December
3310:ACM SIGARCH
2465:proprietary
2411:smartphones
2345:microkernel
2338:source code
2282:smartphones
2141:touchscreen
2117:smartphones
2070:source code
2058:code review
1895:prefetching
1864:directories
1840:abstraction
1791:directories
1772:File system
1766:File system
1760:Parallelism
1749:set, and a
1705:Concurrency
1690:Concurrency
1469:ready queue
1425:) into the
1407:system call
1405:executes a
1299:main memory
1232:ready queue
1172:system call
1145:hexadecimal
699:source code
619:punch cards
470:smart cards
250:smartphones
207:web servers
203:interrupted
82:File system
7175:Glossaries
7047:E-commerce
6640:Statistics
6583:Algorithms
6541:Stochastic
6373:Middleware
6229:Peripheral
5997:protection
5953:algorithms
5951:Scheduling
5900:Preemptive
5846:Components
5817:Monolithic
5684:Comparison
5221:7 February
2884:8 February
2854:8 February
2739:References
2563:Hypervisor
2493:works via
2266:Apple Inc.
2198:maintained
2123:, and for
2031:back doors
2004:Unikernels
1914:data block
1910:dictionary
1874:and lists
1860:corruption
1846:and other
1818:hard drive
1776:See also:
1734:a thread (
1694:See also:
1670:page fault
1644:Page fault
1534:time slice
1501:call stack
1463:Perform a
1338:April 2022
1218:syntax is
1128:CPUs, the
1074:time slice
980:Interrupts
925:protection
893:Components
867:Symbian OS
745:microchips
648:System/360
638:(FMS) and
631:mainframes
627:transistor
621:, without
611:plugboards
577:CPU caches
530:hypervisor
524:Hypervisor
442:Middleware
398:multiqueue
230:Apple Inc.
92:Networking
72:Interrupts
6996:Rendering
6991:Animation
6622:computing
6573:Semantics
6264:Processor
6087:Partition
6004:Bus error
5931:Real-time
5911:Interrupt
5837:Unikernel
5802:Exokernel
5422:0018-8646
5156:2 October
4315:16 August
3259:1542-7730
2824:2 October
2799:3 October
2437:and uses
2351:and uses
2290:Android's
2042:hardening
1965:CIA triad
1946:checksums
1868:file path
1856:checksums
1844:filenames
1732:interrupt
1499:onto the
1481:asserting
1477:interrupt
1419:registers
1363:interrupt
1165:Unix-like
1115:Control-C
1113:(usually
1000:exception
992:interrupt
986:Interrupt
947:devices.
933:user mode
828:Macintosh
814:Microsoft
787:Macintosh
683:terminals
554:unikernel
550:libraries
496:Real-time
466:kilobytes
438:networked
414:procedure
258:Android's
7190:Category
7155:Category
6983:Graphics
6758:Security
6420:Compiler
6319:Networks
6216:Hardware
6133:Live USB
5995:resource
5885:Concepts
5723:Variants
5704:Timeline
4306:Archived
4277:20 April
4268:Archived
4266:. F-75.
4195:13 April
4186:archived
3921:Archived
3688:program.
3640:Archived
3407:Archived
3364:indirect
3352:9 August
3320:7 August
3314:Archived
3290:8 August
3284:Archived
3264:7 August
2878:Archived
2848:Archived
2793:Archived
2541:See also
2523:metadata
2509:use the
2274:ChromeOS
2207:such as
2181:TempleOS
2177:Syllable
2162:homebrew
2137:trackpad
2129:keyboard
1953:Security
1848:metadata
1799:volatile
1747:register
1745:(PC), a
1681:swapping
1192:mnemonic
1139:, where
899:software
709:and the
707:System V
703:AT&T
613:or with
603:terminal
569:inlining
514:avionics
448:Embedded
343:hardware
299:stick).
274:embedded
238:ChromeOS
162:services
158:software
97:Security
7165:Outline
6128:Live CD
6082:Journal
6046:access,
6044:Storage
5921:Process
5827:vkernel
5694:History
5677:General
5126:OS News
3413:25 July
2695:Modern
2671:SIGSEGV
2583:Live CD
2407:Android
2286:tablets
2248:In the
1886:wrapped
1838:are an
1711:Threads
1392:channel
1365:called
1349:When a
1288:polling
1280:devices
1242:Signals
1203:signals
1182:is the
1055:process
958:process
883:Android
879:iPhones
848:VAX VMS
844:Windows
770:of the
753:Android
687:MULTICS
587:History
540:Library
482:VxWorks
394:packets
293:live CD
254:tablets
216:In the
5936:Thread
5807:Hybrid
5785:Kernel
5628:Curlie
5605:
5586:
5526:
5496:
5460:
5437:
5420:
5389:
5131:4 June
4487:
4462:
4431:
4397:
4363:
4338:
4226:
4151:
4120:
4092:
4067:
4042:
4017:
3983:
3958:
3892:
3855:
3827:
3799:
3774:
3737:
3708:
3679:
3610:
3369:pwrite
3360:direct
3347:USENIX
3257:
2675:SIGBUS
2673:, and
2667:SIGINT
2519:record
2513:. The
2475:, and
2429:, and
2391:, and
2385:kernel
2319:Layers
2298:iPadOS
2278:mobile
2193:ported
2135:, and
1944:) and
1930:bitmap
1824:, and
1716:kernel
1619:kernel
1611:kernel
1592:paging
1584:kernel
1574:kernel
1566:kernel
1385:, and
1359:cursor
1357:, the
1278:(I/O)
1188:signum
1176:signal
1155:Signal
1008:signal
970:ATTACH
962:kernel
941:memory
905:Kernel
887:Bionic
818:MS-DOS
772:MS-DOS
693:. The
672:memory
652:OS/360
579:, the
506:events
490:TinyOS
402:queues
336:memory
317:kernel
266:iPadOS
246:mobile
240:, are
6568:Logic
6402:tools
6138:Shell
6077:Inode
5216:ZDNET
4309:(PDF)
4298:(PDF)
4271:(PDF)
4256:(PDF)
4247:(PDF)
4189:(PDF)
4182:(PDF)
4173:(PDF)
3930:5 May
3924:(PDF)
3913:(PDF)
3243:Queue
2640:Notes
2521:with
2328:is a
2326:Linux
2310:Linux
2304:Linux
2270:Linux
2262:macOS
2224:POSIX
2133:mouse
1918:index
1891:cache
1806:crash
1751:stack
1662:(see
1596:80286
1411:write
1401:If a
1394:or a
1355:mouse
1228:bravo
1224:alpha
1212:shell
1137:INT X
1103:Users
1010:, or
1004:fault
996:abort
824:Apple
785:of a
742:Intel
738:Linux
731:MINIX
723:POSIX
640:IBSYS
371:With
234:Linux
226:macOS
148:) is
6400:and
6273:Form
6269:Size
5699:List
5603:ISBN
5584:ISBN
5569:link
5524:ISBN
5494:ISBN
5458:ISBN
5435:ISBN
5418:ISSN
5387:ISBN
5223:2024
5158:2023
5133:2024
5059:help
4485:ISBN
4460:ISBN
4429:ISBN
4395:ISBN
4361:ISBN
4336:ISBN
4317:2022
4279:2022
4224:ISBN
4197:2022
4149:ISBN
4118:ISBN
4090:ISBN
4065:ISBN
4040:ISBN
4015:ISBN
3981:ISBN
3956:ISBN
3932:2022
3890:ISBN
3853:ISBN
3825:ISBN
3797:ISBN
3772:ISBN
3735:ISBN
3706:ISBN
3677:ISBN
3648:2021
3608:ISBN
3415:2016
3354:2024
3322:2024
3292:2024
3266:2024
3255:ISSN
2886:2021
2856:2021
2826:2023
2801:2023
2727:ring
2558:DBOS
2533:and
2515:NTFS
2477:Xbox
2435:Java
2296:and
2284:and
2242:and
2226:and
2209:Java
2179:and
2119:and
2109:WIMP
2060:and
1922:tree
1893:and
1755:heap
1698:and
1590:and
1284:wait
1196:kill
1124:for
1095:and
1080:. A
1012:trap
968:and
966:LINK
877:for
806:CP/M
751:and
719:IEEE
695:UNIX
660:bugs
518:eCos
488:and
486:RIOT
264:and
252:and
209:and
193:and
164:for
156:and
6155:PXE
6143:CLI
6123:HAL
6113:API
5916:IPC
5626:at
5551:doi
5520:IET
5410:doi
4456:310
4425:309
4391:295
4220:294
4145:292
4011:308
3673:308
3247:doi
2723:key
2501:of
2403:.
2373:RAM
2371:of
2357:BSD
2294:iOS
2264:by
2211:or
2139:or
2015:C++
2013:or
1926:map
1828:(a
1808:or
1738:).
1483:an
1333:.
1180:pid
1163:in
1130:INT
1126:x86
990:An
875:iOS
826:'s
810:DOS
713:'s
705:'s
644:IBM
478:QNX
379:or
297:USB
289:OEM
262:iOS
228:by
140:An
7192::
6271:/
5898:,
5565:}}
5561:{{
5547:28
5545:.
5541:.
5522:.
5518:.
5492:.
5488:.
5416:.
5406:25
5404:.
5330:^
5315:^
5214:.
5190:^
5149:.
5124:.
4913:^
4850:^
4787:^
4458:.
4427:.
4409:^
4393:.
4375:^
4300:.
4264:48
4258:.
4249:.
4222:.
4204:^
4175:,
4147:.
4104:^
4013:.
3995:^
3940:^
3915:.
3870:^
3861:.
3833:.
3805:.
3752:^
3743:.
3714:.
3685:.
3675:.
3650:.
3634:.
3616:.
3594:^
3495:^
3405:.
3379:^
3345:.
3341:.
3308:.
3282:.
3253:.
3241:.
3177:^
3066:^
3001:^
2936:^
2921:^
2894:^
2876:.
2872:.
2846:.
2842:.
2817:.
2791:.
2787:.
2776:^
2725:,
2669:,
2471:,
2441:.
2421:,
2387:,
2369:MB
2219:.
2213:Qt
2200:.
2183:.
2131:,
2090:A
2076:.
2052:,
2048:,
2033:.
1936:.
1672:.
1381:,
1222:.
1151:.
1099:.
1069:.
1006:,
1002:,
998:,
976:.
544:A
528:A
520:.
512:,
500:A
492:.
480:,
476:,
432:A
213:.
182:,
168:.
146:OS
6209:.
6189:e
6182:t
6175:v
5992:,
5902:)
5894:(
5662:e
5655:t
5648:v
5611:.
5592:.
5571:)
5553::
5532:.
5502:.
5479:.
5466:.
5443:.
5424:.
5412::
5395:.
5225:.
5160:.
5135:.
5061:)
4493:.
4468:.
4437:.
4403:.
4369:.
4344:.
4319:.
4281:.
4232:.
4157:.
4126:.
4098:.
4073:.
4048:.
4023:.
3989:.
3964:.
3934:.
3898:.
3780:.
3417:.
3324:.
3294:.
3268:.
3249::
2888:.
2858:.
2828:.
2803:.
2729:.
2703:.
2677:.
2349:C
2111:.
2011:C
1666:)
1503:.
1471:.
1450:.
1443:.
1429:.
1340:)
1336:(
1141:X
144:(
129:e
122:t
115:v
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.