System Software

System Software

System software consists of two primary types of programs: the operating system and utility programs.

The operating system (OS) is the main program that controls how your computer system functions. The OS manages the computer’s hardware, including the processor, memory, and storage devices, as well as peripheral devices. The operating system also provides a consistent means for software applications to work with the Central Processing Unit (CPU). Additionally, it is responsible for the management, scheduling, and interaction of tasks. You access the operating system through the desktop on your computer.

System software also includes utility programs. These are small programs that perform many of the general housekeeping tasks for the computer, such as system maintenance and file compression.

Operating Systems

There are 4 types of operating systems:

Real-time operating systems (RTOS)

  • These types of operating systems are used in devices that perform a repetitive series of specific tasks. These devices may or may not require interaction with users and may be time critical. This type of operating system is used for devices which run only one application program, e.g. an ATM which has a limited set of financial transactions that it can run.

  • For example, instruments such as those found in the scientific, defense, and aerospace industries that must perform regimented tasks or record precise results require real-time operating systems. Real-time operating systems are also found in many types of robotic equipment, fuel-injection systems in car engines, video game consoles, and many home appliances. Other examples include a phone, GPS, digital picture frame and others.

  • There are numerous commercially available standard RTOS software programs such as eCOS, FreeRTOS, LynxOS but some device manufacturers use their own proprietary RTOS. µ/OS-III, for example, is used in safety critical applications in the airline, medical, transportation and nuclear industries. You would not normally run an RTOS as an operating system on your personal computer.

Single-user, single-task operating systems

  • These operating systems are designed to perform one task at a time for a single user.

  • Microsoft Disk operating system (MS-DOS) is an example of a single-user, single-task operating system.

Single-user, multitask operating systems

  • These are available commercially, for personal and business use. Because most home computers can handle only one person working on it at a time but can perform a variety of tasks simultaneously, they use a single-user, multitask operating system.

  • Windows operating systems and the Macintosh operating system (Mac OS) are most commonly used as single-user multitask operating systems.

Multi user operating systems

  • These coordinate resources for many users on a network. A multi user operating system enables more than one user to access the computer system at one time by efficiently juggling all the requests from multiple users.

  • Networks require a multi user operating system because many users access the server computer at the same time and share resources. A network operating system is installed on the server and manages all user requests, ensuring that they do not interfere with each other.

  • Examples include Linux, UNIX, Windows Server 2012 and Windows 8.

Platform

The combination of operating system and processor is referred to as a computer’s platform. For example, Microsoft Windows operating systems are designed to coordinate with a series of processors from Intel Corporation and AMD (Advanced Micro Devices) that share the same or similar sets of instructions. Apple has recently adopted the Intel processor. Apple’s use of the Intel processor offers the ability to utilize both the Windows and Mac OS simultaneously.

Microsoft Windows

Although Windows 11 is the most recent version on the market, some computers still run earlier versions, such as Windows 7, Windows XP, Windows Vista, Windows 95, Windows NT, Windows 98, Windows Millennium Edition (Me), and Windows 2000. 

Windows came under development soon after the Apple Macintosh introduced the graphical user interface in 1984. In fact, Microsoft was sued by Apple for stealing the “look and feel” of their operating system, a suit Apple eventually lost.

Mac OS

Although Apple’s Mac OS and the Windows operating systems are not compatible, they are similar in terms of functionality.
In 1984, Mac OS became the first commercially available operating system to incorporate the user-friendly point-and-click technology in a commercially affordable computer. Both operating systems now have similar window work areas on the desktop that house individual applications and support users working in more than one application at a time.

Macs have long been recognized for their superior graphics display and processing capabilities. Users also attest to Mac’s greater system reliability and better document recovery. However, there are fewer software applications available for the Mac platform.

Linux OS

In 1991 a Finnish graduate student named Linus Torvalds decided he would create an operating system that would run on an Intel processor. Linux, was offered for free to developers around the world and has been upgraded and improved continually since then and is much like the MAC OS.

Linux is open-source software, which means that anyone can obtain the code for free and alter it. The agreement is that improvements and methods will also be shared. Linux is gaining a reputation as a stable operating system that is not subject to crashes and failures. You can download the open-source versions of Linux for free off the Internet.

There are also several versions of Linux that are more proprietary in nature. These versions come with support and other products not generally associated with the open-source Linux. Red Hat has been packaging and selling versions of Linux since 1994 and is probably the most well-known Linux distributor. Linux is gaining ground in many markets but still is a long way from rivaling Microsoft and Mac on the personal computer.

