An operating system is the software that runs a computers simple functions, like scheduling tasks, executing and running applications and managing peripherals. The operating system is central between the person using a computer and the hardware of the computer such as the hard drive, the RAM and the processor. The purpose of an operating system is to provide a computer with a system that will be able to run all of the applications that the computer has. It also runs the computer for example, it does all of the basic tasks that the computer has to do. It also runs all of the hardware that it has. Windows and Mac OS X are examples of an operating system.
Services that an Operating System provides
Operating systems accomplish elementary tasks like identifying input from the keyboard, directing the output to the display screen, getting files in order and keeping track of directories on the disk. Furthermore, an operating system manages input and output devices such as a keyboard, a mouse or a scanner. An operating system also controls file management which is the organisation of files into a pyramid like structure. File management is also responsible for tasks such as access control which decides the degree of access that a user has as well as file backup on media such as memory sticks. The OS is also involved in process management which is the handling and division of resources to the processes in an effectual way. Process management also discontinues and continues processes as well as implementing systems for process synchronization, process communication and deadlock handling. Many operating systems that are popular today consist of parts such as the kernel which is indispensable. One of Its tasks is to boot up the computer. The kernel is the first program that is loaded in RAM because the task of opening up applications, assigning memory and running the system are handled by the kernel. The kernel also interacts with hardware and can retrieve files from the hard drive whilst at the same time allowing additional processes to run. Another part of an operating system is a system program. System programs carry out high level functionality of an operating system, they work on a higher level than the kernel, in user mode. This is the mode which applications run in. The system programs use mechanisms that have been delivered by the kernel and are essential for the system to function.
Relation with computer system software
An operating system also manages and co-operates with software. The software certainly needs an operating system that would allow it to function and run. The operating system provides the framework under which all of the applications run. The lower layer of software delivers the facilities intended for the upper layer of the application software. The application software is written to run under certain operating systems and versions. Examples of application software include word processing software like word and web browsers.
Systems that don't use an operating system
There are some systems that don't use an operating system. A microwave for example, has a fairly simple set of tasks that it has to complete as it only has a keypad and some buttons therefore; an operating system isn't a necessity as this would increase the price of the microwave without adding much benefit. Microwaves instead use an embedded system which has a specific function and only contains one program that completes the tasks that are necessary. The operating system that a computer uses however, has to be more flexible and complete wider range of tasks. Other appliances that use embedded systems are washing machines and remote controls. Several devices such as MP3 players and peripherals like SD cards use embedded systems as well.
Benefits of using an Operating System
One of the benefits of using an operating system is that you can use a computer without needing an understanding of coding. An operating system would therefore be an easier option than writing a code yourself to control the hardware. This would be an impossible task. This means that the OS would make it simple for the user to use the computer whilst the operating system takes control of the input/output processes for example. Another benefit of using an operating system is that they are reliable. Windows is the most reliable operating system and if there are any bugs that cause reliability issues then there are updates that can be installed which can rectify those issues. Another benefit of operating systems is that they can detect errors .A fault could occur in a part of the system and may cause a complete malfunctioning of the whole system. To prevent this situation, the operating system continually observes the system detecting any faults. This alleviates the owner of the computer any worry of errors that might spread to various parts of the system and cause failure.
Operating systems also add protection and security and they delegate which user and processes are allowed to have access to the resources of the operating system. This could stop some threats like Trojan horses from infiltrating the system as these threats could cause it to malfunction. It could also stop any malicious users from having access to resources as they may want to use that access for immoral purposes. The operating system also defends the system against attacks such as worms and denial of service. The system will allow a user to have access to an account if that user logs in with his/her user ID along with the password. The user ID can also determine if the user is allowed access to certain files and processes on the system, this is called access control.
Operating systems allow you to install up to date security patches that will add protection against the latest threats that the operating system and software could be vulnerable to. Patches should always be installed straight away as virus writers could abuse any vulnerability in systems that don't have the updated patch.
(9 marks) Give a more detailed account of how an operating system helps
organise data, through the use of file systems. Give an account of the
facilities provided and how they are used, with examples from at least two
operating systems you have studied.
How an operating system organises data
A file system is used to name files as well as placing them logically for saving and retrieving. The file systems of most operating systems place the files in directories located inside a tree like structure. Windows uses file systems like FAT and NTFS and Linux uses file systems like ext and sysfs.
FAT which is short for file allocation table corresponds to logical parts of the disk in allocation units named clusters; it also plots the positions of file data to those areas using a file allocation table. File allocation table can also be known as FAT16 as it uses a 16-bit address space for tracing clusters and data. To track data, a directory file stores the location of the first cluster of the file. The location of the third cluster is in the entry for the second cluster, this goes on until the last cluster entry, containing the end-of0-file code. FAT keeps a track of all the parts of the file that have been separated because of fragmentation and are therefore dispersed in various parts of the disk. A FAT holds information from the cluster such as unused, last cluster in the file, cluster in usage and finally bad cluster. Files get allocated the first place that is offered in the volume. A partition boot sector stores data which a file system can use to gain entry to the volume. FAT file systems were used in earlier versions of Microsoft windows such as 98 and nowadays the NTFS file system is instead used by windows because it has many improved features. It has features such as a file recoverable system which is important as the volume's consistency is assured. NTFS also can compress files, volumes and folders. This helps as any Windows application is able to read and edit the file without needing to decompress it first. Short for New Technology file system, NTFS file system starts with a boot sector created when formatting a NTFS volume. Information about the drive is held in the boot sector and logged specifically in the BPB which stands for bios parameter block. The boot sector also passes actions onto the NT loader. The master file is an important component as well. It helps the NTFS to have a very ordered range of records that hold data about the details of the file system. NTFS arranges the amounts of every file rationally with the use of virtual cluster numbers; every cluster inside a file has one of these.
NTFS directories act like indexes which hold the filename attribute, file reference, timestamp and file size for any files structured using the index. Indexing the files quickens directory entry; NTFS doesn't have to arrange the data each time the contents of the directory are listed. The duplicate attributes in the index also save time - as the NTFS doesn't need to look up that information in the MFT every time the directory is accessed. Also, because the index contains the file reference (a 64bit number identifying each file) there is no need to search through the MFT for the file.
When a directory grows too large to fit into the limited space of the MFT it expands from it's entry onto the file system. NTFS creates child indexes on the disk - referenced by the parent index in the MFT. To expand the directory structure onto the disk NTFS implements a B+ Tree data structure, expanding 'out' rather than 'deep', allowing for fast retrieval times.