COMP 3000 2012 Week 8 Notes

From Soma-notes
Revision as of 03:58, 25 October 2012 by Cdelahou (talk | contribs) (postin' my answers)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Some answers to the practice questions

1) False. Sparse file means holes. Zeroes aren't holes. YOu need to move the file pointer. You have to use a seek. The data will be READ as zeros, though... Look up truncate command and strace it. It ain't just writing zeros

2) Nothing happens. Env vars aren't globals. They're passed in with Execve. Environments variables are typically process specific.

3) rwx

4) Kill the parent Why? init will own the zombie process and then kill it

5) chmod +x Default non executable. Need to make it executable. (--x)

6) Software interrupt

7) Don't know... Undefined. Can not depend on ordering

8) True. That's the purpose of signals Register a normal C function as a signal handler Some are implemented by default (sigkill) Signals can be called at any point in execution.

9) Sequentially (sysV). Shell script that runs every command sequentially

Upstart does in in parrallel though...

10) execve DOES NOT RETURN ANYTHING. Process image is replaced.

The program itself calls the signal handler

11) fsck <- wrapper function fsck.FMT <- called by fsck for a specific format (ex: fsck.ext4)

12) The kernel. The kernel is the only thing that can allocate.(execve) This also makes sense because execve is a system call.

13) Sparse file.

14) lspci, lshw. In /proc/, you may be able to also. These commands display the machine's "hardware".

Not /dev/ because that's the abstraction.


15) At the command line, the $PATH variable is where the shell looks for binaries/files. The path is walked when the fullPATH/filename of the command line hasn't been specified

16) Some libraries make no sys calls (strlen). Libraries that do basic string and math operations -> no sys calls

Programs with lots of I/O will use lot of sys calls

17) nice and renice nicess is policy value (default value and you can modify this) priority (dynamic) is based on niceness and the amount of time the process has run on cpu Priority doesn't apply to I/O. I/O will continue despite other processing having high priority. I/O will always slow down the system.

18) The former requires a library card and a telephone.