****************************************************************************** // QUIZ PROGRAM SOLUTION // orig #define MAX 1024 lock_t l; // lock protects process_list int process_list[MAX]; int get_new_process_id() { int i; for (i=0; i<=MAX; i++) { // off-by-1, array out of bounds if (process_list[i]=0) { // need '==' not assign '=' (gcc -Wall) process_list[i]=1; return(i); }} } // version 1 /* * return new PID to caller * valid values are 1..1024 * on error, return -1 */ int get_new_process_id1(void) { int i; lock(l); for (i=0; i