COSC350 SYSTEM SOFTWARE, FALL 2025 (9/1/2025 ~ 12/12/2025)
Week |
Lecture Notes |
Announcement |
||
Week-01 (09/01/25 ~ 09/05/25) |
Note #0 .PDF · Introduction to System Software |
Note #0.1 .PDF · How to install VM for Linux on Window |
Note #1
.PDF ·
About
LINUX Operating System ·
What
is GNU/LINUX Project ·
Introduction
to C Programming ·
C
System Environment ·
C
compilers in LINUX ·
Linux
System Roadmap o
Header
files o
Libraries ·
Static
Libraries ·
Shared
Libraries |
No Lab This week |
Week-02 (09/08/25 ~ 09/12/25) |
Note #2 .PDF ·
What
is the shell ·
Simple
Bash Commands ·
Redirecting
Input and Output ·
Pipeline ·
Shell
Scripts |
Note #3 .PDF · Shell Syntax o Variables o Quoting o Environment Variables o Parameter Variables o Condition o The test or “[“ command |
|
|
Week-03 (09/15/25 ~ 09/19/25) |
Note #4 .PDF · Control Structures o if statement o if-else-if statement o for loop statement o while loop statement o until loop statement o case statement |
Note #5 .PDF · Functions o Function with local variable o Function with return value o Bash recursive function · Other Commands o break Command o continue Command o eval o exit o export o expr o printf o set o shift |
|
|
Week-04 (09/22/25 ~ 09/26/25) |
Note #6 .PDF · File System o File Name, File Structure, File Types, File Access, File Attributes, File Operation · Directories o Directory Operations · File System Layout · Implementing File o Contiguous Allocation o Linked List Allocation o Linked List Allocation with File Allocation Table o Index-Node · Implementing Directories · Linux File Structure · File Implementation in Linux |
Note #7 .PDF · System Calls vs. Library Functions · File Descriptors for a process · System Call for Managing Files o write() o read() o open() o close() o lseek() o pwrite(), pread(); |
|
Mini-Test #1 (9/25/25) Solution .PDF Note #1, 2, 3, 4, 5 |
Week-05 (09/29/25 ~ 10/03/25) |
Note #8 .PDF · sync(), fsync() · File copy · Command Line Argument · File Sharing · dup() and dup2() System Cal · sat(), fsat(), lsat() system Call · ID’s for a process · File Access permission · access() System Call · umask() System Call |
Note #9 .PDF · umask() system call · chmod(), fchmod() system call · File system in Linux · link(), unlink() system calls · File truncation with truncate() |
|
|
Week-06 (10/06/25 ~ 10/10/25) |
Note #10 .PDF · link(), unlink() System Call · remove(), rename() System Call · Symbolic Links o Symbolic link to directory o Symbolic link to a executable file · symlink() System Call · File Times o utime() System Call · mkdir() and rmdir() System Call · chdir() Systemcall · Standard I/O Libaries · System Data Files and Information · Password File |
Note #11 .PDF · System Data Files o Password File o Shadow Password File o Group Password File o Other System Data Files § Hosts § Networks § Protocols § Services o Login Account o Time and Date |
|
Mini-Test #2(10/7/25) Solution .PDF Note #6,7, 8 |
Week-07 (10/13/25 ~ 10/17/25) |
Note #12 .PDF · Process Environment in Linux o Process Termination o Environment List o Memory Layout of a C Program o Dynamic Memory Allocation and Deallocation § malloc() § calloc() § realloc() § free() o Environment Variables |
Note #13 .PDF · Process Control o What is process? o Process identifier o The fork() System Call o File Sharing o Race Condition |
Midterm #1 review note .PDF |
Midterm #1 (10/16/25) Note #1, 2, 3, 4, 5, 6, 7, 8, 9 |
Week-08 (10/20/25 ~ 10/24/25) |
Fall Break (10/20/25., 10/21/25) |
Note #14 .PDF · Process Termination · Zombie Process · wait() and waitpid() System Call · Orphan Process · exec System Calls o execl() o execv() o execle() o execve() o execlp() o execvp() |
Note #15 .PDF ·
The waitpid() System
Call ·
The system() System
Call ·
Concept of Signals o
Linux Signals o
The signal System Call o
Unreliable Signals ·
Signal() System Call ·
The kill() and
raise() System Call ·
The alarm() System
Call ·
The pause() System
Call |
|
Week-09 (10/27/25 ~ 10/31/25) |
Note #16 .PDF ·
The pause() System
call ·
The signal() system
call ·
Signal set ·
The sigprocmask()
system call ·
The sigaction()
system call ·
Interprocess Communication ·
The sigsuspend()
system call · The abort() system call |
|
|
|
Week-10 (11/03/25 ~ 11/07/25) |
|
|
|
|
Week-11 (11/10/25 ~ 11/14/25) |
|
|
|
|
Week-12 (11/17/25 ~ 11/21/25) |
|
|
|
|
Week-13 (11/24/25 ~ 11/28/25) |
|
Thanksgiving Break (11/26/25 ~ 11/28/25) |
|
|
Week-14 (12/01/25 ~ 12/05/25) |
|
|
|
|
Week-15 (12/08/25 ~ 12/12/25) |
|
|
|
|
Final Exam (12/15/25 ~ 12/19/25) |
|
|
|
|