Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of UKEssays.com.
Windows XP is one of the most accessible versions of any Microsoft operating system. It is built on the Windows NT kernel and architecture and it is the first consumer-oriented operating system. Thus, this paper is a study of Windows XP and Linux will be used to compare with Windows XP, owing to that Linux is an operating system that can be installed on a variety of computer hardware and there are over 3,200 developer from 200 companies contributed to the Linux kernel. We organize the content into three chapters which show as below:
Microsoft Windows XP is the short for Windows “eXPerience”. Windows XP was being planned since the Windows 2000 is under development. It was then officially launched in New York City as Windows XP Operating System in October 25, 2001. It is released with a redesigned look and it is available in 25 languages. Windows XP had improved visuals, memory management, as well as security to the computer. 17million of Windows XP copies was sold out in a short time of 2 months and more than 200 million of copies then sold in 2 year.
Windows XP was originally brought in to be an OS which would combine the best features of the newest business OS, Windows 2000, and Windows 98 Second Edition (SE). Windows XP is designed to help users who may not be familiar with previous Windows OS features and it also comes with a couple of new abilities to ease the use of Windows XP for those users. It includes a series of new features which is not found in the old versions of Microsoft Windows OS such as Internet Explorer 6, customizable new interface, automatically updates from the internet, and multilingual support which support different languages.
Intended for computers that are part of a corporate network, for the majority of computers on small networks, and for home users who need certain advanced capabilities. With a brand new visual design, it has the features for business and advanced home computing, including remote desktop support, system restore and advanced networking features
Windows XP requires a CPU with at least 233MHz with a choice of Intel Pentium / Celeron processor or AMD K6 / Athlon / Duron processor, while the recommended CPU clock speed is 300MHz. The recommended RAM is 128MB and the minimum RAM is 64MB. The installation of Windows XP will need to consume at least 1.5 GB of hard disk space. An optical drive, a display monitor with at least 800 x 600 resolutions, a keyboard and a mouse are also needed to navigate through the whole installation process. The hardware requirements for Windows XP are summarized in the table below:
AMD K6/Athlon/Duron or
Hard Disk Space
Super VGA (800 x 600) or higher-resolution
Compatible keyboard & mouse
Table 3 System Requirement
1.3 Compare the Memory Management with Linux
Memory management is one of the importance cores of the operating system, especially the management of main memory. Virtual memory is one of the solutions that developed to overcome the need of memory. Below is the comparison of the memory management between Windows XP and Linux.
There are few thing that will be compared in this section, they are:
The detail of memory management about Windows XP will be descripted in the analysis of memory management.
A table of comparison between Windows XP and Linux will be illustrated as below
The difference about memory management between Windows XP and Linux will be carried out in this section (Solomon & Russinovich, 2006).
32bit version split user-mode and kernel mode from 2GB /2GB to 3GB/1GB
split user-mode and kernel mode 3GB/1GB
Linux 2.6 has 4/4 split option where the kernel has its own address space.
Demand-paged virtual memory
32 or 64 bit
Memory mapped files
Demand-paged virtual memory
32 or 64 bit
Memory mapped files
Two-level hierarchical memory map
Page directory table
Page directory entries (PDEs) point to page table
One page directory table per process
Page table entries (PTEs) point to page frame
Using TLB (Translation Look-aside Buffer) to accelerates address translation.
Three level of page tables to handle 64bit addresses.
Page global directory
Page middle directory
On x86 processors
Only a two-level page table is actually used. That is page table and page middle directory which contains exactly one entry.
Paging is supported in hardware
TLB is provided as well
Table 4 Compare Memory Management Windows XP and Linux
Figure 2 Linux Virtual Address Translation
Figure 3 Windows XP Virtual Address Translation
Chapter 2: Installation
2.1 Installation Steps
Insert the Windows XP installation CD into the CD- ROM/DVD-ROM.
Set the first boot device as the CD-ROM. The Boot Menu can be access by pressing the “F10” key during boot up for newer model of PC or laptop or manually configure the first boot device in the BIOS.
Restart the computer and it will now boot from the CD-ROM. Upon successful loading from the CD-ROM, a screen will appear as Figure 4. Strike any key to initialize the installation process.
Figure 4 Steps 3
The installation of Windows XP will commence. The 1st part of the installation is command-based while the later portion is GUI-based. The bottom of the installation screen will provide command keys that we will be using to interact with the system throughout the installation.
Figure 5 display a welcome screen with the option to set up a new Windows XP, to repair a Windows XP installation or to quit the setup without installation. Hit the “ENTER” key to proceed with the installation.
The next screen as shown in Figure 6 is the Windows XP License Agreement page. Hit “F8” to agree and continue with the installation or “ESC” key to cancel the installation process or “PAGE DOWN” key to view the next page of the license agreement.
The next step, Windows will search for any existing Windows installed in the system. If there are other versions of Windows installed, Figure 7 will appear. The option available from here on either to repair the previously installed Windows or to install a fresh new copy of the Windows.
If there are no Windows installed previously in the system, it will display Figure 8. In this step, it will display all available hard drives in the system. There are three options to select, the first is to setup a new Windows in the selected drive, the second is to create a partition on the selected drive and the final option is to delete the selected partition.
Remove any previously created partition by pressing “D” or create new partition by pressing “C”. Select the partition in which Windows XP will be installed and press “ENTER” to proceed to the next screen.
Figure 9In Figure 9, the partition selected has to be formatted with the available file system listed. The recommended file system for Windows XP is NTFS (New Technology File System). To perform a quick format, select “Format the partition using the NTFS file system (Quick)” and hit the “ENTER” key. In the next few moments, the partition will be formatted and be installed with Windows XP file system (Figure 10).
Upon completing the above, the system will restart automatically. The screen in Figure 3 will appear again this time, but DO NOT hit any key as this will only take you through the whole process starting from step 5 to 10 but wait instead until Figure 11 appear.
Installation continues after Figure 12, and the approximate time of completion is 30 – 45 minutes. After some time, Figure 11 will appear requesting for customization of region and language options. If there is no customization needed, click on the “Next” button to proceed.
Figure 13 requires the information of the name and the organization. Upon completing, click “Next” to proceed to the next screen.
Figure 14 requires the Windows XP license number to be input. Click “Next” upon completion.
The next screen (Figure 15) request of the computer name and password if needed. Click “Next” after filling up the necessary field.
This screen (Figure 16) request of the time zone of the installed system. Upon clicking “Next”, the installation will continue.
After 10 minutes later, a screen on networking settings will appear (Figure 17). If there are any info to configure, select “Custom settings” and configure the networking components. If there are none, select “Typical settings” and click “Next” to complete the installation,
Once Figure 18 appears, this marks the completion of Windows XP installation. Click “Next” to setup the computer and create user accounts. When the computer request to activate Windows, select “Skip” and select “No” when asked to register with Microsoft website. Doing so is to prevent virus to enter into the system as there is no antivirus software installed.
Chapter 3: Analysis
3.1 User Interface
A user interface is an intersection between user and the OS. While an interface is a set of commands or menus which user can use it to communicate with the OS. Generally, there are two fundamental methods allow users to communicate with the operating system. They are CLI and GUI which will be descripted later in this section.
3.1.1 CLI (Command Line Interface/Command Interpreter)
Main function of the command interpreter is to read and execute the specified commands entered by the user. A lot of commands given at this level are used to manipulate files: create, delete, move, copy and more. Now there are also two methods to in which these commands can be implemented.
The first method shown above (Figure 19) implies that, the command interpreter itself has the code to execute user entered commands.
While for the second method (Figure 20) whenever command interpreter could not understand the commands entered by user in any way, what will happen, it simply use the command to identify a file to be loaded to the main memory and then executed.
3.1.2 GUI (Graphical User Interface)
Apart from Command Line Interface, there is also a second way which a user can interact with the operating system is through GUI (Graphical User Interface). The Graphical User Interface was developed in early 1981 by Alan Kay, Douglas Engelbart, and a group of other researches at Xerox PARC. In this interface, it provides user with a mouse based window and a menu system as the interface instead of just entering boring commands through the Command Line Interface. A Graphical User Interface provides a desktop image where the mouse pointer moves its position on images, or icons, on the screen (desktop) that represent programs, files, directories, and system functions according to how our mouse moves on a mouse pad. By clicking the mouse button, a mouse pointer can execute a program, select, move, create, and delete a file or directory which is recognized as a folder
Figure 21 Windows XP
Unlike a Command Line Interface, Graphical User Interface is more suitable for a computer illiterate user to learn and use because there is no need for users to memorize or to get use with specific commands in order to communicate with the Operating System. Due to the ease of use, now a day GUI OS have become the dominant OS which is used by most of the users.
The UI is very important for any programs created because it will determine how easy you can instruct the program to do what you want to. The choice of whether we should use a CLI or GUI OS is mostly depending on us. Some users may prefer a CLI OS more than a GUI OS because they provides a strong shell interfaces.
3.2 Process Control Management
A process is a program in execution mode. It is said to be in the running state if it is currently in the CPU. A process will be in the blocked state if it is waiting for some event to occur. The process will then be transfer to a blocked list where all process are in asleep mode or inactive, waiting for events that will awake it. A process will be in ready state if it is waiting to enter the CPU. All process in ready state will be in a ready list or ready queue. The process will entered the CPU based on the scheduling algorithm. A process may switch its state at any moment, and thus a record is needed to ensure that all process will be able to complete its task. All these information and more are recorded in process control block (PCB).
3.2.1 Process Control Block
The PCB is a data structure containing important information about the process which includes the below:
The current state of the process
Unique identification of the process
A pointer to the process’s parent (the process that created this process)
Pointers to the process’s child processes (processes created by this process)
The process’s priority
Pointers to locate the process’s memory
Pointers to allocated resources
A register save area
The processor it is running on (in multiprocessor system)
The PCB is very important and serves as a store of information that allows the OS to locate all critical information about a process. When the CPU switches between active processes, it will refer to the information saved in PCB in order to restart the process the next time it is in the CPU.
3.2.2 Scheduling Algorithm
Processes in the ready list or ready queue needs to enter into the CPU but the selection of which process to enter first is very critical as to avoid starvation. Besides that, all process has to be treated fairly and throughput has to be maximized. This complex problem is solved using scheduling algorithm. The scheduling algorithm will determine which process will enter the CPU first and for how long it will remain in the CPU.
In general, there are two kinds of scheduling algorithms, preemptive and nonpreemptive. In preemptive scheduling algorithms, the process will be forcefully removed from the CPU upon receiving a command from the OS. Examples of preemptive scheduling algorithms are round robin and multilevel feedback queue. In nonpreemptive scheduling algorithms, the process will only exits the CPU upon completion. Examples of nonpreemptive scheduling algorithms are first in first out (FIFO), shortest job first (SJF) and priority.
Windows XP uses a priority-based, preemptive scheduling algorithm. This algorithm will ensure that the higher priority process will be executed in the CPU first. The process will continue to run until it is preempted by a higher priority process, until it finishes, until its time quantum ends or until it switches to a block state. When a higher priority process becomes ready while a lower priority is running in the CPU, the lower priority process will be preempted. All processes will receive a priority boost after a wait event, but processes with a keyboard I/O wait will experience a greater boost than those in a disk I/O wait
3.3 Deadlock Management
“A process in a multiprogramming system is said to be in a state of deadlock (or deadlocked) if it is waiting for a particular event that will not occur.” (Deitel, 1990, p. 155) In short, a deadlock occurs when a process’s request for resources – be it a space in the main memory or data from the server – will never be fulfill.
A simple illustration of how deadlock occurs is shown in Figure 22. Process A requests for Resource 2. While on the other hand, Process B is holding Resource 2 and is requesting for Resource 1 which is being held by Process A. Each process is waiting for the resource to be freed and each process will not release the currently held resource until it acquires the next resource. This circular wait will cause an indefinite wait and is the main characteristic of a deadlock system.
Figure 22 Example of a deadlock system
According to Havender, there are four conditions which must be in effect for a deadlock to occur. There are
Processes claim exclusive control of the resource they require (mutual exclusion condition).
Processes hold resources already allocated to them while waiting for additional resources (wait for condition).
Resource cannot be removed from the processes holding them until the resources are used to completion (no preemption condition).
A circular chain of processes exists in which each process holds one or more resources that are requested by the next process in the chain (circular wait condition).
Thus, the way to overcome the deadlock system is to apply prevention, avoidance, detection and recovery method. In deadlock prevention, the strategy is to remove any possibility of a deadlock occurrence. Prevention is a clean solution but lacks in a good resource utilization system. While being so, it is the most widely used method.
In deadlock avoidance, the goal is to impose less rigid conditions while trying to get better resource utilization. Avoidance does not mean to remove all possibility of deadlock but allows deadlock to loom but carefully avoid it whenever a deadlock approaches.
In deadlock detection, a deadlock is allowed to take place either willingly or unwillingly. Once the deadlock occurs, the system will identify which process and resource is involved and cleared it from the system.
In deadlock recovery, deadlocks are cleared from the system, so that the process may complete its execution and release the resources. This method may not be the best as most of the flushed process will either loss part of the work if not all of the work previously done.
Windows XP applied multilevel feedback queue scheduling algorithm to prevent deadlock from happening by separating the ready queue to three separate queues. Each queue has its own scheduling algorithm with the first two applying round robin scheduling algorithm with different time quantum and last queue using first in first out scheduling algorithm. A new process enters into the first ready queue and waits for its turn. When it enters into the CPU, the process will receive 8 milliseconds. If it does not complete within the time quantum, it will be preempted and move to the second queue. In the second queue it will wait for its turn to enter into the CPU once more. Upon entering the CPU, it will receive 16 milliseconds to complete its task. If it is still not completed after 16 milliseconds, it will be preempted again and enter the third queue where the process will be finish upon entering the CPU using the first in first out scheduling algorithm. The entire process is illustrated in Figure 23.
Figure 23 Multilevel Feedback Queue
Quantum = 8ms
Quantum = 16ms
First in First out
3.4 Memory Management
In most of the modern computer, they will have a memory hierarchy with volatile cache, volatile main memory (RAM) and nonvolatile disk store. Operating system is responsible to coordinate how these memories are used. The memory manager is responsible for managing the memory hierarchy. Its importance task includes implement virtual memory, copy-on-write memory, large memory support and form the base for the cache manager.
There are two general approaches to the memory management can be used. The simplest strategy called Swapping. However, Windows XP is using another strategy called Virtual Memory which allows program to run even they are only a part of the program swapped in the main memory.
3.4.1 Virtual Memory
Windows XP will use the virtual memory to counterbalance when the random access memory (RAM) is insufficiency to run a program or operation. When a computer is short of RAM, virtual memory will moves the data or code from RAM to a space that called paging file. By doing this, the RAM will be free up and is able to complete the work.
In the virtual memory system, each process has its own virtual memory, called an address space. In Windows XP 32-bit edition, the virtual address space is 4 gigabytes (GB) and in can be split into two partitions from 2 GB is used by process another 2GB is used by system to 3GB for process and 1GB for system (MSDN Library, 2011). In 64-bit Windows XP, each process has the virtual address space about 7152GB on IA-64 bit system and 8192 GB on x64 system (Russinovich & Solomon, 2008). All process can access its virtual address space, but the address space is private and cannot be accessed by other process, unless it has been shared.
Figure 24 64-bit Windows XP VM space
Figure 24 32-bit Windows XP VM space
3.4.2 How Windows XP Handles Memory Management
Figure 25 Virtual memory requirement for 25 operations selected from an hour-long trace
The figure 25 show that, the amount of virtual memory usage which used by a number of operation taken from a long-running workload situation on Windows XP. The workload contained office productivity program and web browsing and the operation involved activity such as starting up an application, saving and printing documents, opening and closing a file or web page. The virtual memory shown the available amount of memory that can hold all the code and data used in the operation and all the resource that are locked into a computer memory. According to (Microsoft , n.d) the virtual memory can be used by the following:
The space taken by application. For the operation that depend almost completely on the system service, such as opening a web page, to substantial, as when an application starts and must initialize itself. This can be rarely from different.
The space taken by the driver code. This is relatively changeless, on account of much of the code driver is locked in the memory or is in regular use.
The allocated and mapped data used by the system. This contains registry data, many system data structure, and files accessed by operating system.
The space used by the system itself. This consists of the space used by the shell and all the system’s service processes.
3.4.5 Allocating Memory for Application
In the Figure 25, each operation takes from 20 MB to 50 MB of the virtual memory. The operating system will distribute the physical memory to map this virtual memory. The individual operation can easily fit in 64 MB of RAM, but if the user would like to proceed from operation to operation, some of the content will be replaced. As Figure 3 shown that, the total of 256 MB of distinct pages were touched. If consecutive operations overlap to a great extent in the virtual memory they touch, the new operation will require a little or no I/O. Switch from one application to other is likely to involve a larger change in the contents of the virtual space.
3.4.6 Balancing Memory Resources
There is no sole “memory requirement” for an application or the system. When the physical memory is deficient, the system will pay for the I/O penalties as the user proceed from operation to operation. When physical memory is not sufficient, the system will not need to pay for I/O penalties, because the system has used the memory to forestall it.
The operating system will choose which pages to keep and which to get rid of. Thus, the number of pages in use alone does not represent a measure of memory required. The memory manager will allow the process to grow beyond its maximum when it is paging heavily and there is enough memory. However, when there is no paging and high demand for physical memory on the system, memory manager will shrink a process below its working set minimum to make the memory available.
3.4.7 Placement Policy
Windows XP implements a combination of local (each process selects from its own set of allocated frames) and global replacement policy¼ˆprocess selects a replacement frame from the set of all frames¼‰. Common replacement policies include least recently used (LRU) and first in, first out (FIFO). The LRU algorithm requires the virtual memory system to track when a page in memory is used. It will replace the process that has not been used for a long time. The FIFO algorithm it removes the page that has been in physical memory for a long prior of time, even the process is in use.
3.5 Secondary Disk Scheduling Management
3.5.1 Secondary Storage
Secondary storage is a lowest level of file system. It is the progression from magnetic tapes to disks. Compared to disks, magnetic tape’s access time is much slower. Magnetic tapes are usually used to store and backup infrequently used data.
3.5.2 Disk Scheduling
Disk scheduling is the operation systems which is responsible to use the hardware efficiency. There are two criteria for disk drivers which is fast access time and also to increase disk bandwidth.
Basically access time has two major components
Seek Time refers to the time for the disk arm to move the head of the cylinder containing desired sector
Rotational Latency is the additional waiting time for the disk to rotate to the desired sector of the disk head
Disk bandwidth is the total number of bytes transferred divided by the total time between the first requests for service to the completion of the last transfer.
When a process needs an input/output from the disk, system calls are sent to the operating system. If the disk is free, then request will be serviced. Else, the request will be located on a queue.
3.5.3 Disk Scheduling Algorithms
There are 6 types of disk scheduling algorithms which are:
First Come First Serve
Shortest Seek Time First
18.104.22.168 First Come First Serve
FCFS is the simplest disk scheduling algorithm among the others. It isn’t providing the fastest service. As the request arrives they are placed on a queue and are satisfied in order of arrival.
Figure 26 FCFS disk scheduling
22.214.171.124 Shortest Seek Time First
SSTF prioritize the first request which is nearest to the current head position, it minimizes the seek time. Requests can arrive at any time but the request which located furthest from the head will need to wait for a long time before it gets serviced.
Figure 27 SSTF disk scheduling
The disk starts at one end and move towards the other end, scanning back and forth. The head reverses and moves back. It serves requests while moving back. If request reaches right in front of the head then it will get serviced first. However if a request reaches just after the back of the head, the request will need to wait until the arm moves back. SCAN is also known as the elevator syndrome.
Figure 28 Scan disk scheduling
Figure 29 C-SCAN disk shedulingJust like SCAN disk scheduling algorithm, C-SCAN is a variant. It is a circular scan. It starts servicing from the head until it reaches the end, then the arm moves back without servicing any requests on queue.
The disk arm moves from one end to the other just like SCAN and C-SCAN. Instead of going to the end of the disk like SCAN disk scheduling algorithm, LOOK goes as far as the final request.
Queue = 23, 89, 132, 42, 187
There are 200 cylinders numbered from 0 – 199; Head starts at 100
Figure 30 LOOK disk sheduling
C-Look disk scheduling algorithm starts from the current head and moves towards the end and stops at the last request without going to the end of the disk. When reverse back, it does not service any requests on queue.
Figure 31 C-LOOK disk scheduling
3.6 Standard Support
Most of the Windows user will skip right past the Help files in Windows 95 and 98, which are due to a Help engine that’s extremely difficult to navigate. In Windows Me and 2000, the HTML-based interface is much easier to use, but the online Help file still a user manual that is in a small pieces and need to be update (Bott et al., 2001).
In Windows XP, The Help And Support Center in Home and Professional have include enormous collection of resource in every level of experience. Besides that, Windows XP also provide extra integrated into the Help And Support Center like (Bott et al., 2001):
Links to system tools and utilities which includ Disk Defragmenter, System Configuration Utility (Msconfig), Network Diagnostics and Windows Update, all of which run within the Help And Support Center window.
Syntax and usage information for 175 alphabetically command-line options.
Provide the links that can collect up-to-date information about your system and current configuration, with details about all installed hardware, software, and services.
Able to access to error logs, status of services and other advanced system information.
Able to access to Group Policy settings (Windows XP Professional only).
Enable links to external information sources, such as the Microsoft Knowledge Base and an assortment of Windows-focused newsgroups.
Access to Remote Assistance, which allows a Windows XP user to ask a friend for help; the more experienced user can connect directly to the machine experiencing the problem via the Internet or a local area network and make needed repairs or configuration changes directly.
Help topic: This left-hand column list down the common Help topic. This list also replaces the Help Contents page in the previous Windows version.
The Did You Know: this is provided by Microsoft support.
Ask for assistance and pick a task: lead to the tools and support resource.
3.6.1 Using the Help and Support Center
126.96.36.199 Searching for help topic
The search result can be break down into three groups:
Suggested Topic: the Help and Support Center will show user some suggested topic according to the keyword that the user entered.
Full-Text Search Matched: this group will show the topic where the content of Help and Support Center match with the phases that user entered.
Microsoft Knowledge Base: This group searches Microsoft
Cite This Work
To export a reference to this article please select a referencing stye below:
Related ServicesView all
DMCA / Removal Request
If you are the original writer of this essay and no longer wish to have your work published on the UKDiss.com website then please: