? ??????????????Take My Breath Away? ????? ?? ???Rating: 4.4 (13 Ratings)??71 Grabs Today. 12572 Total Gra
bs. ??????Preview?? | ??Get the Code?? ?? ?????Our Hearts on Thin Ice? ????? ?? ???Rating: 5.0 (1 Rating)??52 Grabs Today. 4978 Total Grabs. ??????Preview?? | ??Get the Code?? ?? ??? BLOGGER TEMPLATES AND TWITTER BACKGROUNDS ?

Thursday, September 17, 2009

INSTALLATION PROCESS OPEN SOURCE

Install Ubuntu

Start computer and boot from CD.

Select Install to hard drive.

Select your language, country, and keyboard layout (i.e. English, United States, American English)

Select manually configure and set an IP address (or autoconfig if you don't know).

Enter your servername (i.e. moodletest)

Select to manually edit the partition table. I’m doing my testing on a standard 40GB harddrive and will modify these sizes for production.

/boot ext3 200MB bootable (may need to be under cylinder 1024 on your harddrive to be bootable)
/ ext3 10GB (files are relatively static)
swap 4GB (4xRAM if you don't have much memory, down to 1xRAM if you have gobs of memory)
/var ext3 26GB (variable content – uses rest of the drive)

Select your timezone. (i.e. Central)

Set clock to Universal Time.

Enter Administrators full name. (i.e. Joe Smith)

Enter account name. (i.e. joesmith)

Enter a secure password. (‘abcde’ is not a good one!)

Let the computer restart.

Log in your account.

Edit the /etc/apt/sources.list file. Remove the # mark on lines 22 and 38 to enable access to the universe package source and universe security updates. You will need to re-enter your account password when sudo asks for it.

sudo nano /etc/apt/sources.list
Now to get all the security updates.

sudo apt-get update

sudo apt-get dselect-upgrade
Normally you would just use sudo apt-get upgrade.

And reboot to run on the new kernel!

sudo reboot
Install MySQL (skip Postgresql)
At this point we'll need to log in again to the server and type:

sudo apt-get install mysql-server php5-mysql
Press Y to continue the install.


Replace the following string NewRootDatabasePassword with a secure password of your own choosing.

There is no space between the -p and the password on the second command.

mysqladmin -u root password NewRootDatabasePassword

mysqladmin -u root -h localhost password NewRootDatabasePassword -pNewRootDatabasePassword
We now need to create the Moodle database and Moodle user in MySQL.

The mysql command will prompt for your NewRootDatabasePassword (from above). Replace NewMoodleDatabasePassword with a secure password of your own choosing.

mysql -u root -p
> CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
> GRANT ALL PRIVILEGES ON moodle.* TO moodleuser@localhost IDENTIFIED BY 'NewMoodleDatabasePassword';
> GRANT SELECT,LOCK TABLES on moodle.* TO moodlebackup@localhost IDENTIFIED BY 'MoodleBackupPassword';
> FLUSH PRIVILEGES;
> QUIT
The above also creates a backup user moodlebackup so that you can use mysqldump to make database backups without accident.

Install Postgresql (skip MySQL)
At this point we'll need to log in again to the server and type:

sudo apt-get install postgresql-8.1 php5-pgsql
Press Y to continue the install.

We now need to create the database user 'moodleuser'.

sudo -u postgres createuser -D -A -P moodleuser
Enter in a NewMoodleDatabasePassword here, then answer 'N' to the question.

We now need to create the database 'moodle' for the user 'moodleuser'. You'll need to enter the password that you just created.

sudo -u postgres createdb -E utf8 -O moodleuser moodle
Let's now secure the postgresql database with an admin password.

sudo -u postgres psql template1
# ALTER USER postgres WITH PASSWORD 'NewAdminDatabasePassword';
# \q
Edit the file '/etc/postgresql/8.1/main/pg_hba.conf' and on line 79 change the words ident sameuser to md5.

sudo nano /etc/postgresql/8.1/main/pg_hba.conf
Restart the database so everything is fine.

sudo /etc/init.d/postgresql-8.1 restart
Install Apache
The following mod-security, ldap, and odbc libraries are optional.

sudo apt-get install apache2 libapache2-mod-php5 php5-gd

sudo apt-get install libapache2-mod-security php5-ldap php5-odbc
Restart Apache

sudo /etc/init.d/apache2 restart
Note: To install Moodle 2.0 for the current ubuntu, you need to install PHP from an external repository --Olli Savolainen 19:28, 10 April 2009 (UTC)

Install other software
On the command line, type:

sudo apt-get install openssh-server unattended-upgrades

sudo apt-get install unzip zip aspell-en aspell-fr aspell-de aspell-es

sudo apt-get install curl php5-curl php5-xmlrpc

sudo apt-get install clamav-base clamav-freshclam clamav
Press Y to continue the install after each of these apt-get commands.

The clamav package will support virus checking on file uploads into Moodle. May have to run it again to configure properly.

Additional languages are available for aspell.

Install Moodle
On the command line, type:

cd /var/www

sudo wget http://download.moodle.org/stable19/moodle-latest-19.tgz

sudo tar -zxf moodle-latest-19.tgz


----
in ubuntu 8.04 it should be:
sudo tar zxf moodle-latest-19.tgz
----

sudo mkdir /var/moodledata

sudo chown -R www-data:www-data /var/moodledata
where www-data is whatever user/group was created automatically when apache was installed.
We now need to edit the location of the default web site. On lines five and ten, replace /var/www/ with /var/www/moodle/. Restart Apache. (See page comments for more details on this instruction.)

sudo nano /etc/apache2/sites-available/default

sudo /etc/init.d/apache2 restart
Configure Moodle website
ifconfig (look for your server’s ip address on the 2nd line).

On another computer open a web browser and put in your server address. Make sure your web browser is set to accept cookies.

Complete the Moodle install using a secure username and password.

Go to a bar for a few hours.

Come back and tell your boss that you FINALLY got the test server running.

INSTALLATION PROCESS OPEN SOURCE

LINUX


INSTALLATION

This is a step-by-step installation procedure for Linux, specifically Ubuntu 8.04. This is only for those who are doing this for the first time. And those who have installed any other OS before will feel this really useless. But for the “others” who have not installed any OS, I hope this will be useful. All those who have previous experience in installation please go through this and point out the mistakes. I am trying to explain the installation procedure by which your can use dual booting, i.e. you can use both windows and Linux in the same computer. For that the computer should already have windows installed in it. You can’t install windows after linux and then use linux because Windows doesn’t detect Linux. But there is a procedure to do that too. By using SuperGRUB, you can do that. But I have not used it and knows nothing about how to do it. So its better to leave it at that. I heard its not that difficult. Arrange for a CD/DVD of Ubuntu 8.04 or the latest version available. It is sent for free to home for personal use by Canonical.Search “Ubuntu ShipIt” in Google for more details. Or download the image of Ubuntu 8.04 from net. Again search in Google for image links. I would recommend using torrent for downloading. Write the image to a CD/DVD. Turn on the computer and start the BIOS edit. Usually its DEL,F1,F2,… key to start the BIOS. There change the BOOT device priority and set CD Drive as NO.1. In most computers it will be the default setting. Save and quit BIOS, insert the CD and restart. The black screen with a choice for language appears. Select English or use others only if you are very comfortable with that language. I recommend english.

The computer will now boot from the CD/DVD. Now the black screen below will come. Click on the Install Ubuntu button.

Wait for some time while the Linux Kernel loading box cruises to 100%. Then the real installation procedures.begin. Its a 7 step process.



STEP 1:- The first step is the language selection. As usual select the English option. The click on the forward button to proceed.

STEP 2:- In this step you see a world map with a lots of dot and a question “Where are you”. They are asking for the time zone of your location. You just got to click on the the red dot near your place or on the drop down menu select it. For Indians the only option is Kolkatta GMT+5:30. Proceed FORWARD.

STEP 3:- The third step is the keyboard layout. Just click on your keyboard layout. In India we use the USA layout. If yours is different, you just got to select it and type on the box given below and see whether the same key as you press is appearing on the screen. Its another of the silly steps. Again FORWARD.

STEP 4:-If you ask me, this is the only difficult step of the whole installation procedure. But its not that difficult. After you do this once, its a piece of cake. Its a bit dangerous step because one mistake and you can lose your complete data in the hard disk. You get an option Guided or Manual. In guided they help you do it, but I would recommend you to take Manual because you get more flexibility here. When you press forward they scan the disk and the partition table comes. This table has the Device partitions, its type, mount point, format option and size used. Linux’s file system is ext3 and windows use fat32 and NTFS. Linux detects all these file systems. But windows doesn’t detect ext3. So for dual use its always good to use ext3 for only one partition in which Linux is installed and to use fat32 for all other partitions. Leave the partition where Windows is installed as such if you wish to facilitate dual boot. You can remove the rest of partitions and create new partitions. Create one partition in ext3 format and set the mount point as ‘/’ backslash. Its better to give around 5 GB for this partition. A swap area is also needed. The size of this should be around double of the size of your RAM. For most computers 1GB swap area would be sufficient. Create that partition, set its type as Swap area. This should be enough. Now press the FORWARD.

STEP 5:- This is again another of the simple step. “Who are you”. Give here your name, the login name and password for your account in the computer and a computer name, which is the name of your computer as seen by other computers in your network. Now click on Forward.

STEP 6:- Step 6 unfortunately has no screenshots. But again, this too is a very simple step. They ask whether you want to migrate your user settings like user accounts from your existing OS which would be Windows in most cases. I never select this option. But if its needed you can do it.

STEP 7:- “Ready to Install”. The most beautiful step of them all. You see all the selections you have made in the first six method and see an install button. You can verify them, change them if needed by going back. When all changes have been made, press on INSTALL button.

This should be it. Now they start the installation procedures. They set up the partitions, format it. Copies the necessary OS files into the / directory or root directory. It should take some time, around 15 min in the computer in which I installed.

When it reaches 100% you see this screen given below. ITS NOW TIME FOR CELEBRATIONS

Hang on!! Just a moment before the celebrations. They ask you to restart the machine before that. So click on the Restart now option and wait for restarting. You can remove the CD/DVD this time before booting because CD/DVD drive is

given the first priority. The booting up procedures can be seen now. Unlike in windows where you see a loading windows screen, here you see all the steps that are being done. There is also an option of booting like windows too. The login screen comes now. Login using the username and password given during installation.

The linux screen appears. The mind blowing beauty is bound to leave you speechless for a little while. But don’t be so for long.

START ENJOYING THE WONDERFUL OS. AND REMEMBER INSTALLATION SHOULD NOT BE TAKEN AS A HARD JOB. ITS QUITE AN INTERESTING JOB. WHENEVER NEW VERSIONS GET RELEASED TRY IT. Debian, Ubuntu, Mandriva, Red Hat, Kubuntu, Mint etc. are some of the mostly used Linux versions. From my limited knowledge I have felt Ubuntu as the most user-friendly linux OS, especially for those who are new to Linux. For programmers and computer students I would recommend Debian. “WELCOME TO THE FREE WORLD”.

INSTALLATION PROCESS

WINDOWS VISTA INSTALLATION

The best way to install Windows Vista is to do a clean install. It is not difficult to perform a clean installation. Before you perform the installation I recommend that you check Windows Vista System Requirments list to ensure that your hardware is supported by Vista. If you dont have Windows Vista drivers for all your hardware, it is a good idea to download all the drivers from the hardware manufacturers website and save all the necessary drivers on a CD-R before you start the installation.



Windows Vista DVD is bootable. In order to boot from the DVD you need to set the boot sequence. Look for the boot sequence under your BIOS setup and make sure that the first boot device is set to CD-ROM/DVD-ROM.



Step 1 - Place Windows Vista DVD in your dvd-rom drive and start your PC. Windows Vista will start to boot up and you will get the following progress bar.

Step 2 - The next screen allows you to setup your language, time and currency format, keyboard or input method. Choose your required settings and click next to continue.

Step 3 - The next screen allows you to install or repair Windows Vista. Since we are doing a fresh install we will click on "install now".

Step 4 - You can now type the product key that came with your Windows vista.

Step 5 - If you do not enter the product key you can still proceed with the installation in which case Windows will ask you which version of Vista you have purchased. Windows Vista Home Basic, Home Premium, Ultimate, Business etc. Select the version you have purchased and click next.



Please note, although you can select any version of Windows and proceed to next stage. It is not good idea to select a different version to the one you have purchased becuase you will not be able to activate Windows at a later stage. Windows Vista can detect which version you have purchased once you enter your product key.

Step 6 - Tick "I accept the licence terms" and press next.

Step 7 - Choose the type of installation you want to perform. You will notice that upgrade option is disabled as we have booted from the DVD-R. Therefore we can only select Custom (advanced) option which basicly installs a clean copy of Windows from scratch.

Step 8 - Choose where you would like to install Windows Vista. If you have a new upartitioned hard drive you would get your hard drive listed as shown on the image below. If have have an old hard drive with data or other partitions it will show up as logical drives. You can select the drive options (advaced) to format, delete, or create new partions. Because I am using a single new hard drive i will select next to continue. Windows will create a partition and format it using NTFS files system.

Step 9 - Windows starts the installation process and starts copying all the necessary files to your hard drive as shown on the image below. It will go through various stages of the setup and will reboot your system few times. When your PC reboots it attempts to boot from CD as its the first boot device. Do not press any key during the boot prompt so Windows Vista will continue with the installation by booting from your hard drive.


Step 10 - After installation copy process is complete you are presented with the Setup Windows dialogue box as show below. At this stage you need to choose a user name, password and a picture for your user account. The account you create here is the Administrator account which is the main account for your Windows Vista that has all the privilages. Click next continue.

Step 11 - Now you need to choose your computer name and desktop background. Click next to continue.

Step 12 - Choose wether your want to Help protect Windows automatically. Select "Use recommened settings" to continue

Step 13 - Review your time and date settings. Select your time zone, correct the date and time and click next to continue.

Step 14 - Windows now runs a benchmark type of application which checks the performance of your system. You will see a status bar at bottom which shows the progress. Once the process is complete you will be presented with the logon screen.

Step 15 - Finally you have the logon screen. Just type your password and press enter or click on the arrow to logon to Windows Vista for the first time.

Step 16 - Soon as you logon you will be presented with welcome centre. You can use the welcome centre to configure, customise, and update Windows vista.

Step 17 - Finally you need to check if all your hardware has been detected correctly. You can do so by checking your device manager. To access device manager click Start menu -> Control panel -> System -> Device manager. You will see all your hardware listed as shown below. You need to check if you have any yellow exclamtion marks next to the name of the device similar to "USB 10/100 LAN" on image below. This indicates the driver has not been installed for this device.


At this stage you need to install Windows Vista drivers by double clicking on "USB 10/100 LAN" or your device. The properties dialog box will appear. Click on Reinstall Driver. Then you can choose wether you want to install the driver from the internet (if available) or install manually from a CD or other media


Once you have removed all the yellow exclamtion marks from the device manager your Windows Vista configuration would be fully complete.


INSTALLATION PROCESS

ASC Windows 2000 Installation Process
Prerequisites for installation:
CD and floppies:
To install Windows 2000, the installation CD is needed. The instructions below list how to boot directly from the CD. However, if desired or necessary, the four floppies can be created by opening :\bootdisk\makeboot from the install CD and following the on screen instructions.
Cards and Drivers
During the installation process, a number of machine dependant drivers will be needed. Given the relative newness of Windows 2000, native drivers for most hardware exists. Other hardware drivers or updates to native drivers are available through Windows Update. Before beginning, though, make sure to know what kind of cards and drivers are necessary for the computer's
Ethernet Card
Video Card
Sound Card
Hard Drive Controller Card
For most new computers, these drivers will be included on CD or floppy. For reconditioned machines, finding the type of card may involve calling Micron or opening up the machine and searching for the drivers on the internet.
Computer name
The install will request a name for the computer. The current ASC convention is to name computers AAS####, with the numbers running sequentially. Before installing, call Hannah or Blaine at the ASC help desk 660-3186 to get the next name on the list.
Nonstandard Issues
Most of the instructions for installations involve accepting the defaults. An attempt will be made to point out these non-standard or ASC specific instructions by displaying them in red.
----------------------------------------------------------------------------------------------
1.BIOS Settings

Plug and Play needs to be enabled in the BIOS for Windows 2000 to function correctly.
For most machines, Plug and Play will be enabled by default. However, machines being upgraded from Windows NT should have had Plug and Play disabled. All machines should be checked, but these machines in particular.
To do this, turn on the computer and enter Setup by pressing some key, usually Delete or F2. Some very old machines will not display a key to press to enter Setup. In these cases, boot to DOS and try CTRL-ALT-S or ALT-S.
Once in, from the CMOS Setup, find the toggle for Plug and Play OS. Most machines can enable Plug and Play or not. In this case, set it to Yes. On the newer Microns or laptops, this toggle will display a list of operating systems. Choose the one corresponding to Windows 2000.
The install will proceed from CD, so the boot order needs to include CDROM.
The boot order also can be found in the BIOS settings, usually the BIOS Features Setup.
Ideally, the order should be A, CDROM, C. In practice, as long as the floppy and CD come before the hard drive, this will be sufficient for installation.
Note: The newest Microns have an option for choosing the boot device by pressing Esc at the Micron splash screen. Otherwise, if a bootable CD is in the drive, and boot from CD comes before the hard drive in the order, the message "Press any key to boot from CD" will appear for a few seconds.
After setting Plug and Play and boot order, save the changes to the BIOS.

2.Booting from CD

After saving changes to BIOS, insert the Windows 2000 Professional Installation CD and boot the computer from the CD.
After a few seconds of inspecting hardware, a blue, text-based "Windows 2000 Setup" screen will appear.
At the bottom, the message Press F6 if you need to install a third party SCSI or RAID driver... will appear. Press F6 if necessary, and install the drivers.
Note: This F6 step is necessary to install the Ultra driver.
If the computer contains no SCSI devices, the message will disappear after a few seconds and setup will begin loading files.
After finishing loading, a "Welcome to Setup" screen will appear, listing three installation options. Hit Enter to begin setting up Windows 2000.
The "Licensing Agreement" will appear. Click F8 to accept.
Note: Unlike Windows NT, it is not necessary to scroll to the bottom before accepting the agreement.

3.Disk Partitions

After accepting the licensing agreement, a list of partitions will appear.
Delete the existing partitions one at a time by highlighting the partition and pressing D, Enter then L. Repeat until all partitions have been deleted and only unpartitioned space remains.
Note: NTFS for Windows 2000 is different from NTFS for Windows NT. So even existing NTFS partitions need to be deleted and recreated.
Press Enter to choose the unpartitioned space for Windows 2000 installation. With this option, the partition will be made as large as possible in the unpartitioned space.
Note: Unlike Windows NT, there is not a 2GB limit on the boot partition in Windows 2000.
A "Formatting the partition..." screen will appear. Unlike Windows NT, the NTFS file system will be the default. Press Enter to begin formatting the partition with NTFS.
Note: *** We use NTFS instead of the FAT for security reasons. ***
After formatting, a "Setup is copying files..." screen appears as installation files are written to the hard drive.
Once finished copying, the installer will begin a 15 second countdown to automatic reboot.

4.Workstation Setup Part 2

After restarting, allow the machine to boot to the hard drive. This may require removing the CD.
After rebooting, a "Windows 2000 Professional Setup" window will appear. Click Next, or wait a few seconds for the Setup Wizard to begin on its own
After begining the wizard, an "Installing Devices" window will appear. Using its native drivers, the installer will begin installing the devices it finds.
Once the devices install, a "Regional Settings" window appears. Click Next to select the default US English locale and keyboard.
A "Personalize Your Software" window appears. Under "Name:" enter A&S Computing and under "Organization:" enter Duke University. Click Next.
A "Your Product Key" window will appear. Under "Product Key:" enter the 25 character key on the Installer jewel case. Then click Next.
A "Computer Name and Administrator Password" window appears.
Microsoft will attempt to provide a name. Instead, next to "Computer Name:" enter the name AAS#### you were given before beginning the 2000 installation.
Next to "Administrative password:" type the standard administrative password and again next to "Confirm password."
Click Next to continue.
A "Date and Time Settings" window will appear.
Next to "Date & Time," the date and time can be set if incorrect.
Next to "Time Zone," select (GMT - 5:00) Eastern Time (US&Canada) from the drop down menu.
Click Next to continue.

5.Networking Setup

A "Network Settings" window will appear while the installer installs the Windows 2000 native network card drivers.
After the drivers install, a "Choose settings" window will appear. Select Custom settings and click Next.
A "Network Components" window will appear. Highlight Internet Protocol (TCP/IP) and click Properties.
An "Internet Protocol (TCP/IP) Properties" window will appear.
Click Use the following IP address:. The options below will blacken in.
Next to "IP Address:" enter a temporary test IP. The computer's eventual permanent IP will be entered upon delivery to the user. Test IP's differ from subnet to subnet. For a list of test IP's in a given subnet call ASC at 660-3186.
Next to "Subnet Mask:" enter 255.255.255.0.
Next to "Default Gateway:" enter 152.3.XX.250 where XX is the subnet of the test IP. Again this will probably change upon delivery.
Click Advanced to enter other networking information.
An "Advanced TCP/IP Settings" window appears.
Click the DNS tab.
Under "DNS Service Addresses" click Add.
A "TCP/IP DNS Server" window appears. Enter 152.3.250.1 and click Add
Repeat and add 152.3.250.2 and 128.109.131.40.
Next to "DNS suffix for this connection:" enter aas.duke.edu.
Uncheck Register this connection's addresses in DNS.
Click the WINS tab.
Under "WINS Addresses" click Add.
A "TCP/IP WINS Server" window appears. Enter 152.3.10.232 and click Add
Repeat and add 152.3.28.232.
Uncheck Enable LMHOSTS Lookup.
Nothing needs changing under the "Options" tab. Click OK to close the Advanced TCP/IP Properties window.
The "Internet Protocols (TCP/IP) Properties" window will reappear. Click OK to finish TCP/IP properties.
The "Network Components" window will reappear.
Optional install: The IPX/SPX protocol can be installed at this time. IPX is only necessary for Novell, and the Novell Client installer will install it automatically, if it is not present. Whenever IPX is installed, however, the frame type needs to be changed to Ethernet II.
Click Next to finish installing and configuring Network Components.

6.Machine Domain Account

A "Workgroup or Computer Domain" window will appear. Eventually, ASC would like all NT and W2K machines to belong to the AASNT domain. This leaves a couple of options at this juncture:
If you have the capability to create domain accounts, and the machine is a one-time set up, create a computer account in the domain.
Click Yes, make this computer a member of the following domain:.
Below Workgroup or computer domain enter AASNT.
Click Next.
A "Join Computer to AASNT Domain" window will appear. Enter your NT domain user name and password and click OK.
If you do not have the capability to create domain accounts, or if multiple machines will be imaged from this one machine, leave the machine in a workgroup.
Click No, this computer is ... on a network without a domain.
Below Workgroup or computer domain enter AASNT.
Click Next.

7.Final Tasks

An "Installing Components" window will appear.
After the last networking components install, a "Performing Final Tasks" window will appear.
A checklist will mark the final tasks before installation of Windows 2000 completes.
A "Completing the Windows 2000 Setup Wizard" window appears. Remove any floppies and CDs and click Finish.

8.Network Identification Wizard

After reboot, a "Network Identification Wizard" window will appear.
Click Next to continue with the Wizard.
Different options will appear, depending on the machine's AASNT domain status.
Domain: A "User Account" window will appear.
Click Do not add a user at this time.
Click Next.
Workgroup: A "Users of this computer" window will appear.
Check Users must enter a user name and password....
Click Next.
A "Completeing the Network Identification Wizard" window will appear. Click Finish

9.Logging In

A "Welcome to Windows" window will appear. Click ctrl-alt-delete to bring up the login screen.
The login screen will default to Administrator as the user. Unlike Windows NT, even if the machine is a member of the AASNT domain, the default login will be to AAS#### (this computer). To change this, if desired, click Options.
Log into the machine as Administrator using the password selected during setup.
A "Getting Started with Windows 2000" window will appear. Uncheck Show this screen at startup and click Exit to begin using Windows 2000

10.Changing Virtual Memory

Under the "Start" menu, go to Settings and click Control Panel. Under the "Control Panel" window, open System.
A "System Properties" window will appear. Click the Advanced tab, then click Performance Options.
A "Performance Options" window will appear. Click Change.
A "Virtual Memory" window will appear. The C: drive will probably be the only disk. If not, under "Drive" select the C: drive.
Under "Paging file size for selected drive" change Initial Size to match Maximum Size. Then click Set.
Click OK to close the "Virtual Memory" window, OK to close the "Performance Options" window, then OK to close the "System Properties" window. Unlike NT, a reboot should not be necessary.

11.Internet Explorer 5.5

Windows 2000 installs with Internet Explorer (IE) 5.0. For security reasons, IE needs to be upgraded to 5.5 SP1. Fortunately, IE contains a Windows Update tool to make this easy, so open Internet Explorer
Running IE for the first time causes the Internet Connection Wizard to begin.
A "Welcome to the Internet Connection Wizard" window will appear. Check I want to set up my Internet connection manually... and click Next.
A "Setting up your Internet connection" window will appear. Check I connect through a local area network (LAN) and click Next.
A "Local area network Internet configuration" window will appear. Check Automatic discovery... and click Next.
A "Set Up Your Internet Mail Account" window will appear. Check No and click Next.
A "Completing the Internet Connection Wizard" window will appear. Click Finish to start IE. The "Connect to the Internet" shortcut should disappear from the desktop.
Once IE starts, under Tools, click Windows Update.
A "Security Warning" window appears like below: (the date may change as Windows Update writes new packages.)
Let your own paranoia guide you about "Always trust content from Microsoft." Click Yes to continue.
After checking for available updates, a list of updates will appear. By default the "Critical Updates Package" will be checked. Scroll down and click Internet Explorer 5.5 Service Pack 1 and Internet Tools.
The following message will appear
Click OK.
This will check "Internet Explorer 5.5" and uncheck and gray out every other option. Click Download to select IE5.5.
A "Download Checklist" frame will appear in the browser window. Scroll down and click Start Download.
A "License Agreement" window will appear. Click Yes to accept the agreement and begin the download of the installer.
A "Welcome to Setup for Internet Explorer..." window will appear. Check I accept the agreement and click Next.
After initializing, a "Windows 2000 Install" window will appear. Click Next to begin installing the only option available. The program will begin downloading and installing.
A reboot prompt will appear. Click Yes to reboot and complete the installation

12.Windows 2000 Service Pack 1 (SP1)

Once Internet Explorer 5.5 (IE 5.5) is installed, restart IE 5.5 and click Windows Update under the Tools menu again.
The "Windows Update" home page will appear. In the left hand frame, under Windows Update Homepage click Product Updates.
After checking for available updates, a list of updates will appear. By default the "Critical Updates Package" will be checked. Scroll down and click Windows 2000 Service Pack 1.
The following message will appear:
Click OK.
This will check "Windows 2000 Service Pack 1" and uncheck and gray out every other option. Click Download to select SP1.
A "Download Checklist" frame will appear in the browser window. Scroll down and click Start Download.
A "License Agreement" window will appear. Click Yes to accept the agreement and begin the download of the installer.
A "Windows 2000 Service Pack Setup" window will appear. Click Accept the Licensing Agreement.
The "Install" button will blacken in. Click Install to start.
An "Installation complete" window will appear when files have finsihed copying. Click Exit.
A reboot prompt will appear. Click Yes to reboot and complete the installation.

13.Critical Updates

Once Service Pack 1 (SP1) for Windows 2000 is installed, again go to Product Updates, under Tools, Windows Update in IE5.5.
By default, the Critical Updates Package will be checked. Scroll down and also select Windows 2000 Compatibility Issues and High Encryption Pack for Windows 2000.
The bottom of the list will include any updated drivers for the hardware detected on the machine. Click these updated drivers, if they exist.
Click Download to select all the checked packages for download.
A "Download Checklist" frame will appear in the browser window. Scroll down and click Start Download.
A "License Agreement" window will appear. Click Yes to accept the agreement and begin the download of the installer.
After the files download, a reboot prompt will appear. Click Yes to reboot and complete the installation.
Note: Windows Update is the main way to update and install patches for Windows 2000 and other Microsoft products. Critical updates and other security measures come out from time to time, thus Windows Update will need to be run periodically to ensure the securest possible machine.

14.Other Hardware Drivers

Once Windows 2000 and Internet Explorer have been patched, install other hardware controllers. These include software like WinDVD player, Iomega Tools for Jaz and Zip drives, and EZ CD Creator for Rewritable CD players.
Next, install any audio, video, or controller card drivers for Windows 2000 that came with the machine that may be newer than the native drivers and not included in Window Update.

15.Install Applications

Standard applications as well as user specified applications need to be installed.
Note: Shortcuts on the desktop need to be accessable to everyone. Some installation programs create a desktop shortcut, but place it in the Administrator desktop folder. If the shortcut is not in the All Users desktop folder, it probably does not have the proper permissions for all users to see and execute it. To ensure everyone can see and use the shortcut, or any time a shortcuts is created, right click on the executable program. From the menu that appears, click Create Shortcut. Then copy the Shortcut to ... to the directory C:\Documents and Settings\Profiles\All Users\Desktop and rename it, if desired.
These standard applications need installing and configuring:
Novell 4.8, WinZip 8.0, McAfee 4.5 w/SP, NS4.76+Real Player, Teraterm, WS_FTP, Acrobat Reader 4.05, stunnel, VNC.
Note: Many of these involve changing permissions or other attention to function correctly with Windows 2000. Check the individual application installation instructions (coming soon!) for W2K peculiarities.
These optional applications may need to be installed, depending on the user needs:
MS Office, Word Perfect, Meeting Maker, Filemaker, Dreamweaver, PageMaker, PhotoShop, mail clients.

16.Post Installation Tips and Tricks

After installation, these post-installation processes need to run:
Manipulating domain users and groups.
Setting up security and auditing policies.
Optional Windows 2000 installs, including TCP/IP printing alternative.
Registry hacks, backing up registry, ERD.

Thursday, August 27, 2009

RESOURCE ALLOCATION GRAPH

RESOURCE ALLOCATION GRAPH

1) A RESOURCE ALLOCATION GRAPH



--resource 2 holding an instance of process 2 and process 1

--process 1 request instances of resource 1 and process 2 request instance of resource 3.

--resource 1 is holding an instance of process 2

--resource 3 is holding an instance of process 3

--and resource 4 is a resource type with 3 instances.


2)RESOURCE ALLOCATION GRAPH WITH A DEADLOCK

--resourse 2 is holding an instances of process 1 and process 2


--process 1 request instance of resource 1


--resource 1 is holding an instances of process 2


--process 2 request instance of resource 3


--resource 3 is holding an instance of process 3


--process 3 request instance of resource 2


--and resource 4 is a resource type with a 3 intances

3) RESOURCE ALLOCATION GRAPH WITH A CYCLE BUT NO DEADLOCK

--process 1 request instances of resource 1

--resource 1 is holding an instance of process 2 and process 3

--process 3 is request instance of resource 2

--and resource 2 request instance of process 4

4) RESOURCE ALLOCATION GRAPH FOR DEADLOCK AVOIDANCE



--resource 1 is holding an instance of process 1

--process 2 request an instance of resource 1

--process 1 and process 2 request instance of resource 2

5) UNSAFE STATE IN RESOURCE ALLOCATION GRAPH

--resource 1 is holding an instance of process 1

--process 2 request an instance of resource 1

--process 1 request instance of resource 2

--resource 2 is holding an instance of process 2

RESOURCE ALLOCATION GRAPH

RESOURCE ALLOCATION GRAPH-
-a set of vertices V and a set of edges E.
--v is partitioned into two types:
-P={P1,P2....Pn},the set consisting of all the processes in the system,
-R={R1,R2....Rm},the set consisting of all resource types in the system.
--requests edge-directed edge P1->R1
--assignment edge-directed edge R1->P1





how would you know if there's a deadlock based on the resource allocation graph?

-if the graph contains no cycle=>no deadlock
-if the graph contains a cycle-
---if only one instance per resource type,then deadlock.
---if several instance per resource type.possibility of deadlock.

Thursday, August 20, 2009

DEADLOCK

Deadlock Recovery-
Abort all deadlock processes and release resource - too drastic - will lead to loss of work
Abort one process at a time - releasing resources until no deadlock How do we determine which process to abort first ? - priority ordering, process which has done least work
Selectively restart processes from a previous checkpoint i.e. before it claimed any resources difficult to achieve - sometimes impossible
Successively withdraw resources from a process and give to another process until deadlock is broken. How to choose which processes and which resources ?
1.Complex decisions due to the large number of processes present within a system
2.Difficult to automate
3.Use Operator to resolve conflicts - BUT this requires the operator to have skill and understanding of what processes are actually doing

DEADLOCK

DEADLOCK DETECTION-

The system may enter a deadlock state.
The system needs:
-an algorithm that periodically determines whether a deadlock has occured in the system.
-a procedure to recover from a deadlock.

TWO algorithms:
-One instance per resource type.
-Multiple instances per resource type.

DEADLOCK

Deadlock prevention
• Attack mutual exclusion– we always want to minimize the number ofnon-sharable resources, but it is notusually possible to eliminate all of them.
• Attack the no preemption condition– cannot usually take a resource away froma process.
• Attack hold and wait
– require each process to request and beallocated all resources before it beginsexecuting
– before requesting a new resource releaseall locks on other resources and reacquire
– Problems: low resource utilization,starvation
• Attack circular wait.
– This is where most of the effort ofdeadlock prevention is focused.
– Design a hierarchy of lock acquisition suchthat there are no cycles.
– A great idea in theory, but difficult toimplement in practice because theunderlying code does not usually follow anacyclic hierarchy.

DEADLOCK

Methods for Handling Deadlock
• Prevent– write code such that the necessary conditions cannever hold simultaneously
• Avoid– dynamically ensure that a deadlock state is notreachable.
• Detect and recover– allow deadlock but provide mechanisms to detectit and recover (e.g., kill a process)
• Ignore (ostrich approach)– pretend they cannot occur and reboot if they do.

DEADLOCK

Deadlock Characterization
Necessary conditions:
1) Mutual exclusion:
• at least one shared resource is held
2) Hold and wait:
• a process must be holding at least one resource andwaiting for another
3) No preemption:
• cannot steal a resource away from a process
4) Circular wait:
• E.g., A is waiting for B who is waiting for C who iswaiting for A.

Thursday, August 13, 2009

REAL-TIME SCHEDULING

REAL-TIME SCHEDULING

--Static table-driven approach
For periodic tasks.
Input for analysis consists of : periodic arrival time, execution time, ending time, priorities.
Inflexible to dynamic changes.
General policy: earliest deadline first.

--Static priority-driven preemptive scheduling
For use with non-RT systems: Priority based preemptive scheduling.
Priority assignment based on real-time constraints.
Example: Rate monotonic algorithm


--Dynamic planning-based scheduling
After the task arrives before execution begins, a schedule is prepared that includes the new as well as the existing tasks.
If the new one can go without affecting the existing schedules than nothing is revised.
Else schedules are revised to accommodate the new task.
Remember that sometimes new tasks may be rejected if deadlines cannot be met.

--Dynamic best-effort scheduling: yused in most commercial RTs of today ytasks are aperiodic, no static scheduling is possible ysome short-term scheduling such as shortest deadline first is used. yUntil the task completes we do not know whether it has met the deadline.

REAL-TIME SCHEDULING

MULTI-PROCESSOR SCHEDULING

• Why use a multiprocessor?

-To support multiprogramming

- Large numbers of independent processes

-Simplified administration

-E.g. CDF wolves, compute servers

• To support parallel programming

- “job” consists of multiple cooperating/communicating threads and/or processes

-Not independent!

• Given a set of runnable threads, and a set of CPUs, assign threads to CPUs

• Same considerations as uniprocessorscheduling

• Fairness, efficiency, throughput, response time…

• But also new considerations

-- Ready queue implementation

--Load balancing

-- Processor affinity

THREAD SCHEDULING

Thread Scheduling

In our introduction to how threads work, we introduced the thread scheduler, part of the OS (usually) that is responsible for sharing the available CPUs out between the various threads. How exactly the scheduler works depends on the individual platform, but various modern operating systems (notably Windows and Linux) use largely similar techniques that we'll describe here. We'll also mention some key varitions between the platforms.
Note that we'll continue to talk about a single thread scheduler. On multiprocessor systems, there is generally some kind of scheduler per processor, which then need to be coordinated in some way. (On some systems, switching on different processors is staggered to avoid contention on shared scheduling tables.) Unless otherwise specified, we'll use the term thread scheduler to refer to this overall system of coordinated per-CPU schedulers.

Across platforms, thread scheduling1 tends to be based on at least the following criteria:
.a priority, or in fact usually multiple "priority" settings that we'll discuss below;
.a quantum, or number of allocated timeslices of CPU, which essentially determines the amount of CPU time a thread is allotted before it is forced to yield the CPU to another thread of the same or lower priority (the system will keep track of the remaining quantum at any given time, plus its default quantum, which could depend on thread type and/or system configuration);
.a state, notably "runnable" vs "waiting";
.a metrics about the behaviour of threads, such as recent CPU usage or the time since it last ran (i.e. had a share of CPU), or the fact that it has "just received an event it was waiting for".
Most systems use what we might dub priority-based round-robin scheduling to some extent. The general principles are:
a thread of higher priority (which is a function of base and local priorities) will preempt a thread of lower priority;
otherwise, threads of equal priority will essentially take turns at getting an allocated slice or quantum of CPU;
there are a few extra "tweaks" to make things work.

States

