CSC552 Fall 2015 week 1 outline Parson, UNIX, and so forth
Chapter 1 stuff UNIX has been around for a while (since ‘69). It started in Bell Labs as a skunk works project. It has many variants. Research versions, Berkeley System Distribution, SunOS / Solaris, AT&T System V, Mach, Mac OSX, Linux flavors. We will concentrate on system calls & utilities that are “universal,” especially according to POSIX standards. The textbook came out in The system calls haven’ changed (much). Linux & bash are more prominent (no problem). Otherwise, the big changes build atop the UNIX base.
Ch. 2 Programs, Processes & Threads UNIX section 2 system calls, section 3 libraries, section 1 utilities. ps –flu, pgrep, pmap, pstack, ptrace, nm Compare Linux (acad)& Solaris (harry) To use C or C++ in this course? runcat2 makefile, C program, run-time env. – c352s2011runcat2.pdf linked on course page. c352s2011runcat2.pdf
Ch. 2 Programs, Processes & Threads Command line arguments (argc, argv, arge). Environment (env, set, export, genenv, setenv). Storage classes in C. – Static, stack (regular local variables & parameters), heap (dynamic, allocated via malloc() -> brk(). Scope in C. – Global, file static, local.
Chapter 3, Processes in UNIX Process ID and Process state. obal_subgraph.jpg obal_subgraph.jpg fork() to start a child process exec() to replace the current running process wait() for a parent process to wait on a child critical sections