LECTURE |
SYLLABUS TOPICS TO BE COVERED
|
September 5, 7 |
-
Course organization over the semester
-
Basic concepts in operating systems. Functions of an
operating system.
-
Logical structure and memory layout of a process
-
Function of kernel and notion of system calls,
application programming interfaces.
-
System programs and Command Shell
-
See Lecture
Notes 1 on Moodle
Reference materials for the first two weeks:
From Silberschatz Book "Operating Systems Concept" (9th Edition)
Read Chapter 1
Read from Chapter 2: Section 2.1 through 2.7 |
September 14 |
- UNIX File, Directories, Links
- File system concepts, directory organization, file
access methods, directories and paths, working directory;
- File permissions and
attributes, users and groups, directories, hard and soft links
-
Basic UNIX commands (cp, mv, ls, cat, tail, head, more, pwd, cd, ps, ln,
umask etc)
- Environment variables, $variables, Doube/Single Quoted
Strings
-
See Lecture
Notes 2 on Moodle
- For file systems concepts refer to Chapter 10 from the
textbook by Silberschatz book
|
September 14 |
- I/O streams, stdin, stdout, stderr, I/O redirection
-
Notion of pipes; using joining commands using pipes
-
Shell variables, history
- Bash and Tcsh shells; shell scripting language
constructs for tcsh and bash scripting, shell syntax, shell variables, control structures;
regular-expression syntax; shell scripts; environment variables, search paths,
configuration files.
- Unix commands and command-line syntax; sources of information - man
pages, i
- files and directories; commands that operate on files and directories;
commands that give information on processes and the OS;
-
See Lecture
Notes 3 on Moodle
|
September 19, 21 |
|
September 21 |
- File system APIs and System calls for I/O and file operations -
open, close, read, write, seek, dup, fcntl, sync;
- Refer to Robins and Robins Book:
- Chapter 2 (Sections 2.3, 2.4, 2.5, 2.6)
- Chapter 4 (Sections 4.1, 4.2, 4.3)
- Chapter 5 (Sections5.1 and 5.2)
- PLEASE see the example programs on File I/O on Course
Webpage
-
See Lecture
Notes 5 on Moodle
Additional reference materials can be found in Chapter 10 from the textbook by Silberschatz
book "Operating
System Concepts" |
September 26 |
- File system System calls for I/O and file operations -
open, close, read, write, lseek, dup, fcntl, sync;
character devices and ioctl; inheritance of file descriptors between parent
and child processes; non-blocking and asynchronous I/O, use of select()
-
String operation in C
- C Library functions for File I/O Operations.
-
Error handling in C programs
- Example of a File copy
program
-
See Lecture
Notes 6 on Moodle
Additional reference materials can be found in Chapter 11 (File System
Interface) from the textbook by Silberschatz
book "Operating
System Concepts" |
September 28 |
Additional reference materials can be found in Chapter 11 from the textbook by Silberschatz
"Operating
System Concepts" (9th Edition) |
October 3, 5, 10, 12 |
- Process Management (4 lectures)
- Process lifecycle
and process states; process scheduling, process priority, interprocess
communication.
- System calls for process creation -
fork, exec, wait;
process priority; process memory image, process exit status; relationship between parent and child processes; zombies & daemons, background execution of a process;
-
See Lecture
Notes 8 on Moodle
|
October 10 |
|
October 12 |
|
October 19 |
FIRST MIDTERM EXAM |
October 17, 24, 26 |
- Concurrent Programming and Process Synchronization (3 lectures)
-
Threads
- Process
Synchronization
- Atomic operations, critical sections; synchronization and mutual exclusion;
- Mutual exclusion using shared variables
-
Hardware support for process synchronization
-
Semaphores
- Classical problems in
process synchronization: Producer-consumer problem, Reader-Writer Problem,
Dining Philosophers problem
-
See Lecture
Notes 11 on Moodle
|
October 31 November 2 |
- Concurrent Programming with POSIX Threads: ( 2 lectures
-
Creating, managing, terminating threads;
- Using POSIX mutex and condition variables;
- POSIX thread scheduling parameters;
-
See Lecture
Notes 12 and 3 on Moodle
|
November 7, 9 |
|
November 16 |
SECOND MIDTERM EXAM |
November 14, 21, 28, 30 |
Refer to Silberschatz, Galvin, Gagne Book Chapters
8 and 9
|
November 5, 7, |
|
December 12 |
|