Operating systems are complex software programs that operate efficiently and reliably in a computer environment. These programs control hardware devices such as personal computers, mainframe computers, workstations, servers, printers, fax machines, and other computer devices. They allow users to access data files stored on a computer’s hard disk. They are used to control other computer processes such as communication between software and hardware devices, management of the computer registry, management of the operating system’s booting process, and other tasks. OSs vary in complexity and detail from simple to more complicated programs requiring in-depth knowledge of the programming languages and their functions.
The complexity of an OS depends on its use. Simple operating systems, or operating systems that allow for the execution of simple programs, use memory to only function at a maximum rate and cannot be changed. In contrast, complex operating systems manage multiple applications that share common resources such as memory. Complex operating systems must also allow for the transfer of data among multiple hardware devices. This allows for multi-tasking or executing multiple programs simultaneously. For example, a web server and web applications, both of which run on the same operating system, can be multi-threaded.
Different operating systems also have different characteristics such as capabilities and access control mechanisms. OSs that manage a computer’s resources can either control access to a part of the computer or all parts. Some examples include controlling how users gain access to a computer’s memory, storage devices, and so on. In some cases, different operating systems’ abilities allow for different applications and different levels of access among multiple applications.
Command-line interface or terminal emulators are operating systems that allow for input/output (I/O) operation of a computer’s terminals and other input/output devices such as a keyboard and a mouse. A prevalent form of this is the DOS-based computer operating systems. A command-line interface is available with most basic computer operating systems, but some command line technologies require additional compatibility software. Examples include Solaris, Linux, and BSD.
Modern computer needs include support for high-speed mobile communication technology such as Bluetooth and WiFi. Hardware that supports this high-speed networking includes Wi-Fi hotspots and air cards. Other modern computer needs that must also be considered in an operating systems are video display adapters and multimedia card hardware. Video display adapters are necessary if the computer does not have built-in display.
Computer operating systems also must be able to handle security threats. The Microsoft Windows operating systems, for example, are designed to be resistant to virus attacks. However, the Linux operating systems are not as resilient. Since viruses often attack the OS, Microsoft windows computers do tend to experience more computer virus attacks than Linux computers. Modern computers may also run on the Macintosh platform, which lacks any operating system security vulnerabilities.
In practice, installing different operating systems on personal computers can lead to a lot of problems. Each operating system has a different view of the file system, and each one processes the files differently. For example, Windows operating systems will often use the FAT file system to store documents. In contrast, Linux computers will use ext2 and ext3 file systems for storage purposes.
Thus, using one company’s Windows server to run several different OSes could lead to problems. A Linux machine could run into trouble if a file system designed for Windows is installed on it. On the other hand, Linux machines could run into trouble if they are configured incorrectly. Personal computing is complicated, and a new PC running a variety of operating systems can be confusing and expensive. When one company’s OS is the only one of many being used, it is easy to see why it can be difficult to choose the best one.