TIME |
MONDAY |
WEDNESDAY |
Contents |
|
---|---|---|---|---|
9-12 |
CENG328(T) B309 |
CENG328(T) B301 |
||
13-16 |
CENG328(L) SUN |
CENG328(L) SUN |
||
16-19 |
|
|
||
Instructoroffice: Computer Engineering
Department, 329-L |
TA
|
Watch this space for the latest
updates. Last updated:
The all lecture notes as two-pages-in-one file is available.
Anyone wants to get KNOPPIX_V3.4-2004-05-17-EN.iso may ask to me.
Necessary information for compiling your modified java codes in Sun Lab is given. Anyone can ask to the technician for studying in the Sun Lab during Free Hours including weekends. For any problems about Free Hours in Sun Lab please inform me.
The code examples in C language for the first four labs are available, you are advised to study these codes for better understanding and exam purposes. Extract with the command “tar -zxvf lab1-4.tgz” in Unix then compile with the command “gcc -o dosya dosya.c”. For the codes including threads, compilation is as the following: “gcc -o dosya -lpthread dosya.c”. For problems, see me at the office hours.
For laboratory studies, see Course Schedule section. Modern Operating Systems Simulators is a collection of Java-based simulation programs which illustrate key concepts presented in the text Andrew S. Tanenbaum, Modern Operating System, Second Edition (Prentice-Hall, 2001). The software is designed for students and instructors using this text.
The tutorial link is active.
Ceng 328 is intended as a general introduction to the techniques used to implement operating systems and related kinds of systems software. Among the topics covered will be;
basic operating system structure
process and thread synchronization
process scheduling and resource management
process management (creation, synchronization, and communication);
deadlock prevention, avoidance, and recovery;
memory management techniques, main-memory management, virtual memory management
control of disks and other input/output devices;
file-system structure.
This course assumes familiarity with basic computer organization (e.g., processors, memory, and I/O devices). You will need to be able to program in Java / C (or C++) to perform the assignments in the course.
There are two groups for lecturing and three groups for lab sessions, you may attend any one of the lecture hours but not for lab sessions. Please attend your predefined lab sessions regularly. The UNIX operating system will be introduced to you first in the lab sessions , later some java or C codes will be executed to study the operating system features and you will be responsible for writing codes, to be graded.
In the beginning of the each lecture hour, you will have a quiz (15 minutes) for the previos week's subjects. There won't be any make-up for these quizes and they will have weight for the final grading.
Important announcements will be posted to the Announcements section of this web page above, so please check this page frequently. You are responsible for all such announcements, as well as announcements made in lecture.
Readings will be assigned in Modern Operating Systems, Second Edition by Andrew S. Tanenbaum, Prentice Hall, 2001.
Another recently used text book that covers the same material is Applied Operating Systems Concepts, Sixth Edition by Abraham Silberschatz, Peter Galvin, and Greg Gagne, John Wiley and Sons, 2003.
This text is only recommended rather than required. This book is useful for reference, for an alternative point of view.
Some materials and tutorials are given. Please inform me about the usefullness of the materials. Check this place for updates.
Some useful C++ links can be found here and here.
Notes on Java. The following references are available online at the Java home site.
There will be a midterm and a final exam, will count 20% and 40% of your grade, respectively.
Quiz: 15% (worst of the quizes will be discarded)
Lab: 15% (worst of the labs will be discarded)
Attendance is required and constitutes part of your course grade; 10%
Attendance is not compulsory, but you are responsible for everything said in class.
I encourage you to ask questions in class. You are supposed to ask questions. Don't guess, ask a question!
You may discuss homework problems with classmates (although it is not to your advantage to do so).
You can use ideas from the literature (with proper citation).
You can use anything from the textbook/notes.
The code you submit must be written completely by you.
The following schedule is tentative; it may be updated later in the semester, so check back here frequently.
Week |
Dates |
Topic |
Lecture Notes Acrobat |
Quizes |
Laboratory Studies&Grades |
|||||
---|---|---|---|---|---|---|---|---|---|---|
Lectures |
|
|||||||||
1 |
June 28-30, 2004 |
First Meeting, |
NA |
|||||||
|
||||||||||
2 |
July 5-7, 2004 |
|||||||||
3 |
July 12-14, 2004 |
Grading Lab |
|
|||||||
Midterm Exam |
|
|||||||||
4 |
July 19-21, 2004 |
html |
|
Grading Lab |
||||||
5 |
July 26-28, 2004 |
and |
html |
|
Grading Lab |
|
||||
Grading Lab |
|
|||||||||
Exams |
Project Presentations |
|||||||||
July 24, 2004 |
13.00-15.00 B309 |
|||||||||
Aug 2, 2004 |
16.30-18.30 B301 |