quinta-feira, 20 de outubro de 2011

Description of the different PC and Macintosh Operating Systems



Description of the different PC and Macintosh Operating Systems

The dispute between Mac and PCs have been around for quite some time and has led to the quite hilarious Mac vs PC ads from Apple. PC actually stands for personal computer or a computer, typically a desktop, that is for personal use. Although Macs are technically PCs, along with other computers that run different flavors of Linux, the term PC has become exclusively associated with computers that are running the Microsoft Windows OS. Mac has its own OS, developed by Apple, and it is quite different from Windows. 


PC stands for Personal Computer and refers to any IBM-compatible computer. The term PC comes from the first personal computer made by IBM. A computer that is IBM-compatible means that its architecture is based on the IBM microprocessor. A number of different operating systems are compatible with PCs, the most popular of which is Microsoft Windows. Some others are the unix variants, such as Linux, FreeBSD and Solaris.
Mac is short for Macintosh and refers to any computer produced by Apple Computer. Macs are traditionally classified separately from PCs because they are based on the PowerPC architecture from Apple/IBM/Motorola instead of the traditional Intel based microprocessors that have powered PCs for decades. A great deal of software is also compatible with either Mac or PC, but not both.
As time moves on the line between Mac and PC as begun to blur. Apple redesigned their operating system based on UNIX in 2000, and more software packages and file formats have become interoperable between PCs and Macs every day. In early 2006, Apple switched to an Intel architecture for their computer systems which now makes it possible to run Microsoft Windows on Mac hardware. Up until this point Apple hardware only support the Macintosh Operating System (Mac OS), and Mac OS itself was not compatible with any other hardware besides Apple’s.
PCs and Macs are still not 100% compatible, despite their now similar architectures. While many software vendors release their products for both platforms, not all do. Particularly, most of the popular computer games are PC-only.

The Relationship between an Application program, the operating system and hardware


The Relationship between an Application program, the operating system and hardware
COmputer software can be divided into two main categories: application software and system software. According to Brookshear [1997], "application software consists of the programs for performing tasks particular to the machine's utilization. Examples of application software include spreadsheets, database systems, desktop publishing systems, program development software, and games." Application software is generally what we think of when someone speaks of computer programs. This software is designed to solve a particular problem for users.
On the other hand, system software is more transparent and less noticed by the typical computer user. This software "provides a general programming environment in which programmers can create specific applications to suit their needs. This environment provides new functions that are not available at the hardware level and performs tasks related to executing the application program" [
Nutt 1997]. System software acts as an interface between the hardware of the computer and the application software that users need to run on the computer. The diagram below illustrates the relationship between application software and ystem software.


The most important type of system software is the operating system. According to Webopedia [
2000], an operating system has three main responsibilities:
Perform basic tasks, such as recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the disk, and controlling peripheral devices such as disk drives and printers.
Ensure that different programs and users running at the same time do not interfere with each other.
Provide a software platform on top of which other programs (i.e., application software) can run.
The first two responsibilities address the need for managing the computer hardware and the application programs that use the hardware. The third responsibility focuses on providing an interface between application software and hardware so that application software can be efficiently developed. Since the operating system is already responsible for managing the hardware, it should provide a programming interface for application developers.
Nutt [
1997] identifies four common types of operating system strategies on which modern operating systems are built: batch, timesharing, personal computing, and dedicated. According to Nutt, "the favored strategy for any given computer depends on how the computer is to be used, the cost-effectiveness of the strategy implementation in the application environment, and the general state of the technology at the time the operating system is developed." The table below summarizes the characteristics of each operating system strategy as described by Nutt [1997].
Batch

This strategy involves reading a series of jobs (called a batch) into the machine and then executing the programs for each job in the batch. This approach does not allow users to interact with programs while they operate.
Timesharing

This strategy supports multiple interactive users. Rather than preparing a job for execution ahead of time, users establish an interactive session with the computer and then provide commands, programs and data as they are needed during the session.
PersonalComputing

This strategy supports a single user running multiple programs on a dedicated machine. Since only one person is using the machine, more attention is given to establishing predictable response times from the system. This strategy is quite common today because of the popularity of personal computers.
Dedicated

This strategy supports real-time and process control systems. These are the types of systems which control satellites, robots, and air-traffic control. The dedicated strategy must guarantee certain response times for particular computing tasks or the application is useless.

A Description of the Boot Process

 A Description of the Boot Process
When the computer is first switched on, and before it can do any useful work, it performs a power on self test (POST). You will see information appear on the screen that relates to the type and amount of hardware components, such as RAM, hard disk capacity, etc.
Once the self-test is complete, the computer loads the operating system. Once the operating system is loaded the computer can now run other programs called applications.

The typical computer system boots over and over again with no problems, starting the computer's operating system (OS) and identifying its hardware and software components that all work together to provide the user with the complete computing experience. But what happens between the time that the user powers up the computer and when the GUI icons appear on the desktop?
In order for a computer to successfully boot, its BIOS, operating system and hardware components must all be working properly; failure of any one of these three elements will likely result in a failed boot sequence.
When the computer's power is first turned on, the CPU initializes itself, which is triggered by a series of clock ticks generated by the system clock. Part of the CPU's initialization is to look to the system's ROM BIOS for its first instruction in the startup program. The ROM BIOS stores the first instruction, which is the instruction to run the power-on self test (POST), in a predetermined memory address. POST begins by checking the BIOS chip and then tests CMOS RAM. If the POST does not detect a battery failure, it then continues to initialize the CPU, checking the inventoried hardware devices (such as the video card), secondary storage devices, such as hard drives and floppy drives, ports and other hardware devices, such as the keyboard and mouse, to ensure they are functioning properly.
Once the POST has determined that all components are functioning properly and the CPU has successfully initialized, the BIOS looks for an OS to load.
The BIOS typically looks to the CMOS chip to tell it where to find the OS, and in most PCs, the OS loads from the C drive on the hard drive even though the BIOS has the capability to load the OS from a floppy disk, CD or ZIP drive. The order of drives that the CMOS looks to in order to locate the OS is called the boot sequence, which can be changed by altering the CMOS setup. Looking to the appropriate boot drive, the BIOS will first encounter the boot record, which tells it where to find the beginning of the OS and the subsequent program file that will initialize the OS.
Once the OS initializes, the BIOS copies its files into memory and the OS basically takes over control of the boot process. Now in control, the OS performs another inventory of the system's memory and memory availability (which the BIOS already checked) and loads the device drivers that it needs to control the peripheral devices, such as a printer, scanner, optical drive, mouse and keyboard. This is the final stage in the boot process, after which the user can access the system’s applications to perform tasks.