Companies like IBM and HP have huge Linux projects and sell Linux-based solutions. There are companies like Red Hat who sell versions of Linux that are loaded with utilities and capabilities, including full-blown technical support. Because the source code is free, Red Hat can sell enterprise-scale software at a substantial savings to corporations, while offering the same level of service and support that these companies would get from Microsoft.

What the OS Does

In basic terms, the operating system provides a way for the user to interact with the computer, manages the central processor unit (CPU), manages the memory and storage, manages the computer system’s hardware and peripheral devices, and provides a consistent means for software applications to work with the CPU.

The User Interface

All of the operating systems previous mentioned provide a user interface that enables you to interact with the computer.
In early PCs, the interface with the OS was through a command-driven interface (i.e. MS-DOS), meaning that the user had to type very specific commands to get the computer to load a program. The commands were not always easy to understand and therefore the interface proved too complicated for the average user.

The command-driven interface was later improved by incorporating a menu-driven interface in which you choose a command from menus displayed on the screen (i.e. Windows 3.0). Menu-driven interfaces eliminated the need to know every command because you could select most of the commonly used commands from a menu. However, they were still not easy enough for most people to use. Most operating systems today use a graphical user interface. Unlike the command- and menu-driven interfaces used earlier, GUIs display graphics and use the point-and-click technology of the mouse and cursor, making them much more user friendly.

Processor Management

Although the CPU is the brains of the computer, it needs the OS to arrange for the execution of all its activities in a systematic way. To do this, the OS assigns a slice of its time to each activity requiring the CPU's attention. The OS then switches between processes thousands of times a second so it appears that everything is happening seamlessly.

When the OS allows you to perform more than one task at a time, it is said to be multitasking. The OS processes the task assigned a higher priority before processing a task that has been assigned a lower priority. This is called preemptive multitasking. For example, assume you're typing and you want to print a file. When you tell your computer to print the file, the printer generates a signal called an interrupt that tells the OS it is in need of attention.

Every device has its own type of interrupt, which is associated with an interrupt handler, a special numerical code that prioritizes the requests. These requests are placed in the interrupt table in RAM. In the printing example I just mentioned, the OS pauses the CPU from its typing activity when it receives the interrupt from the printer and puts a memo in a special location in RAM called a stack. The memo is a reminder of where the CPU was before it left off so that it can work on the printer request. The CPU then retrieves the printer request from the interrupt table and begins to process it. Upon completion of the printer request, the CPU goes back to the stack, retrieves the memo it placed about the typing activity, and returns to that task until it is interrupted again.

Operating System Architecture

Newer computers operate in a 64 bit environment rather than the earlier 32 bit environment. Using a 64 bit environment is generally faster for the user. Windows offers both a 32 bit and 64 bit version. The only obvious problem with switching to a 64 bit environment is the compatability of a users 32 bit programs. 

Memory and Storage Management

As the OS coordinates the activities of the processor, it uses RAM as a temporary storage area for instructions and data the processor needs. The processor then accesses these instructions and data from RAM when it is ready to process them. The OS is therefore responsible for coordinating the space allocations in RAM to ensure that there is enough space for all the waiting instructions and data. It then clears the items from RAM when the processor no longer needs them.

Virtual Memory

RAM has limited capacity. When there isn't enough room in RAM for the OS to store the required data and instructions, it borrows room from the hard drive. This process of optimizing RAM storage by borrowing hard drive space is called virtual memory.

When more RAM space is needed, the OS swaps out from RAM the data or instructions that have not been recently used and moves them to a temporary storage area on the hard drive called the swap file. If the data and/or instructions in the swap file are needed later, the OS swaps them back into active RAM and replaces them in the hard drive’s swap file with less-active data or instructions.
This process of swapping is known as paging. Eventually your computer will become sluggish as it is forced to page more and more often. This condition of excessive paging is called thrashing. The solution to this problem is to increase the amount of RAM in your system so that you can avoid it having to send data and instructions to virtual memory.

File and Device Management

Each device attached to your computer comes with a special program called a device driver that facilitates the communication between the device and the OS. The device driver translates the specialized commands of the device to commands that the OS can understand, and vice versa. Thus, devices will not function without the proper device driver because the OS would not know how to communicate with them.

Today, most devices come with the driver pre installed in Windows. The devices whose drivers are included in Windows are called Plug and Play (PnP). Plug and Play is not a driver. Instead, it is a software and hardware standard designed to facilitate the installation of a new piece of hardware in computers by including the driver the device needs to run into the OS. Plug and Play enables users to plug in their new device to a port on the system, turn on the system, and immediately use the device. The OS automatically recognizes the device and its driver.

