MidTerm Exam Topics
Unix Core Philosophy & History
Inode
File I/O (lowlevel)
Fundamental use of core utilities such as cat, wc, tail, head, sort, (may need on live portion of exam)
Compilation Process and gcc compiler (including flags)
Libraries:
Static Libraries and how to build
Benefits of shared libraries
Steps in building shared libraries
Steps in building static libraries
Make:
Basic concepts of make:
Macros
Targets
Dependency lists
Rules
"THE TAB"
Processes:
Multiuser and Multiprocessing OS
Concurrency vs. Parallelism
user vs. kernel mode
System Call procedure
What is a process?
fork() and exec() in DETAIL (how do you create a new process, how do
you
run a new program in the same process?)
ELF Format (simplified)
C Language mappings to ELF segments
Basic concepts and differences of fork and exec and system
Orphan processes & solutions
Zombie processes & solutions
dup and dup2
Pipes:
Basics of pipes and filters
Difference between named and unnamed pipes
pipe vs. popen
OS process file descriptor concepts
Signal Processing
What is a signal?
Reasons why one might use signals
Basic (Version 7) signal handling (signal(), kill(), psignal())
Alarms (SIGALRM)
Concepts around unreliable signals
EXAMPLE WRITTEN QUESTIONS:
EXAMPLE LIVE QUESTIONS:
Write a short C program that handles the signal ...
Write a simple C program that sends a message over a named pipe to
another
process.