Depending on the system, there are various states that a thread can be in. Probably the two most interesting are:
runnable, which essentially means "ready to consume CPU"; being runnable is generally the minimum requirement for a thread to actually be scheduled on to a CPU;
waiting, meaning that the thread currently cannot continue as it is waiting for a resource such as a lock or I/O, for memory to be paged in, for a signal from another thread, or simply for a period of time to elapse (sleep).
Other states include terminated, which means the thread's code has finished running but not all of the thread's resources have been cleared up, and a new state, in which the thread has been created, but not all resources necessary for it to be runnable have been created. Internally, the OS may distinguish between various different types of wait states2 (for example "waiting for a signal" vs "waiting for the stack to be paged in"), but this level of granularity is generally not available or so important to Java programs. (On the other hand, Java generally exposes to the programmer things the JVM can reasonly know about, for example, if a thread is waiting to acquire the lock on a Java object— roughly speaking, "entering a synchronized

Monday, August 10, 2009

DIFFERENT CPU SCHEDULING ALGORITHMS

First Come, First Served (FCFS)
-Non-preemptive
-Treats ready queue as FIFO.
-Simple, but typically long/varying waiting time.
Shortest Job First (SJF)
-Give CPU to the process with the shortest next burst
-If equal, use FCFS
-Better name: shortest next cpu burst first
Round-Robin (RR)
-FCFS with Preemption
-Time quantum (or time slice)
-Ready Queue treated as circular queue
Shortest Remaining Time (SRT)
-Preemptive version of shortest process next policy
-Must estimate processing time

Thursday, July 30, 2009

Threads

Threads
Modern OSes (Mach, Chorus, NT, modern Unix)
separate the concepts of processes and threads
◆ The thread defines a sequential execution stream within a
process (PC, SP, registers)
◆ The process defines the address space and general process
attributes (everything but threads of execution)
A thread is bound to a single process
◆ Processes, however, can have multiple threads
Threads become the unit of scheduling
◆ Processes are now the containers in which threads execute
◆ Processes become static, threads are the dynamic entities

>SINGLE THREADED PROCESS

Single threaded programs have one path of execution,can perform only one task at a time, and have to finish each task in sequence before they can start another, For most programs, one thread of execution is all you need, but sometimes it makes sense to use multiple threads in a program to accomplish multiple simultaneous tasks.

>MULTI-THREADED PROCESS

have two or more paths of execution, 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

INTERPROCESS COMMUNICATION

INTERPROCESS COMMUNICATION-Interprocess communication (IPC) is a set of programming interfaces that allow a programmer to coordinate activities among different program processes that can run concurrently in an operating system. This allows a program to handle many user requests at the same time. Since even a single user request may result in multiple processes running in the operating system on the user's behalf, the processes need to communicate with each other. The IPC interfaces make this possible. Each IPC method has its own advantages and limitations so it is not unusual for a single program to use all of the IPC methods.

>••DIRECT COMMUNICATION
• Sender/receiver refer to each other, as seen before
• Properties of communication link
– Link is established automatically between communicating processes
– Link is associated with exactly two processes
– Exactly one link for every pair of processes
• Communication is symmetric (above) or asymmetric
– send(P,m) // send a message to P
– receive(&id, m) // receive from any process, set id to sender


>••INDIRECT COMMUNICATION
• Communication via mailboxes (or ports)
• Processes communicate by putting and taking messages in/from mailboxes
– send(A, m) and receive(A,m)
• Properties of communication link
– A link is established between two processes, if they share a mailbox
– Link maybe associated with more than two processes
– A number of different links may exist between any pair of processes; each one a separate mailbox

>••SYNCHRONIZATION
Message passing maybe blocking or non-blocking(synchronous or asynchronous)

>>••BLOCKING SEND
sender blocked until message is received by receiver (or by mailbox)
>>••NONBLOCKING SEND
sending process resumes operation right after sending
>>••BLOCKING RECEIVE
receiver blocks until message is available
>>••NONBLOCKING RECEIVE
receiver retrieves a valid message or returns an error code
>••BUFFERING
• The mechanism that buffers messages (a.k.a. queue) may have the following properties
– Zero capacity: queue has length 0, no messages can be outstanding on link, sender blocks for message exchange
– Bounded capacity: queue has length N, N messages can be in queue at any point in time, sender blocks if queue is full, otherwise it may continue to execute
– Unbounded capacity: queue has infinite length, sender never blocks

>>••ZERO CAPACITY
queue has length 0, no messages can be outstanding on link, sender blocks for message exchange
>>••BOUNDED CAPACITY
queue has length N, N messages can be in queue at any point in time, sender blocks if queue is full, otherwise it may continue to execute
>>••UNBOUNDED CAPACITY-
queue has infinite length, sender never blocks

>••PRODUCER-CONSUMER EXAMPLE

>>••PRODUCER-
Producer picks up an empty message/slotand send back an item produced
>>••CONSUMER-
Consumer sends N empty messages (i.e., slots)
Consumer receives an item and sends back an emptymessage (i.e., a slot)
Messages sent, but not received are buffered by OS.

Thursday, July 16, 2009

INTER PROCESS COMMUNICATION

INTER PROCESS COMMUNICATION-Interprocess Communication (IPC)Mechanism for processes to communicate and to synchronize their actions
:Message system– processes communicate with each other without resorting to shared variables.
:IPC facility provides two operations
>>send(message) –message size fixed or variable
>>receive(message)
:If P and Q wish to communicate, they need to
>> establish a communication link between them
>> exchange messages via send/receive
:Implementation of communication link
>> physical (e.g., shared memory, hardware bus) considered later
>> logical (e.g., logical properties) now

COOPERATING PROCESS

COOPERATING PROCESS-
:Independent process cannot affect or be affected by the execution of another process.
:Cooperating process can affect or be affected by the execution of another process
: Advantages of process cooperation
>Information sharing
>Computation speed-up
>Modularity
>Convenience

OPERATION'S ON PROCESSESS

PROCESS CREATION
:Parent process creates children processes, which, in turn create other processes, forming a tree of processes.
:Resource sharing
> Parent and children share all resources.
> Children share subset of parent’s resources.
> Parent and child share no resources.
: Execution
>Parent and children execute concurrently.
> Parent waits until children terminate.
:Address space
> Child duplicate of parent.
> Child has a program loaded into it.
: UNIX examples
> fork system call creates new process
> fork returns 0 to child , process id of child for parent
> exec system call used after a fork to replace the process’ memory space with a new program.

PROCESS TERMINATION

:Process executes last statement and asks the operating system to delete it (exit).
>Output data from child to parent (via wait).
> Process’ resources are deallocated by operating system.
: Parent may terminate execution of children processes (abort).
> Child has exceeded allocated resources.F
>Task assigned to child is no longer required.
> Parent is exiting.
>>Operating system does not allow child to continue if its parent terminates.
>> Cascading termination.
: In Unix, if parent exits children are assigned init as parent

PROCESS SCHEDULING

SCHEDULING QUEUE'S

:Job queue – set of all processes in the system.
: Ready queue – set of all processes residing in main memory, ready and waiting to execute. :Device queues – set of processes waiting for an I/O device.
: Processes migrate between the various queues.

SCHEDULERS

:Long-term scheduler (or job scheduler) – selects which processes should be brought into the ready queue
:Short-term scheduler (or CPU scheduler) – selects which process should be executed next and allocates CPU.
:Short-term scheduler is invoked very frequently (milliseconds) => (must be fast).
: Long-term scheduler is invoked very infrequently (seconds, minutes)=> (may be slow). The long-term scheduler controls the degree of multiprogramming.
Processes can be described as either:
I/O-bound process – spends more time doing I/O thancomputations, many short CPU bursts.
CPU-bound process – spends more time doing computations; few very long CPU bursts.

CONTEXT SWITCH
:When CPU switches to another process, the system must save the state of the old process and load the saved state for the new process.
: Context-switch time is overhead; the system does no useful work while switching.
:Time dependent on hardware support.

THE CONCEPTS OF PROCESS IN O.S.

PROCESS CONCEPTS- An operating system executes a variety of programs:
Batch system – jobs
Time-shared systems – user programs or tasks
Textbook uses the terms job and process almost interchangeably.
Process – a program in execution; process execution must progress in sequential fashion.
A process includes:
: program counter
: stack
:data section


PROCESS STATE- As a process executes, it changes STATES

new: The process is being created.
running: Instructions are being executed.
waiting: The process is waiting for some event to occur.
ready: The process is waiting to be assigned to a processor
terminated: The process has finished execution.

PROCESS CONTROL BLOCK-Process Control Block (PCB)
Information associated with each process.
: Process ID
:Process state
:Program counter
:CPU registers
:CPU scheduling information
:Memory-management information
: Accounting informationn
:I/O status information

TRENDS-

Thursday, July 9, 2009

QUIZ NUMBER 3

1.) WHAT ARE THE MAJOR ACTIVITIES OF THE OPERATING SYSTEM WITH REGARDS TO PROCESS MANAGEMENT.


  • PROCESS CREATION AND DELETION
  • PROCESS SUSPENSION AND RESUMPTION
  • PROVISION OF MECHANISM FOR:

-PROCESS SYNCHRONIZATION

-PROCESS COMMUNICATION

-DEADLOCK HANDLING

2.)WHAT ARE THE MAJOR ACTIVITIES OF THE OPERATING SYSTEM WITH REGARDS TO MEMORY MANAGEMENT.

  • KEEP TRACK OF W/C PARTS OF MEMORY ARE CURRENTLY BEING USED AND BY WHOM.
  • DECIDE W/C PROCESSES TO LOAD WHEN MEMORY SPACES BECOMES AVAILABLE.
  • ALLOCATE AND DEALLOCATE MEMORY SPACE AS NEEDED.

3.)WHAT ARE THE MAJOR ACTIVITIES OF THE OPERATING SYSTEM WITH REGARDS TO SECONDARY STORAGE MANAGEMENT.

  • FREE SPACE MANAGEMENT
  • STORAGE ALLOCATION
  • DISK SCHEDULING

4.)WHAT ARE THE MAJOR ACTIVITIES OF THE OPERATING SYSTEM WITH REGARDS TO FILE MANAGEMENT.

  • FILE CREATION AND RELATION
  • DIRECTORY CREATION AND DELETION
  • SUPPORT OF PRIMITIVES FOR MANIPULATING FILES AND DIRECTORIES
  • MAPPING FILES ONTO SECONDARY STORAGE
  • FILE BACKUP ON STABLE(VOLATILE)STORAGE MEDIA

5.)WHAT ARE THE PURPOSE OF COMMAND INTERPRETER

-IT SERVES AS THE INTERFACE BETWEEN THE USER AND THE O.S

-ITS FUNCTION IS TO GET AND EXECUTE THE NEXT COMMAND STATEMENTS.

-IT DEALS WITH:

  • PROCESS CREATION AND MANAGEMENT
  • I/O HANDLING
  • SECONDARY-STORAGE MANAGEMENT
  • MAIN-MEMORY MANAGEMENT
  • FILE-SYSTEM ACCESS
  • PROTECTION
  • NETWORKING

- PROGRAM THAT READ AND INTERPRETS CONTROL STATEMENTS IS CALLED VARIOUSLY:

  • COMMAND LINE INTERPRETER
  • SHELL IN (UNIX)



Tuesday, July 7, 2009

SYSTEM BOOT

>SYSTEM BOOT--->
One of the most important functions that the BIOS plays is to boot up the system. When the PC is first turned on, its main system memory is empty, and it needs to find instructions immediately to tell it what to run to start up the PC. These it finds within the BIOS program, because the BIOS is in read-only permanent memory and so is always available for use, even when the rest of system memory is empty.
This section takes a look at what is involved in booting the PC, including a discussion of the steps in the system boot process, and a look at the power-on self-test (POST) that is conducted whenever the system starts up

