Your operating system manages the internal workings of your computer. It controls access to hardware and software, handles user instructions and error messages, and promotes multitasking.
Windows first debuted in 1985, offering one of the world’s first graphical interfaces for IBM-compatible PCs. It soon dominated the market.
Today, more than 90 percent of computers run some version of Windows. Its latest update, Windows 11, offers centered Start menus, simplified layouts and direct integration with tools to create a sleek workspace.
Hardware Abstraction Layer (HAL)
The Hardware Abstraction Layer (HAL) is a piece of software that acts as an interface between the operating system and the hardware. It enables software programs to interact with hardware devices using a high-level application programming interface (API), instead of device-specific drivers and protocols. HALs are used in many computer OSes, including Windows, Linux, macOS, and IBM’s AS/400.
HALs can be found inside the operating systems kernel or as device drivers, and provide a common interface for software applications to use with hardware devices. They can also be customized or extended to support specialized hardware devices and functions.
A HAL can be binderized, which means that it runs in a separate process from the application that uses it. In addition, it can be wrapped in an API framework that provides a standard specification for the HAL’s interfaces. This helps reduce driver compatibility issues and improve application development.
Device Drivers
Device drivers are specialized software programs that act as an intermediary between the operating system and hardware components. They are the heart of a Windows computer, and without them, the computer won’t work.
They define the messages and mechanisms that allow the computer to interact with a given piece of hardware, such as the video card. They translate the generic commands sent by the OS to the hardware (as an example, asking a video card to draw a window on the screen) into the unique instructions that are understood by the specific card.
Most device drivers run in kernel mode, but some run in user mode as well. The most basic driver is the BIOS, which is stored in read-only memory (ROM). BIOS is responsible for power-on self-tests and ensuring that all other hardware components can interface properly with the OS. It also provides device drivers that support the most common hardware features, such as USB and I/O ports.
File System
File systems organize data into a hierarchical structure. This allows the operating system to manage files on storage devices in a more organized manner and makes them easier to find. Without a file system, all data would be stored as a single unstructured block.
Most OS file systems support CRUD operations (create, read, modify, and delete) and access permissions that regulate which users or processes can access files and folders. They also have time stamps to help track file usage and performance.
NTFS is one of the most common file systems for Windows and supports features such as compression, encryption, and disk quotas. It also has a journaling feature that helps with data integrity.
FAT, the older file system used by MS-DOS, has a limit of close to 4 GB and only supports up to eight characters for file names. It does not support recursion or extended attributes. It also stores metadata in the first sector, which is useful for booting and portability, but may be unnecessary for other systems that do not require a partition table.
User Interface (UI)
The UI is how users interact with software applications and websites. It consists of the layout and positioning of core components to create a frame that defines an application’s identity, along with design elements like colors, shapes and fonts that give it an aesthetic feel.
Originally, computer operating systems relied on command language interfaces where users entered text commands via keyboard to control programs. Microsoft’s Windows 1.0 introduced one of the first GUIs, which used a WIMP (windows, icons, menus and pointer) model. This allowed users to click on graphic icons and text to activate programs.
The UI also includes a multiuser system that lets more than one person use the same operating system and remote desktop connections for accessing the OS from a different computer. It can also support multitasking by enabling applications to run in parallel. In 2021, Microsoft updated the UI to include a new virtual assistant called Copilot, which aims to compete with Apple’s Siri and Amazon’s Alexa.