Booting Up

For a computer to go from a dead stop to ready-for-use, a start-up process is required. This is often referred to as booting up the computer, or the boot process. The boot process consists of four basic steps:

  1. The basic input/output system (BIOS) is activated by powering on the CPU.

  2. The BIOS checks that all attached devices are in place (called a power-on self-test, or POST).

  3. The operating system is loaded into RAM.

  4. Configuration and customization settings are checked.

Once the boot process has completed these steps, it is ready to accept commands and data.

Errors in the boot up sequence can often be overcome by booting up in safe mode if you are using a Windows based system.

File Management

An additional function of the OS is to enable file management, which entails providing organizational structure to the computer’s contents. The OS allows you to organize the contents of your computer in a hierarchical structure of directories that includes drives, folders, sub folders, and files. If you use a Windows PC, Windows Explorers are the main tools for finding, viewing ,and managing the contents of your computer by showing the location and contents of every drive, folder, and file. In Windows, Explorers are dialog boxes that consistently appear when you open any folder.

Naming and Working with Files

There are some intricacies that are important when working with files and filenames within your computer. Changing a filename could seriously damage your systems ability to work properly. For instance, if you were to rename a Windows system file, your computer may crash and become inoperable. Always be careful when you work with your files. A good rule to follow is "If you did not create the file, do not change it."

The first part of a file, or the filename, is the name you assign to the file when you save it. For example, "bioreport" may be the name you assign a report you have completed for biology. Some characters, such as " / \ * ? < > | :, are not legal in filenames.

Following the filename and after the dot (.) comes an extension, or file type. This extension identifies what kind of family of files the file belongs to or which application should be used to read the file. For example, if the bioreport file is a Word 2013 document, it has a .doc extension and is named bioreport.doc. If the file is created in Word 2007, 2010 or 2013, then the file extension is .docx and is named bioreport.docx. All Word, Excel, and Power Point files created in the 2007 or later versions, will have an "x" at the end of the traditional three-letter extension.

Once you've located your file, you can perform many other file management actions, such as opening, copying, moving, and deleting files. You open a file by clicking the file in its storage location. The operating system then determines which application needs to be loaded to open the requested file and opens the file within the correct application automatically.

You can copy a file to another location using the Copy command. When you copy a file, a duplicate file is created and the original file remains in its original location. To move a file from one location to another, you use the Move command. When you move a file, the original file is deleted from its original location.

The Recycle Bin is a folder on the desktop where files deleted from the hard drive reside until you permanently purge them from your system. Files in the recycle bin can be easily restored to their original location. Files deleted from other drives, such as a floppy drive, CD, flash drive, or network drive, may not go to the Recycle Bin, but may be deleted from the system immediately.

Utility Programs

Utility programs are small applications that perform special functions. Some utility programs help manage system resources (such as disk defragmenter utilities) and others improve efficiency (such as file compression utilities).

A right click on an open area of the Windows desktop opens the display properties dialogue box. From here you can adjust the look of your Windows environment, change screen savers, and even reset the resolution of the video.

When you install a new program, the program runs a wizard that walks you through the installation process. If a wizard does not initialize automatically, however, you should go to the Add or Remove Programs folder in the Control Panel. This prompts the OS to look for the setup program of the new software and starts the installation wizard. Some people think that deleting a program from the Program Files folder on the C drive is the best way to remove a program from the system. However, most programs include support files that are not located in the main program folder. By selecting the Add or Remove Programs icon in Control Panel, you delete the main program file and all supporting files as well.

A set of maintenance utilities are built into Windows primarily for system efficiency. Disk Cleanup cleans unnecessary files from your hard drive. These include files that have accumulated in the Recycle Bin as well as temporary files. If not deleted periodically, these unnecessary files can affect performance.

Windows 8 has a utility called System Restore that lets you restore your system settings back to a specific date when everything was working properly. When you use the Windows Backup utility, you create a duplicate copy of all the data on your hard disk and copy it to another storage device, such as a CD or external hard drive. The Windows Task Scheduler utility allows you to schedule tasks to run automatically at predetermined times, with no interaction necessary on your part.

Review

In this unit you have had a look into the inner workings of the computer; not the physical parts but the mind, if you will, of the computer. Next we will continue our voyage into the computer by looking at the heart and brains of the computer; the hardware.