SYSTEM GENERATION

- Operating systems are designed to run on any of a class of machines; the system must be configured for each specific computer site- SYSGEN program obtains information concerning the specific configuration of the hardware system- Booting
– starting a computer by loading the kernel- Bootstrap program
– code stored in ROM that is able to locate the kernel, load it into memory, and start its execution

Virtual Machine

>Virtual Machine--->A virtual machine, simply put, is a virtual computer running on a physical computer. The virtual machine emulates a physical machine in software. This includes not only the processor but the instruction set, the memory bus, any BIOS commands and critical machine hardware such as the system clock and and DMA hardware. Depending upon the machine peripheral devices are generally virtualized including storage devices like floppy drives, hard drives and CD drives. Video, keyboard and mouse support are also common. A virtual machine must look and act just like the real thing so standard software, like operating systems and applications, can run without modification.

>Benefits--->Virtual machines have been around for a long time but they really have not become common place in many development shops. It is unfortunate since virtual machines provide so many benefits to developers and testers alike. This article will discuss some of the benefits of virtual machines and review two of the most popular virtual machine software packages available for Windows.


>Examples--->

Thursday, July 2, 2009

SYSTEM STRUCTURES

Simple Structure
-->View the OS as a series of levels
-->Each level performs a related subset of functions
-->Each level relies on the next lower level to perform more primitive functions
-->This decomposes a problem into a number of more manageable subproblems
Layred Approach
The operating system is divided into a number of layers (levels), each built on top of lower layers. The bottom layer (layer 0), is the hardware; the highest (layer N) is the user interface.With modularity, layers are selected such that each uses functions (operations) and services of only lower-level layers.A process is a program in execution. A process needs certain resources: CPU time, memory (address space), files, and I/O devices, to accomplish its task.

SYSTEM CALLS

>PROCESS CONTROL---> is a statistics and engineering discipline that deals with architectures, mechanisms, and algorithms for controlling the output of a specific process. See also control theory.For example, heating up the temperature in a room is a process that has the specific, desired outcome to reach and maintain a defined temperature (e.g. 20°C), kept constant over time. Here, the temperature is the controlled variable. At the same time, it is the input variable since it is measured by a thermometer and used to decide whether to heat or not to heat. The desired temperature (20°C) is the setpoint. The state of the heater (e.g. the setting of the valve allowing hot water to flow through it) is called the manipulated variable since it is subject to control actions


>FILE MANAGEMENT--->

Also referred to as simply a file system or filesystem. The system that an operating system or program uses to organize and keep track of files. For example, a hierarchical file system is one that uses directories to organize files into a tree structure.
Although the operating system provides its own file management system, you can buy separate file management systems. These systems interact smoothly with the operating system but provide more features, such as improved backup procedures and stricter file protection.

>DEVICE MANAGEMENT--->Device Management is a set of technologies, protocols and standards used to allow the remote management of mobile devices, often involving updates of firmware over the air (FOTA). The network operator, handset OEM or in some cases even the end-user (usually via a web portal) can use Device Management, also known as Mobile Device Management, or MDM, to update the handset firmware/OS, install applications and fix bugs, all over the air. Thus, large numbers of devices can be managed with single commands and the end-user is freed from the requirement to take the phone to a shop or service center to refresh or update.
For companies, a Device Management system means better control and safety as well as increased efficiency, decreasing the possibility for device downtime. As the number of smart devices increases in many companies today, there is a demand for managing, controlling and updating these devices in an effective way. As mobile devices have become true computers over the years, they also force organizations to manage them properly. Without proper management and security policies, mobile devices pose threat to security: they contain lots of information, while they may easily get into wrong hands. Normally an employee would need to visit the IT / Telecom department in order to do an update on the device. With a Device Management system, that is no longer the issue. Updates can easily be done "over the air". The content on a lost or stolen device can also easily be removed by "wipe" operations. In that way sensitive documents on a lost or a stolen device do not arrive in the hands of others.

>INFORMATION MAINTENANCE---> Information management (IM) is the collection and management of information from one or more sources and the distribution of that information to one or more audiences. This sometimes involves those who have a stake in, or a right to that information. Management means the organization of and control over the structure, processing and delivery of information.Throughout the 1970s this was largely limited to files, file maintenance, and the life cycle management of paper-based files, other media and records. With the proliferation of information technology starting in the 1970s, the job of information management took on a new light, and also began to include the field of Data maintenance. No longer was information management a simple job that could be performed by almost anyone. An understanding of the technology involved, and the theory behind it became necessary. As information storage shifted to electronic means, this became more and more difficult. By the late 1990s when information was regularly disseminated across computer networks and by other electronic means, network managers, in a sense, became information managers. Those individuals found themselves tasked with increasingly complex tasks, hardware and software. With the latest tools available, information management has become a powerful resource and a large expense for many organizations.

OPERATING SYSTEM SERVICE

>program execution – system capability to load a program into memory and to run it.
>I/O operations – since user programs cannot execute I/O operations directly, the operating system must provide some means to perform I/O.
>File-system manipulation – program capability to read, write, create, and delete files.
>Communications – exchange of information between processes executing either on the same computer or on different systems tied together by a network. Implemented via shared memory or message passing.
>Error detection – ensure correct computing by detecting errors in the CPU and memory hardware, in I/O devices, or in user programs.

SYSTEM COMPONENTS

>OPERATING SYSTEM PROCESS MANAGEMENT--->In operating systems, process is defined as “A program in execution”. Process can be considered as an entity that consists of a number of elements, including: identifier, state, priority, program counter, memory pointer, context data, and I/O request. The above information about a process is usually stored in a data structure, typically called process block.

>MAIN MEMORY MANAGEMENT--->Memory management is the act of managing computer memory. In its simpler forms, this involves providing ways to allocate portions of memory to programs at their request, and freeing it for reuse when no longer needed. The management of main memory is critical to the computer system.
Virtual memory systems separate the memory addresses used by a process from actual physical addresses, allowing separation of processes and increasing the effectively available amount of RAM using disk swapping. The quality of the virtual memory manager can have a big impact on overall system performance.
Garbage collection is the automated allocation, and deallocation of computer memory resources for a program. This is generally implemented at the programming language level and is in opposition to manual memory management, the explicit allocation and deallocation of computer memory resources.

>TITLE MANAGEMENT--->

>I/O SYSTEM MANAGEMENT--->

The I/O system consists of:
ô>A buffer-caching system

ô>A general device-driver interface

ô>Drivers for specific hardware devices

>SECONDARY STORAGE MANAGEMENT---> Since main memory (primary storage) is volatile and too small to accommodate all data and programs permanently, the computer system must provide secondary storage to back up main memory.
Most modern computer systems use disks as the principle on-line storage medium, for both programs and data.
The operating system is responsible for the following activities in connection with disk management:
Free space management
Storage allocation
Disk scheduling

>PROTECTION SYSTEM--->Protection System is rather anyware, i.e commercial software that applies extremely annoying ads to convince users of the need to buy it (buying Protection System means registering this program for at least one year period). We have to stress on that registering Protection System is no escape from its alerts as the hackers’ design is to get endless cashflow from user who once agreed to pay. That is, registered Protection System will ask for updates and extended registration. There is thus ho way to get rid of Protection System’s noisy ads but to remove Protection System entirely. to detect the infections harming your computer system and to remove Protection System automatically.

>COMMAND INTERPRETER SYSTEM--->A hardware accelerated I/O data processing engine to execute a minimum number of types of I/O data processing commands in response to a stimulus from a host computer. The data processing engine, referred to as a command interpreter includes a command queue, a logic unit, a multiple purpose interface, at least one memory, and a controlling state machine, that each operate in concert with each other and without software control. The types of commands executed by the command interpreter can include, but are not limited to, an Initialize, Copy, DMA Read, DMA Write, Cumulative Exclusive OR, Verify, Compare, and ECC Check. The execution of commands that specify a source data location and a destination data location are characterized by a plurality of reads to an internal cache from the source data location for each bulk write from the internal cache to the destination data location. The locations of the data operated on by the command interpreter include a local I/O controller memory and a non-local I/O controller memory accessible to the command interpreter by way of an I/O bus.

Thursday, June 25, 2009

11.Hardware Protection

