Friday, September 18, 2009

MAC OS INSTALLATION PROCESS


Preparing for InstallationIf you plan to erase your hard disk or archive your current system without preservingyour users and network settings, you’ll need to note your current network settings tomake it easier to get connected again after installing Mac OS X. Go to SystemPreferences > Network, and then check for these settings:

If your network uses: Write down the following:
Ethernet, DSL, or cableconnected via DHCPNothing. DHCP
automatically configures your Internet connection.AirPort connected via DHCPAirPort or wireless network name and password provided by yourAirPort network administratorEthernet, DSL, or cableconnected manuallyInternet Protocol (IP) address (number that looks like 12.345.56.789)Subnet mask (number that looks like 10.255.255.255)Router address (number that looks like 10.208.32.2)Domain Name System (DNS) servers (optional number that lookslike 10.255.255.255, and name that looks like ISPname.com)Search domains (optional name that looks like ISPname.com)Dial-up modemTelephone number, user name, and password provided by yourservice providerDNS servers (optional number that looks like 10.255.255.255, andname that looks like ISPname.com)Search domains (optional name that looks like ISPname.com)


Installing Mac OS XTo begin a custom installation of Mac OS X Leopard, follow these steps.

Step 1: Insert the Mac OS X Install discDouble-click the Install Mac OS X icon, and then click Restart. The installer opensautomatically when your computer restarts.WARNING: If you’re installing Mac OS X on your current Mac OS X startup disk, let theinstaller finish. If you quit, you may not be able to start up using your currentMac OS X startup disk.Double-click this iconon the Install disc.Click Restartto begin.

Step 2: Follow the onscreen instructionsSelect the language you want to use, and then click the forward arrow. The Welcomescreen appears.The installer guides you through the installation process. Refer to the sections thatfollow for information about selecting a destination when you have more than onevolume, selecting installation options, and selecting additional software to install.

Step 3: Select a destinationOn the “Select a Destination” pane, select the volume on which you want to installMac OS X. The screen tells you how much space is required for installation.


Step 4:
Select how you want to install Mac OS XClick the Options button to select “Archive and Install” or “Erase and Install.”
One of thefollowing screens appears:Select how you want to install Mac OS X, and then click OK. Click Continue when you’reready to proceed to the next pane.Install Mac OS XThis option appears if you don’t have Mac OS X installed on your computer or you havean early version of Mac OS X (v10.2.8) that can’t be upgraded.
Select this option toinstall Leopard on your computer.Archive and InstallSelect this option if you want to install a fresh system on your computer.“Archive and Install” moves your existing Mac OS X system files to a folder namedPrevious System, and then installs a new copy of Mac OS X on the selected volume.
Mac OS X–installed applications, such as Address Book and Safari, are archived, andnew versions are installed in the Applications folder.
Unless you choose “Preserve Users and Network Settings,” user accounts and theirhome folders are also archived in the Previous System folder.This is selected ifMac OS X is alreadyinstalled on the volume.This is selected if Mac OS Xisn’t installed.

Select the “Preserve Users and Network Settings”checkbox to import your existing useraccounts, home folders, and network settings into the new system.
User accountsinclude such things as:
 Home folders and their contents
 Preference settings
 Address Book databases
 Browser favorites
 Network settings and locations
“Preserve Users and Network Settings” also copies the existing Shared folder in theUsers folder to your new system.
Note: You can’t start up your computer using the Previous System folder, but settings,preference files, fonts, plug-ins, and other items remain available in case you needthem.
Some applications, plug-ins, and other software may have to be reinstalled after an“Archive and Install.” Fonts that were installed in the Fonts folder in the top-levelLibrary folder can be installed in your new system by copying them from the PreviousSystem folder.
Erase and Install
This method completely erases the destination volume, and then installs a new copy ofMac OS X

Step 5: Select additional software packages to install
The default installation contains all the software you need to use Mac OS X. However,the Mac OS X Install disc contains additional software—such as printer drivers, fonts,and language translations—that you may want to install. To see the available packages,click Customize on the Install Summary screen.The Custom Install pane appears, as shown on the following page. Click the arrowsto reveal specific components. Select the software you want to install, and thenclick Done.WARNING: If you erase the destination volume, everything on the volume—youruser accounts, network settings, and all of your files and folders—will be deleted.If necessary, quit the installer and back up your files before you erase the destinationvolume.


Note: You can always use the Mac OS X Install disc to install additional softwarepackages later.When you’re ready to install Mac OS X and the selected software, click Install on theInstall Summary screen.Click the arrow toreveal components.All componentswill be installed.Only the selectedcomponents willbe installed.
ECS LINUX-MANDRIVA INSTALLATION PROCESS


Below you will a very brief description of how to install the Linux-Mandriva 2007. You can borrow the six CDs or single DVD available in class. You can find more information at the Mandriva website: http://wwwnew.mandriva.com. I will assume that you wish to dual boot Linux with some version of Windows. You can find much more extensive instructions for installing Linux at:
Professor Norman Matloff's Beginner's Guide to Installing Linux : http://heather.cs.ucdavis.edu/~matloff/linux.html
I recommend you read and print out both this and Prof. Matloff's pages before starting.

IF YOU HAVE ANY CRITICAL FILES, BACK THEM UP BEFORE STARTING THIS PROCESS! CREATE AN EMERGENCY REPAIR DISK NOW!

There are three steps to installing Linux:

1. 1. Gathering network information.

2. 2. Set-up partitions on the disk drive to have room for Linux.

3. 3. Installing Linux

1. Gathering network information
Before starting to install Linux you must gather information about your current network settings. You can find these in the Network section of the Windows Control Panel. If you do not have DHCP, then you need to note your IP address. You should also note the subnet mask (usually 255.255.255.0), gateway address, primary DNS, and secondary DNS if there is one. If you are using encrypted wireless, then jot down the keys and/or pass phrase. You should also determine your graphics adapter and monitor model and current resolution settings.

