Operating Sytems (TC2008)

Notes:

Source Code:

Projects:

Requirements: Must be done during the first term of the semester, teams of two, source code and report required, due date: one class before the quarter exam.
For this first term, you will develop the project in Chapter two of the text book (Silberschatz) which you can find in the following link. You will hand in a comprehensive report explaining what you have learned in the exercise, proof of the code you implemented and a print screen or copy of the appropriate system log to show that your system call has been implemented. You must at least implement 3 distinct system calls of your choice.

Requierement: Must be completed before the second quarter exam, due date: One class before the quarter exam. You will develop the project in chapter three of the text book (Silberschatz) which you can find in the following link. You will hand in a comprehensive report explaining what you have learned in the exercise, proof of the code you implemented and a print screen or copy of the appropriate coding.

Third Quarter Project:

Research (HW):

Read the following article from Compuer Magazine (IEEE computer society). We will talk about in August 18th.

Read the following article from Compuer Magazine (IEEE computer society). We will talk about October 13th.

 

Laboratories:

Laboratory 08/14/2008: (due date same day)
Introduction to laboratory classes. During this hour you will be tought what will be expected of you during the semester in the laboratory. You will be intoruced to linux and the basic elements of its construction.a

Laboratory 08/21/2008:
Finish the exercises in the following tutorial: click here
You will be required to hand in via email (iescobar@itesm.mx) with subject:(Operativos tutorial 1), a detailed explanation of each command and examples of their use from your console session. Due date: (01/31/2008)

Laboratory 08/28/2008:

During this laboratory you will test the sample code in the upper section of this page. It is required for you to fully understand the use of fork to spawn new processes. In part two of this laboratory you will be required to search the different versions of the exec() command.

Laboratory 09/04/2008:

For this laboratory you will compile and test the multiple fork creation program stated above in the source code section. Later you will create the following program: " Develop a C program that will create 3 layers of children and 5 instances of children per layer. Each children will wait for a (true) random time before completing. At each layer the processees will print their ID and parents ID. The topmost father of all the processes will wait for the completion of the children of the lowest layer."

FInally you will start the following tutorial on user administration in linux: http://www.oreilly.com/catalog/debian/chapter/book/ch07_01.html

Laboratory

For this laboratory you will complete the previous tutorial on linux user administration. Once complete you will test the sample codes of shared memory and pthreads. For shared memory it is left as a challange to create a program that will in one process create a shared memory segment, and that new or children processes use it to pass messages between each other. One process will print messages the others will change the messages on the memory segment.

Laboratory :

Research: During this lab hour you will research on the following topic: "Operating System Scheduling Policies" focusing on the following three operating systems: Solaris, Windows XP, Linux. You will hand in a brief report by 03/06/2008 containing examples of each scheduling policy for each operating system.

Laboratory

For this laboratory you will research memory management in the following operating systems: Windows, Linux, Solaris, MAC(Darwin). A brief summary report should be handed in by the end of the day.

Laboratory

For this laboratory you will have two activities. The first is in relation with your final exam. You will design an operating system taking into account what you have learned in class and you will send a report via email with its specifications. Finally you will search through the web and find the "best" linux distribution available. You will send a brief comment via mail detailing why you chose the distribution you consider to be the "best".


Linux Distributions: