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)
awk & basic regular expressions
Compilation Process and gcc compiler (including flags)
Static Libraries and how to build
Benefits of shared libraries
Steps in building shared libraries
Basic concepts of make:
Macros
Targets
Dependency lists
Rules
"THE TAB"
Basics of Debugging:
__DATE__, __TIME__, __LINE__ macros
breakpoint (b) command
delete (d) breakpoint command
backtrace (purpose)
print (p)
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
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 ...
Of the following data, what is the average rainfall for the state of MN
over the last 30 years? Use AWK to render your solution.
Write a simple C program that sends a message over a named pipe to
another
process.