study 4 - 4th set of questions ------------------------------------------------------------------------ 1. describe the difference between a function call and a system call. 2. what is an "exception" 3. explain what happens when a program divides by zero tries to write to a null pointer tries to write to a valid virtual address where there happens to to be no physical memory 4. why does a read system call possiby cause the operating system to suspend the executing process and allow another process to run 5. how do you deal with the possible wrap around of the microseconds field in gettimeofday? 6. if you are trying to find out how fast a program (function) runs what is good about the rtdsc cycle counter mechanism? 7. what can be misleading about the cycle counter mechanism? can it ever be faster than reality? 8. if you wanted to measure the speed of a single add instruction and you know it only takes a few cycles, what is one approach to trying to measure that speed in reality ? 9. how might the CPU cache memory system disrupt a measurement? 10. would gettimeofday() be useful for measuring 1 nanosecond of elapsed time?