CENG 425 System Programming
Spring 2006

Most recent announcement: Jun13

TIME

Monday

FRIDAY

    Contents

8:40-10:30


CENG425(T)B301/302

10:40-12:30



12:40-14:30



14:40-16:30



16:40-18:30

CENG425(L) MPLab




Instructor

Cem Özdoğan

office: Computer Engineering Department, 329-L
office hours: 13:00-17:00 Wednesday, or by appointment
office phone: 284 45 00 / 4010
email address: ozdogan@cankaya.edu.tr



Serkan Kefel

office:Computer Engineering Department, 316-A
office hours: 10:00-12:00 Monday
office phone: 284 45 00 / 349
email address: skefel@cankaya.edu.tr



Announcements

Watch this space for the latest updates. Last updated: 13.Haziran.2006 17:30 Term projects are accesible.

5.Haziran.2006 15:45 The date for the presentation of the term projects is Jun 09, 2006 at 12.00 in lecture hall A-319.

June 2, 2006 15:33 The possible date for the presentation of the term projects is Jun 06, 2006 at 13.00 in lecture hall A-319.

May 17, 2006 14:55 The last lecture planned for tomorrow (May 18) is postponed to the project presentation day due to the faculty meeting and unsuitable schedule.

The lab notes for the fourteenth week is published, see Course Schedule section.

May 12, 2006 10:41 The lecture notes for the thirteenth week is published, see Course Schedule section.

May 8, 2006 15:49 The lab notes for the thirteenth week is published, see Course Schedule section.

May 5, 2006 12:49 The lecture notes for the twelfth week is published, see Course Schedule section.

May 1, 2006 16:48 The lab notes for the twelfth week is published, see Course Schedule section.

April 27, 2006 17:43 Final exam date is announced and the lecture notes for the eleventh week is published, see Course Schedule section.

April 24, 2006 15:15 The lab notes for the eleventh week is published, see Course Schedule section.

April 21, 2006 13:15 The lecture notes for the tenth week is published, see Course Schedule section.

April 17, 2006 11:51 The lab notes for the tenth week is published, see Course Schedule section.

April 14, 2006 18:28 Some topics for the term project are taken (fcfs), see the list.

April 13, 2006 17:20 Deadline for the submission is postponed to lab. hour.

April 12, 2006 13:41 The first question in the nineth week's lab will be graded. It is due to lecture hour. You should send your program to me via email.

April 10, 2006 15:58 The possible topics for the term project are given;

  1. Bootstraping

  2. Device Drivers in Linux Yaman Çakmakçı

  3. Ext2 file system

  4. Journalling file systems Alp E. ÖZKUL

  5. Kernel Memory Allocator in Linux – Şenay Büyükarslan

  6. Low Level Synchronization in Linux

  7. MMU – Neslihan Nailli

  8. Micro Kernel – Z. Burak Ata

  9. Monolithic Kernel – Nevrez İmamoğlu

  10. Mounting File Systems in Linux

  11. Operating System and Keyboard – H. Emre Akkuş

  12. Operating System and Mouse

  13. Process Scheduling in Linux – M. Murat Ekici

  14. Page Tables in Linux

  15. Page Replacement Policy in Linux

  16. Reiserfs file system

  17. System Calls in Linux – B. Tuna Hünerli

  18. TLB – Çağatay Bal

  19. Virtual Memory in Linux – Gülistan Özdemir

  20. Virtual File System – Özgür Pekçağlıyan

April 10, 2006 15:48 The lab notes for the nineth week is published, see Course Schedule section.

March 31, 2006 11:01 The lecture notes for the seventh week is published, see Course Schedule section.

March 27, 2006 11:09 The lab notes for the sixth week is published, see Course Schedule section.

March 24, 2006 08:39 The lecture notes for the sixth week is published, see Course Schedule section.

March 20, 2006 10:47 The lab notes for the fifth week is published, see Course Schedule section.

March 17, 2006 13:51 The lecture notes for the fifth week is published, see Course Schedule section. For the fourthweek lab questions and other examples visit the page.

March 13, 2006 10:36 The lecture notes for the fourth week is modified, also the lab notes for the fourth week is published, see Course Schedule section.

March 10, 2006 14:42 The lecture notes for the fourth week is published, see Course Schedule section.

March 5, 2006 16:18 The lab notes for the third week is published, see Course Schedule section.

March 3, 2006 00:02 The lecture notes for the third week is published, see Course Schedule section.

February 27, 2006 16:25 The lab notes for the second week is published, see Course Schedule section.

February 24, 2006 01:33 In the first lecture, there will be first metting.



Overview

It is aimed to describe the concepts of the system programming by using Linux/Unix operating system.



Lecture Information

There is one group for lecturing and one group for lab sessions. The UNIX operating system will be introduced to you first in the lab sessions , later some concepts of the system programming by using Linux/Unix operating system will be studied by C codes and you will be responsible for writing codes, to be graded.

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.



Course Outline



Text Book

Required

Recommended

Mark Mitchell, Jeffrey Oldham, and Alex Samuel, Advanced Linux Programming, New Riders, 2001.



Online References

The web page www.advancedlinuxprogramming.com contains all the information related with the text book.

Grading Criteria

Week

Dates

Topic

Lecture Notes Acrobat

Laboratory Studies

Lectures

1

February 17, 2006

First Meeting

NA

NA

2

February 24, 2006

Getting Started

pdf

html

pdf

3

March 3, 2006

Writing Good GNU/Linux Software

pdf

html

pdf

4

March 10, 2006

Introduction to Shell Programming

pdf

html

pdf

5

March 17, 2006

Processes

pdf

html

pdf

6

March 24, 2006

Threads

pdf

html

pdf

7

March 31, 2006

Threads & Interprocess Communications

pdf

NA

9

April 14, 2006

Interprocess Communications & Devices

pdf

html

pdf

10

April 21, 2006

The /proc File System

pdf

html

pdf

11

April 28, 2006

System Calls & Inline Assembly Code

pdf

html

pdf

12

May 5, 2006

Secure Programming

pdf

html

pdf

13

May 12, 2006

Programming the User Interface I

pdf

html

pdf

14

May 19, 2006

Programming the User Interface II

pdf

html

pdf

Exams

Midterm

Term Project




Final

22 May 2006 11:00-13:00 B-306