2. Setting up partitions
Linux must be installed on partitions separate from all other operating systems. In Windows, each partition is given a drive letter. In Linux, all of the partitions on the first drive start with hda, and are numbered hda1, hda2, and so forth. The partitions on the second hard drive all start with hdb. Please note that the first drive may not be your C: drive in Windows. If you have multiple drives, you should note, based on its size, which is your C: drive. You will need this later to install the boot loader.

There are many ways to create the necessary space for Linux, but I will cover only the simplest. You will need clear out enough space in an existing partition so that it can be shrunk enough to make room for both Linux partitions. This may mean deleting files and/or moving files from one drive to another. Disk Cleanup can help you to choose the files to remove. When done, note how much space you need for your files on the drive. Once you are done cleaning up the disk, you should run the defragmenter tool to consolidate the files. Please note that Mandriva 2007 can shrink any file system, including the NTFS file system!

If you happen to have left some empty space on a hard disk, that you are not going to use for LINUX, then partition and format it now, before installing Linux. You should not use Windows/DOS tools to partition the Linux disk after Linux is installed--it can really screw things up.



2. Installing Linux
On most computers, you can bypass using an Install Boot floppy, by choosing to boot directly from the CDROM. To do this, you need to change the first device searched for booting in the BIOS. To access the BIOS settings, reboot the computer and hold down the indicated key, usually DEL. When the BIOS settings show up, look for a page that lists the order of boot search. You should find that the floppy is the first listed, followed by the hard drive. Change the first entry from floppy to CDROM. Then hit Escape, and choose to save the changes. Now when you reboot, the computer will start looking first in the CDROM. Note that after you have installed Linux, you should go through the same process to change the first device back to the floppy.

To install Linux, your computer must either boot to a specially created floppy or directly to the CD labeled Mandriva 2007 CD 1 or the Mandriva 2007 DVD.

1. Place CD 1, or the DVD in your CD drive and restart your computer.

2. Select “Installation” from the first menu.

3. Select “English (American)” as your language choice. (default)

4. Accept the license agreement.

5. Choose to install.

6. Set the Security to “Standard” so you can access your Windows partitions without being root

7. Assuming you don’t have enough free space, select “Use existing partitions” for Paritioning

8. Select the partition you wish to resize.

9. Slide the bar to determine the size of the old Windows partition. You can refer to your notes to determine the minimum you need for your Windows files. Remember you need to free up at least 5000 megabytes for Linux, but you should leave at least 500 megabytes free on the Windows partition to allow for future use.

10. Mandriva may ask you to reboot the computer. If so, then go through step 2 to 7, and then continue from here.

11. Select Auto allocate.

12. If everything pictured in the Partitioning charts makes sense, then select OK to write the partition table.

13. Mandriva may ask you to reboot again! If so, then go through steps 2 to 7, and then continue from here.

14. Mandrake will guess where root (/) will be mounted. Make sure the selected partition is the one you wanted.

15. Allow the partition to be formatted. (default)

16. The list of installation media found is correct so just click Next.

17. The default package selections are fine. However, if you have space on your hard disk, then feel free to select additional packages. As you select groups, the total size of the selections is updated at the bottom of the selection window. If you select packages from the right (server) column, then be warned that server components make your computer much more susceptible to attacks from hackers. Do not install server components unless you know what you are doing!

18. Just click “Install” on the Software Management Screen. The program will take about an hour to install, and will ask you to insert the other five CDs. If you are using a DVD, just press it back in when another CD is requested.

19. Set the root password; don’t leave it blank.

20. Add yourself as a user. I suggest you use your CSIF user name as your login name to make ssh and sftp a little easier.

21. After adding yourself, just press Next at the next Add user screen.

22. if there is only you, and your computer is in a safe place, you can agree to automatically log on one user.

23. Place LILO in the First sector of drive (MBR). (default)

24. If you are offered any proprietary drivers, then say Yes. (default)

25. If it finds your printer, then allow it to set it up automatically. (default)

Mandriva now provides a list of configurations that you will need to modify. You will need to configure the time zone to Los Angeles, but the other time defaults (hardware clock is not set to GMT) are fine. Configure the graphical interface. Make sure you test the configuration of your graphics adapter and monitor. You can use the information you gathered from your Windows network to configure the Network. If you have wireless, then select “wireless” from the list of adapters. The domain you choose for your host name is probably irrelevant—so make one up! Start the connection now to ensure it works. If you have a printer available to the computer but it was not detected earlier by Mandriva, then press the configure button next to printers, then Add a Printer, and then Auto-Detect. If Mandriva does not detect your printer, then uncheck Auto-Detect, click Next, and manually select its port, make, and model. Mandriva should be able to detect your printer, but you should check its efforts by printing a test page when prompted. If you wish to make your Windows OS the default, you will need to configure the bootloader. Upon entering the bootloader configuration area, click Next until you see a list of entries in the boot menu. Double click the "windows" entry, and then place an X in the Default checkbox.

After OKing the summary, don’t download updates. Remove the CD or DVD, and click the Reboot button. (You may wish to change your BIOS boot-up sequence back at this time.) When the system reboots, select the “linux” entry to start Mandriva for the first time.

If you are confronted with a command prompt instead of a GUI when Mandriva starts up, then login or su as root, and type XFdrake to open the graphics configuration tool. Play with the settings, and test until you get a good screen.

You may now want update the computer by Start icon -> System->Configuration->Packaging->Install, Remove & Update Software. After entering the root password, go to Software Management->”Look at available updates….” Then select a source URL (I use usc.edu), and wait for the list to download. You will see a Software Management window. You should download any Bugfix Updates, and Normal Updates.

Once you have installed all the updates, you should install the GUI debugger, ddd. Select “Select from where software packages are downloaded …”. Then select Add and then “Distribution sources.” Select a URL (I use ftp://ftp.ale.org). After the list of packages is downloaded, select “Look at installable software…” from the four Software Management choices. Type “ddd” in the search box, and then press Search. The rest of the process is straightforward.

Congratulations! Your done installing Linux!
Windows 2000 Professional INSTALLATION PROCESS

To install Windows 2000 Professional, follow these steps:

1.Start the installation by using one of the following methods:

• Start from the Windows 2000 Professional installation CD-ROM. Make sure that the CD-ROM is set to start before the hard disk starts. Insert the CD-ROM, and then when you are prompted, press any key to start the Windows 2000 Professional Setup program.

• Start from boot disks. Insert Disk 1, and then insert each of the remaining three floppy disks when you are prompted to do so. For additional information about creating boot disks for Windows 2000, click the article number below to view the article in the Microsoft Knowledge Base:
197063 (http://support.microsoft.com/kb/197063/EN-US/ ) How to Create Setup Boot Disks for Windows 2000

• Start from within a current operating system. Insert the CD-ROM, and then, at a command prompt, type drive:\i386\winnt32.exe and then press ENTER, or if this is an installation on a computer that has no previous installation of Windows, type drive:\i386\winnt.exe and then press ENTER, where drive is the letter of the CD-ROM drive.

2.Setup inspects your computer's hardware configuration and then begins to install the Setup and driver files. When the Microsoft Windows 2000 Professional screen appears, press ENTER to set up Windows 2000 Professional.

3.Read the license agreement, and then press the F8 key to accept the terms of the license agreement and continue the installation.

4.When the Windows 2000 Professional Setup screen appears, either press ENTER to set up Windows 2000 Professional on the selected partition, or press C to create a partition in the unpartitioned space.

5.If you choose to install Windows 2000 Professional on a file allocation table (FAT) partition, specify whether you want to:

• Leave the current file system intact.

• Format the partition as FAT16.

• Convert the existing file system to the NTFS file system.

• Format the partition by using the NTFS file system.
Press ENTER after you make your selection. Setup examines the existing hard disks and then copies the files that are needed to complete the installation of Windows 2000 Professional. After the files are copied, the computer restarts.

Important Do not press a key to boot from your CD-ROM drive when your computer restarts.

6.When the Windows 2000 GUI Mode Setup Wizard appears, click Next to start the wizard. Setup detects and installs such devices as a specialized mouse or keyboard.

7.When the Regional Options dialog box appears, customize your installation of Windows 2000 Professional for locale, number format, currency, time, date, and language, if necessary. Click Next.

8.In the Personalize Your Software dialog box, type your name and the name of your organization, and then click Next.

9.In the Product ID dialog box, type the 25-character product key, and then click Next.

10.In the Computer Name and Password dialog box, either accept the default name that Setup generates or assign a different name for the computer. When you are prompted for an administrative password, type a password for the Administrator account. (You can leave the box blank; however, this is not recommended.) Click Next.

11.In the Date and Time Settings dialog box, set the correct date and time for your computer. You can also specify which time zone you are in and set the computer to automatically adjust the clock for daylight saving time. Click Next.

12.Setup installs the networking software and detects your network settings. When the Network Settings dialog box appears, click either

• Typical to set default network settings such as File and Print Sharing for Microsoft Networks, Client for Microsoft Networks, and TCP/IP protocol that uses Dynamic Host Configuration Protocol (DHCP), or

• Custom to specify the network components that you require for your network environment,
and then click Next.

13.In the Workgroup or Computer Domain dialog box, specify the workgroup or the domain to join. If you indicate that you are part of a domain, specify your domain user name and password. Click Next.

Setup installs the networking components.

14.During the final stage of installation, Setup installs Start menu items, registers components, saves settings, and removes temporary files. When the Completing the Windows 2000 Setup Wizard dialog box prompts you to do so, remove the Windows 2000 CD-ROM, and then click Finish to restart the computer.

15.After the computer restarts, click Next in the Welcome to the Network Identification Wizard dialog box.

16.In the Users of This Computer dialog box, specify either that users must enter a user name and password or that you want Windows 2000 to automatically log on a specific user when the computer starts. Click Finish.
When the Windows 2000 Professional desktop appears, the installation is complete.

WINDOWS XP INSTALLATION PROCESS


How to install or upgrade to Windows XP?

This article describes how to install Windows XP. You may find it easier to follow the steps if you print this article first.


Before you start, you must have your Windows XP installation CD and the product key available.

If you cannot find your Windows XP CD or you cannot contact your computer manufacturer, you may have to purchase a new copy of Windows XP. Visit following link for more information:

http://support.microsoft.com/contactus/ (http://support.microsoft.com/contactus/)

Depending on the installation method that you select, you might need a boot CD or boot disks. If you do not have your Windows XP CD or boot disks, you must obtain them in order to install or upgrade to Windows XP by using certain methods. Review the methods to determine what media you will need. For more information about how to obtain the Windows XP Setup boot disks, click the following article number to view the article in the Microsoft Knowledge Base:
310994 (http://support.microsoft.com/kb/310994/ ) How to obtain Windows XP Setup boot disks You may have to troubleshoot product-key activation problems. For more information about how to troubleshoot installation problems, click the following article numbers to view the articles in the Microsoft Knowledge Base:
310637 (http://support.microsoft.com/kb/310637/ )

You receive an error message after you enter the product key when you try to install Windows XP If the installation method that you select requires you to start your computer from the Windows XP CD, your CD or DVD drive must be configured to do this. For information about how to configure your computer to start from the CD or DVD drive, see the documentation that is included with your computer or contact the computer manufacturer. For more information about how to start Setup from MS-DOS or a Windows 98/Windows Millennium Edition startup disk, click the following article number to view the article in the Microsoft Knowledge Base:
307848 (http://support.microsoft.com/kb/307848/ ) How to start the Setup program from MS-DOS in Windows XP
Methods to install Windows XP
loadTOCNode(1, 'resolution');

There are five methods for installing Windows XP. Review the following methods and select the method that is appropriate for your installation.

Method 1: Perform a clean install of Windows XPUse this method for a clean installation of Windows XP. A clean installation removes all data from your hard disk by repartitioning and reformatting your hard disk and reinstalling the operating system and programs to an empty (clean) hard disk.


Method 2: Upgrade to Windows XPUse this method if you are upgrading to Windows XP from Microsoft Windows 98, Microsoft Windows Millennium Edition, or Microsoft Windows 2000 Professional.


Method 3: Install Windows XP to a new hard diskUse this method to install Windows XP to a new hard disk. This is typically done when a new hard disk is installed on your computer.


Method 4: Install Windows XP to a new folder (parallel installation)Use this method to install Windows XP to a new folder (parallel installation) to either run two operating systems, or to access, repair, or retrieve data from a damaged disk.


Method 5: Perform a multiple boot operationUse this method to install Windows XP as a separate operating system on your computer. This lets you install more than one operating system on your computer and select which operating system that you want to use every time that you start your computer.

Method 1: Perform a clean install of Windows XP
loadTOCNode(2, 'resolution');

A clean installation consists of removing all data from your hard disk by repartitioning and reformatting your hard disk and reinstalling the operating system and programs to an empty (clean) hard disk. For more information about important things to consider before you partition and format you hard disk and how to partition and format your hard disk by using the Windows XP Setup program, click the following article number to view the article in the Microsoft Knowledge Base:
313348 (http://support.microsoft.com/kb/313348/ ) How to partition and format a hard disk in Windows XP To perform a clean installation of Windows XP, follow these steps:
1.Back up all important information before you perform a clean installation of Windows XP. Save the backup to an external location, such as a CD or external hard disk.

2.Start your computer from the Windows XP CD. To do this, insert the Windows XP CD into your CD drive or DVD drive, and then restart your computer.Note To boot from your Windows XP CD, the BIOS settings on your computer must be configured to do this.

3.When you see the "Press any key to boot from CD" message, press any key to start the computer from the Windows XP CD.

4.At the Welcome to Setup screen, press ENTER to start Windows XP Setup.

5.Read the Microsoft Software License Terms, and then press F8.

6.Follow the instructions on the screen to select and format a partition where you want to install Windows XP.

7.Follow the instructions on the screen to complete the Windows XP Setup.

If you have successfully installed Windows XP, you are finished. If these steps did not help you install Windows XP, go to the "Next Steps" section.


Method 2: Upgrade to Windows XP
loadTOCNode(2, 'resolution');

This section describes how to upgrade to Windows XP from Windows 98, Windows Millennium Edition, and Windows 2000 Professional.

Note Windows 2000 and Windows 2000 Professional can only be upgraded to Windows XP Professional. You cannot upgrade Windows 2000 to Windows XP Home.

Important Before you start the upgrade process, contact your computer manufacturer to obtain the latest BIOS upgrades for your computer and then install the upgrades. If you update the BIOS after you upgrade the computer, you may have to reinstall Windows XP to take advantage of features such as Advanced Configuration and Power Interface (ACPI) support in the BIOS. If you can do this, update the firmware in all the hardware devices before you start the upgrade.

You may want to disconnect from the Internet during the installation. This step is not necessary, but disconnecting from the Internet during the installation helps protect your computer. For added protection, you may also want to enable the Microsoft Internet Explorer firewall. For more information, see the "Enable or disable Internet Connection Firewall" topic in your Windows operating system Help.

For more information about how to prepare Windows 98 or Windows Millennium Edition for an upgrade to Windows XP, click the following article number to view the article in the Microsoft Knowledge Base:
316639 (http://support.microsoft.com/kb/316639/ )

How to prepare to upgrade Windows 98 or Windows Millennium Edition to Windows XP


To upgrade to Windows XP, follow these steps:

1.Start your computer, and then insert the Windows XP CD into the CD or DVD drive.

2.If Windows automatically detects the CD, click Install Windows to start the Windows XP Setup Wizard. If Windows does not automatically detect the CD, click Start. Then click Run. Type the following command, and then click OK:
CD drive letter:\setup.exe

3.When you are prompted to select an installation type, select Upgrade (the default setting), and then click Next.

4.Follow the instructions on the screen to complete the upgrade.If you have successfully upgraded to Windows XP, you are finished. If these steps did not help you upgrade to Windows XP, go to the "Next Steps" section.

Method 3: Install Windows XP to a new hard disk
loadTOCNode(2, 'resolution');

This method describes how to install Windows XP to a new hard disk. This is typically done when a new hard disk is installed on your computer.

Note You will need the CD for your previous operating system in order to complete this method.

Before you start, start your computer by using one of the following media:

  • Microsoft Windows 98/Windows Millennium startup disk
  • Windows XP CD or Windows XP boot disks

Note The Windows XP CD is the preferred media in the following steps:

However, the Windows XP boot disks will work if you do not have the CD.

To install Windows XP to a new hard disk, follow these steps:

1.Start your computer from the Windows XP CD (or boot disks). To do this, insert the Windows XP CD into your CD or DVD drive, and then restart your computer.

2.When the "Press any key to boot from CD" message appears on the screen, press any key to start the computer from the Windows XP CD.

3.At the Welcome to Setup screen, press ENTER to begin Windows XP Setup.

4.Read the Microsoft Software License Terms, and then press F8.

5.When you are prompted for the Windows XP CD, insert your Windows XP CD.

6.Restart your computer.

7.When you see the "Press any key to boot from CD" message, press any key to start the computer from the Windows XP CD.

8.At the Welcome to Setup screen, press ENTER to start Windows XP Setup.

9.Follow the instructions on the screen to select and format a partition where you want to install Windows XP.

10.Follow the instructions on the screen to complete Windows XP Setup.

If you have successfully installed Windows XP, you are finished. If these steps did not help you install Windows XP to a new hard disk, go to the "Next Steps" section.

Method 4: Install Windows XP to a new folder (parallel installation)
loadTOCNode(2, 'resolution');

This method describes how to install Windows XP to a new folder (parallel installation) to either run two operating systems, or to access, repair, or retrieve data from a damaged disk.Before you start, start your computer by using one of the following media:
Microsoft Windows 98/Windows Millennium Edition startup disk
Windows XP CD or Windows XP boot disksNote The Windows XP CD is the preferred media in the following steps. However, the Windows XP boot disks will work if you do not have the CD.To install Windows XP to a new folder (also known as a parallel installation), follow these steps:
Start your computer from the Windows XP CD (or boot disks). To do this, insert the Windows XP CD into your CD or DVD drive, and then restart your computer.
When the "Press any key to boot from CD" message appears on the screen, press any key to start the computer from the Windows XP CD.
At the Welcome to Setup screen, press ENTER to begin Windows XP Setup.
Read the Microsoft Software License Terms, and then press F8.
Select the partition in which you want to install Windows XP, and then press ENTER.
Select the Leave the current file system intact (no changes) option, and then press ENTER to continue.
Press ESC to install to a different folder.If the Setup program detects another operating system folder, it prompts you to type the name for the new folder after the backslash (\), for example, \WINXP. If there are no other operating systems detected, the Setup program automatically names the folder \Windows. For more information about how to change the folder name on new installations, click the following article number to view the article in the Microsoft Knowledge Base:
315242 (http://support.microsoft.com/kb/315242/ ) How to designate the original folder name for a reinstallation of Windows XP
Press ENTER to continue.
Follow the instructions on the screen to complete Windows XP Setup.If you have successfully installed Windows XP, you are finished. If these steps did not help you install Windows XP to a new folder, go to the "Next Steps" section.
Method 5: Perform a multiple boot operation
loadTOCNode(2, 'resolution');

Use this method to install Windows XP as a separate operating system on your computer. This lets you install more than one operating system and select which operating system that you want to use every time that you start your computer. For more information about how to multiple boot Windows XP and other versions of Windows and MS-DOS, click the following article number to view the article in the Microsoft Knowledge Base:
217210 (http://support.microsoft.com/kb/217210/ ) How to multiple boot Windows XP, Windows 2000, Windows NT, Windows 95, Windows 98, Windows Me, and MS-DOS If you have successfully installed Windows XP, you are finished. If these steps did not help you install Windows XP, go to the "Next Steps" section.
TROUBLESHOOTING
loadTOCNode(1, 'whattotry');

For more information about how to troubleshoot installation problems, click the following article numbers to view the articles in the Microsoft Knowledge Base:
310637 (http://support.microsoft.com/kb/310637/ ) You receive an error message after you enter the product key when you try to install Windows XP
310064 (http://support.microsoft.com/kb/310064/ ) How to troubleshoot problems during installation when you upgrade from Windows 98 or Windows Millennium Edition to Windows XP For more information about Windows XP troubleshooting and Support, see the Windows XP Solution Center. Visit the following Microsoft Web site:
http://support.microsoft.com/ph/1173 (http://support.microsoft.com/ph/1173)
NEXT STEPS
loadTOCNode(1, 'moreinformation');

If these methods did not work for you, you can use the Microsoft Customer Support Services Web site to find other solutions to your problem. Some services that the Microsoft Customer Support Services Web sites provide include the following:
Searchable Knowledge Base (http://support.microsoft.com/search/?adv=1) : Search technical support information and self-help tools for Microsoft products.
Solution Centers (http://support.microsoft.com/select/?target=hub) : View product-specific frequently asked questions and support highlights.
Microsoft Customer Support Newsgroups (http://www.microsoft.com/communities/newsgroups/default.mspx) : Contact counterparts, peers, and Microsoft Most Valuable Professionals (MVPs).
Other Support Options (http://support.microsoft.com/default.aspx?pr=csshome) : Use the Web to ask a question, contact Microsoft Customer Support Services, or provide feedback.If you continue to have problems, you might want to contact Support:
http://support.microsoft.com/contactus (http://support.microsoft.com/contactus)
MORE INFORMATION
loadTOCNode(1, 'moreinformation');

For more information about how to install Windows XP Professional, click the following article number to view the article in the Microsoft Knowledge Base:
286463 (http://support.microsoft.com/kb/286463/ ) Release notes for Windows XP Setup contained in the Pro.txt file For more information about how to install Windows XP Home Edition, click the following article number to view the article in the Microsoft Knowledge Base:
306824 (http://support.microsoft.com/kb/306824/ ) Release notes for Windows XP Setup contained in the Home.txt file For more information, click the following article numbers to view the articles in the Microsoft Knowledge Base:
307726 (http://support.microsoft.com/kb/307726/ ) Description of the Windows XP Upgrade Advisor
314062 (http://support.microsoft.com/kb/314062/ ) The latest Windows XP Hardware Compatibility List
295322 (http://support.microsoft.com/kb/295322/ ) How to determine if hardware or software is compatible with Windows XP If these Microsoft Knowledge Base articles do not help you resolve the problem, or if you experience symptoms that differ from those that this article describes, please search the Microsoft Knowledge Base for more information. To search the Microsoft Knowledge Base, visit the following Microsoft Web site:
http://support.microsoft.com (http://support.microsoft.com/) Then, type the text of the error message that you receive, or type a description of the problem in the Search Support (KB) field.

Thursday, August 27, 2009

RESOURCE ALLOCATION GRAPH


RESOURCE ALLOCATION GRAPH (RAG'S) are directed labeled graphs used to represent, from the point of view if DEADLOCKS, the current state of a system.


RESOURCE ALLOCATION GRAPHS:


PROCESS







REQUEST TYPE w/ 4 INSTANCE





Pi REQUEST INSTANCE of Rj
Rj



Pi is HOLDING AN INSTANCE OF Rj



Rj

















































EXAMPLE of RESOURCE ALLOCATION GRAPH




RESOURCE ALLOCATION GRAPH w/ DEADLOCK



If graph contains a cycle then it has a DEADLOCK


-if only one instance per resource type,then DEADLOCK


-if several instances per resource type, possibly of DEADLOCK



RESOURCE ALLOCATION GRAPH w/ a CYCLE BUT NO DEADLOCK


If graph contains no cycle no DEADLOCK














Thursday, August 20, 2009

DEADLOCK CHARACTERIZATION

  • Mutual exclusion: only one process at a time can use a resource.
  • Hold and wait: a process holding at least one resource is waiting to acquire additional resources held by other processes.
  • No preemption: a resource can be released only voluntarily by the process holding it, after that process has completed its task.
  • Circular wait: there exists a set {P0, P1, …, P0} of waiting processes such that P0 is waiting for a resource that is held by P1, P1 is waiting for a resource that is held by
    P2, …, Pn–1 is waiting for a resource that is held by Pn, and P0 is waiting for a resource that is held by P0.
METHODS FOR HANDLING DEADLOCKS

  • Ensure that the system will never enter a deadlock state.
  • Allow the system to enter a deadlock state and then recover.
  • Ignore the problem and pretend that deadlocks never occur in the system; used by most operating systems, including UNIX.
DEADLOCK PREVENTION

  • deadlock requires the following conditions:

-mutual exclusion:

-resources not sharable

-hold and wait:

-process must be holding one resource while requesting another

-circular wait:

-at least 2 processes must be blocked on each other

  • eliminate mutual exclusion:

-not possible in most cases
-spooling makes I/O devices sharable

  • eliminate hold-and-wait

-request all resources at once
-release all resources before a new request
-release all resources if current request blocks

  • eliminate circular wait

-order all resources: SEQ(Ri) ? SEQ(Rj)
-process must request in ascending order

DEADLOCK DETECTION

  • graph reduction

-repeat:

-select unblocked process p
-remove p and all request and allocation edges

  • deadlock? graph not completely reducible
  • all reduction sequences lead to the same result
DEADLOCK RECOVERY

  • process termination

-kill all processes involved in deadlock
-kill one at a time; in what order:

-by priority: consistent with scheduling
-by cost of restart: length of recomputation
-by impact on other processes: CS, producer/cons.

  • resource preemption

-direct: temporarily remove resource (e.g. memory)
-indirect: rollback to earlier checkpoint

Thursday, August 13, 2009

MULTIPROCESSOR SCHEDULER

  • Will consider only shared memory multiprocessor .
  • Salient features:

One or more caches: cache affinity is important
Semaphores/locks typically implemented as spin-locks: preemption

during critical sections

REAL TIME SCHEDULING

Correctness of the system may depend not only on the logical result of the computation but also
on the time when these results are produced.


Example:
  • Tasks attempt to control events or to react to events
    that take place in the outside world
  • These external events occur in real time and
    processing must be able to keep up
  • Processing must happen in a timely fashion,
    • neither too late, nor too early

Monday, August 10, 2009

SUBSTANTIAL INFORMATION OF THREE OPERATING SYSTEM

WINDOWS XP THREAD

Implements the one-to-one mapping
Each thread contains
  • A thread id
  • Register set
  • Separate user and kernel stacks
  • Private data storage area
The register set, stacks, and private storage area are known as the context of the threads
The primary data structures of a thread include:
  • ETHREAD (executive thread block)
  • KTHREAD (kernel thread block)
  • TEB (thread environment block)
LINUX

Linux refers to them as tasks rather than threads
Thread creation is done through clone() system call
  • Clone() allows a child task to share the address space of the parent task a9process)
  • Clone() allow various levels of sharing between nothing.

Linux PCB contains pointers to other DS where the process data (open files, page tables…) is stored

  • Fork – a new process is created along with a copy of all the associated data structure of the parent process
  • Clone – a new process that points to the data structures of the parent process is created
WINDOWS SERVER 2008

Windows Server codename "Longhorn" operating systems.

Kernel improvements are significant because the kernel provides

  • low-level operating system functions,
  • including thread scheduling,
  • interrupt and exception dispatching,
  • multiprocessor synchronization, and
  • a set of routines and basic objects that the rest of the operating system uses to implement higher-level constructs.



SCHEDULING ALGORITHMS
  • First-come, first-served (FCFS) scheduling
  • Shortest-job first (SJF) scheduling
  • Priority scheduling
  • Round-robin scheduling
  • Multilevel queue scheduling
  • Multilevel feedback queue scheduling
First-come, First-served (FCFS) scheduling is the simplest scheduling algorithm, but it can cause short processes to wait for very long processes.

Shortest-job-first (SJF) scheduling is provably optimal, providing the shortest average waiting time. Implementing SJF scheduling is difficult because predicting the length of the next CPU burst is difficult. The SJF algorithm is a special case of the general

priority-scheduling algorithm, which simply allocates the CPU to the highest-priority process. Both priority and SJF scheduling may suffer from starvation. Aging is a technique to prevent starvation.

Round-robin (RR) scheduling is more appropriate for a time-shared (interactive) system. RR scheduling allocates the CPU to the first process in the ready queue for q time units, where q is the time quantum. After q time units, if the process has not relinquished the CPU, it is preempted and the process is put at the tail of the ready queue. The major problem is the selection of the time quantum. If the quantum is too large, RR scheduling degenerates to FCFS scheduling; if the quantum is too small, scheduling overhead in the form of context-switch time becomes excessive.The FCFS algorithm is nonpreemptive, the RR algorithm is preemptive. The SJF and priority algorithms may be either preemptive or nonpreemptive.

Multilevel queue algorithms allow different algorithms to be used for various classes of processes. The most common is a foreground interactive queue which uses RR scheduling, and a background batch queue, which uses FCFS scheduling

Multilevel feedback queues allow processes to move from one queue to another.Because such a wide variety of scheduling algorithms are available, we need methods to select among them. Analytic methods use mathematical analysis to determine the performance of an algorithm. Simulation methods determine performance by imitating the scheduling algorithm on a “representative” sample of processes, and computing the resulting performance.



Thursday, July 30, 2009

USER THREAD

User threads are supported above the kernel and are implemented by a thread library at the user level. The library provides support for thread creation, scheduling, and management with no support from the kernel. Because the kernel is unaware of user-level threads, all thread creation and scheduling, are done in user space without the need for kernel intervention.
MULTITHREADING MODELS

Many systems provide support for both user and kernel threads, resulting in different multithreading models. There are three common types of threading implementation:
1. Many-to-one Model - maps many user-level threads to one kernel thread.

2. One-to-one Model - maps each user thread to a kernel thread. It provides mode concurrency than the many-to-one model by allowing another thread to run when a thread makes a blocking system call.

3. Many-to-many Model - The many-to-many model multiplexes many user-level threads to a smaller or equal number of kernel threads. The number of kernel threads may be specific to either a particular application or a particular machine.
THREAD LIBRARY

The threads library allows concurrent programming in Objective Caml. It provides multiple threads of control (also called lightweight processes) that execute concurrently in the same memory space. Threads communicate by in-place modification of shared data structures, or by sending and receiving data on communication channels.
The threads library is implemented by time-sharing on a single processor. It will not take advantage of multi-processor machines. Using this library will therefore never make programs run faster. However, many programs are easier to write when structured as several communicating processes.
KERNEL THREAD

Kernel threads consist of a set of registers, a stack, and a few corresponding kernel data structures. When kernel threads are used, the operating system will have a descriptor for each thread belonging to a process and it will schedule all the threads. Unlike processes, all threads within a process share the same address space. Similar to processes, when a kernel thread makes a blocking call, only that thread blocks. All modern machines support kernel threads, most often via the POSIX threads interface ``pthreads''. Some dedicated parallel machines support kernel threads poorly or not at all. For example, the Blue Gene/L microkernel does not support pthreads.

The purported advantage of kernel threads over processes is faster creation and context switching compared with processes. For shared-memory multiprocessor architectures, the kernel is able to dispatch threads of one process on several processors, which leads to automatic load balancing within the nodes. For parallel programming, threads allow different parts of the parallel program to communicate by directly accessing each others' memory, which allows very efficient, fine-grained communication.


Kernel threads share a single copy of the entire address space, including regions such as global data that may cause conflicts if used by multiple threads simultaneously. Threads can also cause unintentional data sharing, which leads to corruption and race conditions. To avoid this unintentional sharing, programs must often be modified to either lock or access separate copies of common data structures. Several very widely used language features are unsafe when used with threads, such as the use of global and static variables, or the idiom of returning a reference to a static buffer. Especially with large existing codebases with many global variables, this makes kernel threads very difficult to use because in most implementations of kernel threads, it is not possible to assign each thread a private set of global variables.

Kernel threads are considered ``lightweight,'' and one would expect the number of threads to only be limited by address space and processor time. Since every thread needs only a stack and a small data structure describing the thread, in principle this limit should not be a problem. But in practice, we found that many platforms impose hard limits on the maximum number of pthreads that can be created in a process. Table 2 in Section 4 shows the practical limitations on pthreads on several stock systems.

In particular, operating system kernels tend to see kernel threads as a special kind of process rather than a unique entity. For example, in the Solaris kernel threads are called ``light weight processes'' (LWP's). Linux actually creates kernel threads using a special variation of fork called ``clone,'' and until recently gave each thread a separate process ID. Because of this heritage, in practice kernel threads tend to be closer in memory and time cost to processes than user-level threads, although recent work has made some progress in closing the gap, including K42 [
5] and the Native POSIX Threading Library (NPTL) and Linux O(1) scheduler.
BENEFITS OF MULTI-THREADED PROCESS

Multi-threaded programs can improve performance compared to traditional parallel programs that use multiple processes. Furthermore, improved performance can be obtained on multiprocessor systems using threads.

Managing Threads

Managing threads; that is, creating threads and controlling their execution, requires fewer system resources than managing processes. Creating a thread, for example, only requires the allocation of the thread's private data area, usually 64 KB, and two system calls. Creating a process is far more expensive, because the entire parent process addressing space is duplicated.
The threads library API is also easier to use than the library for managing processes. Thread creation requires only the pthread_create subroutine.

Inter-Thread Communications

Inter-thread communication is far more efficient and easier to use than inter-process communication. Because all threads within a process share the same address space, they need not use shared memory. Protect shared data from concurrent access by using mutexes or other synchronization tools.
Synchronization facilities provided by the threads library ease implementation of flexible and powerful synchronization tools. These tools can replace traditional inter-process communication facilities, such as message queues. Pipes can be used as an inter-thread communication path.

Multiprocessor Systems

On a multiprocessor system, multiple threads can concurrently run on multiple CPUs. Therefore, multi-threaded programs can run much faster than on a uniprocessor system. They can also be faster than a program using multiple processes, because threads require fewer resources and generate less overhead. For example, switching threads in the same process can be faster, especially in the M:N library model where context switches can often be avoided. Finally, a major advantage of using threads is that a single multi-threaded program will work on a uniprocessor system, but can naturally take advantage of a multiprocessor system, without recompiling.

Limitations

Multi-threaded programming is useful for implementing parallelized algorithms using several independent entities. However, there are some cases where multiple processes should be used instead of multiple threads.
Many operating system identifiers, resources, states, or limitations are defined at the process level and, thus, are shared by all threads in a process. For example, user and group IDs and their associated permissions are handled at process level. Programs that need to assign different user IDs to their programming entities need to use multiple processes, instead of a single multi-threaded process. Other examples include file-system attributes, such as the current working directory, and the state and maximum number of open files. Multi-threaded programs may not be appropriate if these attributes are better handled independently. For example, a multi-processed program can let each process open a large number of files without interference from other processes.



THREAD
SINGLE THREADED PROCESS
A single thread can control the execution on a Maurer machine of any executable finite-state thread stored in the memory of the Maurer machine. We also relate stored threads with programs as considered in the program algebra of Bergstra et al. The work is intended as a preparation for the development of a formal approach to model micro-architectures and to verify their correctness and anticipated speed-up results.
MULTI-THREADED PROCESS
Multiple threads can be executed in parallel across many computer systems.
This is multithreading, and generally occurs by time slicing (similar to time-division multiplexing) across the computer systems. However, in a single processor environment, the processor 'context switches' between different threads. In this case, the processing is not literally simultaneous, for the single processor is really doing only one thing at a time. This switching can happen so fast as to give the illusion of simultaneity to an end user.

For instance, many PCs may only contain one processor core, but one can run multiple programs at once, such as typing in a document editor while listening to music in an audio playback program. Although the user experiences these things as simultaneous, in truth, the processor quickly switches back and forth between these separate processes. On a multiprocessor or multi-core system, now coming into general use, threading can be achieved via multiprocessing, where different threads and processes can run literally simultaneously on different processors or cores.

Threads exist within a process - every process has at least one thread, the 'main' thread. Threads share the process's resources, including memory and open files. This makes for efficient, but potentially problematic, communication.
PROCEDURE-CONSUMER EXAMPLE

  • PROCEDURE

A Procedure encapsulates a task composed of Steps (and possibly, SubSteps). Procedures are usually performed sequentially, unless individual Steps direct the reader explicitly.
Often it is important to assure that certain conditions exist before a procedure is performed, and that the outcome of the procedure matches the expected results. DocBook does not provide explicit semantic markup for these pre- and post-conditions. Instead, they must be described as steps (check the pre-conditions in the first step and the results in the last step), or described outside the body of the procedure.


  • CONSUMER

Consumer is a broad label that refers to any individuals or households that use goods and services generated within the economy. The concept of a consumer is used in different contexts, so that the usage and significance of the term may vary.

BUFFERING

Explicit control of buffering is important in many applications, including ones that need to deal with raw devices (such as disks), ones which need instantaneous input from the user, or ones which are involved in communication. Examples might be interactive multimedia applications, or programs such as telnet. In the absence of such strict buffering semantics, it can also be difficult to reason (even informally) about the contents of a file following a series of interacting I/O operations.
Three kinds of buffering are supported: line-buffering, block-buffering or no-buffering. These modes have the following effects. For output, items are written out from the internal buffer according to the buffer mode:


  • line-buffering: the entire buffer is written out whenever a newline is output, the buffer overflows, a flush is issued, or the handle is closed.
  • block-buffering: the entire buffer is written out whenever it overflows, a flush is issued, or the handle is closed.
  • no-buffering: output is written immediately, and never stored in the buffer.

ZERO CAPACITY

Communication over a noisy quantum channel introduces errors in the transmission that must be corrected. A fundamental bound on quantum error correction is the quantum capacity, which quantifies the amount of quantum data that can be protected. We show theoretically that two quantum channels, each with a transmission capacity of zero, can have a nonzero capacity when used together. This unveils a rich structure in the theory of quantum communications, implying that the quantum capacity does not completely specify a channel's ability to transmit quantum information.

BOUNDED CAPACITY

The capacity of discrete-time, non-coherent, multipath fading channels is considered. It is shown that if the delay spread is large in the sense that the variances of the path gains do not decay faster than geometrically, then capacity is bounded in the signal-to-noise ratio.

UNBOUNDED CAPACITY

The capacity of discrete-time, noncoherent, multipath fading channels is considered. It is shown that if the variances of the path gains decay faster than exponentially, then capacity is unbounded in the transmit power.

SYNCHRONIZATION
  • BLOCK SEND

A blocking send can be used with a non-blocking
receive, and vice-versa,

e.g.,
MPI_Isend
MPI_Recv
  • NONBLOCKING SEND
Non-blocking sends can use any mode -
synchronous, buffered, standard or ready.
Separate communication into three phases:
1. Initiate non-blocking communication (“post” a
send or receive)

2. Do some other work not involving the data in
transfer
– Overlap calculation and communication
– Latency hiding

3. Wait for non-blocking communication to complete
  • BLOCKING RECEIVE

A blocking receive returns as soon as the data is ready in the receive buffer.

  • NONBLOCKING RECEIVE

A non-blocking send returns as soon as possible, that is, as soon as it has posted the send. The buffer might not be free for reuse.

C:
int MPI_Irecv(void *buf, int count, MPI_Datatype datatype,
int source, int tag, MPI_Comm comm, MPI_Request
*request)
Fortran:
CALL
MPI_IRECV(BUF,COUNT,DATATYPE,SOURCE,TAG,COMM,REQUEST,IER
ROR)


BUF(*)
INTEGER COUNT,DATATYPE,SOURCE,TAG,COMM
INTEGER REQUEST,IERROR

INDIRECT COMMUNICATION

Indirect communication is used to attack, manipulate, or defend one's self.

By comparison, indirect communication conceals one's true position or feelings. There are may ways to be indirect, an obvious example is sarcasm. If you don't like someone's clothes and you say (in a sarcastic tone) "I like your clothes", the literal meaning and implied meaning are opposite.While direct communication has a goal of cooperation, indirect communication has a goal of hurting or manipulating another person, or protecting one's self. Below is an incomplete list of some different forms of indirect communication, grouped into attacks and defenses, along with a description.

personal attacks:
1.)name calling -- "You're a pig!". The purpose is to hurt the other person's feelings. If you were being direct, you might say "I'm angry at you, and I think you're a bad person.". This is truthful, but less likely to hurt the other person's feelings (if that is your goal). Note that name calling does not require any response from the other person...it's not a question, so no reply is required.

2.)belligerence -- "Why won't you do it?! Huh?! Why not?!?" Repeatedly demanding another person submit to your demands. An example of a direct response might be "I've already answered you, and I'm not going to answer you again. We can talk about something else, or I'm done talking to you."

3.)sarcasm -- Using an affected tone and saying the opposite of what you mean. Sarcasm can be used to mock or insult another person, although it can also be used purely for humorous effect.

4.)contempt -- A harsh and hostile tone of voice that expresses contempt for the person you are speaking to (or about). This is one of the "four horsemen of the apocalypse" for predicting divorce cited by John Gottman (see below).

5.)yelling -- Using an unnecessarily loud volume for effect. An example of a direct response might be to say "Please don't yell, I can hear you fine."

6.)insinuation -- Implying what you mean with suggestive statements. For example, "If it's not your fault, who's fault is it!?!". An example of a direct response might be to say "Are you implying I am to blame?"

defensiveness:

1.)defensive -- anything said with a defensive tone of voice, a high-pitched tone that is understood to deflect blame. For example, imaging the pitch used when a person says "What's your problem? I was only trying to help!". People are generally not aware of it when they are using a defensive tone of voice, but it's important to be aware of the tone of voice you are using if you want to avoid being defensive.

2.)dismissive -- To negatate another person's problem or statement. For example, saying "so what?"

3.)minimizing -- to reduce or de-value another person's problem by characterizing it as less than it is. For example, saying "It's only a scratch, you'll survive" when someone is hurt or injured.

4.)stonewalling -- obstructing another person's questions. Giving only evasive, dismissive, or vague responses to another perosn, making no effort to answer their questions but trying to wear them down/frustrate them.