>when executing in monitor mode,the operating system has unrestricted access to both monitor and user's memory.
>the load instructions for the base and limit registers are privileged instructions.
>I/O Protection- must ensure that a user program could never gain control of the compute in monitor mode.
>Memory Protection- must provide memory protection at least for the interrupt vector and the interrupt service routines.
-in order to have memory protection, add two registers that determine the range of legal addresses a program may access;
-base register-holds the smallest legal physical memory address.
-limit register-contains the size of a range.
>CPU Protection-to prevent a user programs gets stuck in infinite loop and never returning back to the os

Tuesday, June 23, 2009

1.Bootstrap program …

In computing, bootstrapping (from an old expression "to pull oneself up by one's bootstraps") is a technique by which a simple computer program activates a more complicated system of programs. In the start up process of a computer system, a small program such as BIOS, initializes and tests that hardware, peripherals and external memory devices are connected, then loads a program from one of them and passes control to it, thus allowing loading of larger programs, such as an operating system.
A different use of the term bootstrapping is to use a compiler to compile itself, by first writing a small part of a compiler of a new programming language in an existing language to compile more programs of the new compiler written in the new language. This solves the "chicken and egg" causality dilemma.

2. Difference of interrupt and trap and their use . . .

Trap is actually a software generated interrupt caused either by an error (for example division by zero, invalid memory access etc.), or by an specific request by an operating system service generated by a user program. Trap is sometimes called Exception. The hardware or software can generate these interrupts. When the interrupt or trap occurs, the hardware therefore, transfer control to the operating system which first preserves the current state of the system by saving the current CPU registers contents and program counter's value. after this, the focus shifts to the determination of which type of interrupt has occured. For each type of interrupt, separate segmants of code in the operating system determine what action should be taken and thus the system keeps on functioning by executing coputational instruction, I/O instruction,storage instruction etc.
a trap is a type of PDU used to report an alert or other asynchronous event about a managed subsystem. While interrupt is an asynchronous signal indicating the need for attention or a synchronous event in software indicating the need for a change in execution.

3.Monitor mode

Monitor mode, or RFMON (Radio Frequency Monitor) mode, allows a computer with a wireless network interface card (NIC) to monitor all traffic received from the wireless network. Unlike promiscuous mode, which is also used for packet sniffing, monitor mode allows packets to be captured without having to associate with an access point or ad-hoc network first. Monitor mode only applies to wireless networks, while promiscuous mode can be used on both wired and wireless networks. Monitor mode is one of the six modes that 802.11 wireless cards can operate in: Master (acting as an access point), Managed (client, also known as station), Ad-hoc, Mesh, Repeater, and Monitor mode.

4. User Mode

Every process started by Windows (with the exception of the System "process") runs in user mode. In this mode, programs cannot modify paging directly and so have no way of accessing other programs' memory except through API functions. Programs in user mode also cannot interfere with interrupts and context switching.

5. Device status table

Is there a way to get any third-party devices that are regularly sending SNMP traps to CIM7 to show up in the Device Status field relating to the trap severity? I am getting plenty of major error messages from one of my switches, but the device is still showing as normal. The status for systems on IM7 is determined by polling that system, not by events from it. For ProLiant systems this works well because we can get detailed status from them. For devices like switches, all we have is that it responded, so for that system the status will always be either green (its up) or red (its down.)

6. Direct memory access (DMA)

Direct memory access is system that can control the memory system without using the CPU. On a specified stimulus, the module will move data from one memory location or region to another memory location or region. While it is limited in its flexibility, there are many situations where automated memory access is much faster than using the CPU to manage the transfers. Systems like the ADC, DAC and PWM capturing all require frequent and regular movements of memory out of their respective systems. The DMA can be configured to handle moving the collected data out of the peripheral module and into more useful memory locations (like arrays). Only memory can be accessed this way, but most peripheral systems, data registers, and control registers are accessed as if they were memory. The DMA is intended to be used in low power mode because it uses the same memory bus as the CPU and only one or the other can use the memory at the same time.
The DMA system is organized into three largely independent parts. Though the three compete for the same memory bus, they have can be configured for independent triggers and memory regions.

7. Difference of RAM and DRAM

These terms all refer to different types of computer memory, or RAM - Random Access Memory. The "random" part means that any area of the memory can be communicated with while; DRAM is a computer's main memory that holds onto information for the mictorprocessor. The "D" stands for dynamic, meaning the RAM needs to have the information its holding continuously renewed or "refreshed".



8. Main memory

Refers to physical memory that is internal to the computer. The word main is used to distinguish it from external mass storage devices such as disk drives. Another term for main memory is RAM.
The computer can manipulate only data that is in main memory. Therefore, every program you execute and every file you access must be copied from a storage device into main memory. The amount of main memory on a computer is crucial because it determines how many programs can be executed at one time and how much data can be readily available to a program.


9. Storage Structure


One of the first decisions in designing a server is what persistent storage structures to use. This section discusses how we organized storage structures for the grid example. There are numerous ways to organized storage. The primary decision is where to store the information about each item on the grid. We first discuss the implemented design and then present a couple alternatives.


> Main memory- Refers to physical memory that is internal to the computer. The word main is used to distinguish it from external mass storage devices such as disk drives. Another term for main memory is RAM.
The computer can manipulate only data that is in main memory. Therefore, every program you execute and every file you access must be copied from a storage device into main memory. The amount of main memory on a computer is crucial because it determines how many programs can be executed at one time and how much data can be readily available to a program.
Because computers often have too little main memory to hold all the data they need, computer engineers invented a technique called swapping, in which portions of data are copied into main memory as they are needed. Swapping occurs when there is no room in memory for needed data. When one portion of data is copied into memory, an equal-sized portion is copied (swapped) out to make room.
Now, most PCs come with a minimum of 32 megabytes of main memory. You can usually increase the amount of memory by inserting extra memory in the form of chips.


>Magnetic Disk- magnetic disk - (computer science) a memory device consisting of a flat disk covered with a magnetic coating on which information is stored

>Moving head disk mechanism






















10. Storage Hierarchy
• Storage systems organized in hierarchy.
– Speed
– Cost
– Volatility

>Caching – copying information into faster storage system; main memory can be viewed as a cache for secondary storage. >Coherence and Consistency-Transactional Coherence and Consistency (TCC) offers a way to simplify parallel programming by executing all code in transactions. In TCC systems, transactions serve as the fundamental unit of parallel work, communication and coherence. As each transaction completes, it writes all of its newly produced state to shared memory atomically, while restarting other processors that have speculatively read from modified data. With this mechanism, a TCC-based system automatically handles data synchronization correctly, without programmer intervention. To gain the benefits of TCC, programs must be decomposed into transactions. Decomposing a program into transactions is largely a matter of performance tuning rather than correctness, and that a few basic transaction programming optimization techniques are sufficient to obtain good performance over a wide range of applications with little programmer effort.

Thursday, June 18, 2009

7. Diffferentiate the design issues of OS between a stand-alone PC and a workstation connected to a network.

6. Differentiate client-server systems and peer-to-peer systems.

With client to server, many people are downloading data from one central location - a one to many relationship.
With peer to peer, many people are downloading data from many locations - a many to many relationship.

5. Differentiate symmetric multiprocessing and asymmetric multiprocessing

In the symmetric multiprocessing design, each processor is able to access the entire memory map; there are no master or slave processors. In this case each processor is non-unique and has equal power. This means that they can share memory between themselves and can interact with each other directly, regardless of how many there are in the system. People commonly confuse these architectures and as such it is important to define the differences. while asymmetric multiprocessing or ASMP allows applications to run specific subtasks on processors separate from the "master" processor. ASMP computers are comprised of multiple physical processors that are unique, and thus not symmetrical. These processors are defined as either master or slave: master processors are more capable than slaves and are given full control over what the slave processors do. ASMP is not in use in the modern world as it was overtaken by symmetric multiprocessing (SMP), which became common.

4. Advantages of parallel systems.

3. What’s the difference between batch systems, multiprogrammed systems and time-sharing systems?

2. Explain the goals of O.S.

The goals of operating system is to execute user programs and make solving user problem easier and make computer system convenient to use.

1. What is the difference of OS in terms of user's view and system's view?

In users view PC are designed for ease of use and they are terminal connected to a mainframe that is designed to minimize resource utilization. And the workstation compromise between individual usability and resource utilization. While in system view as operating system as resource allocator and operating system as a control program.