Computer Science 422/622 Quiz 1 - Name ____________________ 1. One capability provided by a single-user multi-tasking system such as OS/2 that is NOT provide by a single-user single-task system such as DOS is: a. A file system b. login id's with passwords c. the ability to run multiple d. subroutines for handling programs apparently concurrently I/O operations. 2. One capability provided by a multi-user multi-tasking system such as Unix that is NOT provide by a single-user multi-task system such as OS/2 is: a. A file system b. login id's with passwords c. the ability to run multiple d. subroutines for handling programs apparently concurrently I/O operations. 3. We identified a number of functional components that comprise a full featured OS they included: File Mgmt; I/O Device Mgmt; Resource Mgmt; Memory Mgmt and one other. What was the other? 4. Identify which of the "Real OS hardware requirements" are used in both of the following OS functions: ___ 1. Preventing a user process a. Memory protection initiating an I/O operation b. Two operating CPU states ___ 2. Regaining control from a with privileged instructions looping user program. c. An on-chip Deus ex machina d. A general interrupt mechanism e. A programmable timer that can generate interrupts. Computer Science 422/622 Quiz 2 Name _____________________ 1. For each of the following "real world" operating systems identify the appropriate organization. _____ a. The Linux version of Unix 1. Hierarchical _____ b. DEC's VMS for the VAX 2. Monolithic 3. Fully distributed 4. Object/Process oriented 2. In the multiasking model that we discussed in class, OS code runs: a. each time a switch between b. only after all tasks have two application tasks occurs. had a chance to run. c. after each instruction is d. only when there are no executed by an application. applications available to run. 3. Identify whether each of the following functions is performed by the application itself (A), the interrupt hardware (I), or the OS (O) when a hardware interrupt causes an application process to be preeempted ____ a. Push the general registers onto the stack. ____ b. Save the Flags and IP (Instruction Pointer) on the stack. ____ c. Copy the address of the first instruction of an OS interrupt service routine from the Interrupt Vector Table to the IP (instruction pointer) register. 3. For each of the following OS design approaches identify the associated disadvantage of its use. ___ 1. Hierarchical a. All of that passing of messages and object orientation led to some sloowwww running. ___ 2. Monolithic b. All of that shared global data led to some severe reliablilty problems. ___ 3. Process / Object oriented c. It was very difficult to classify OS modules in a way that avoided dependency cycles Computer Science 422/622 Quiz 3 - Name ____________________ 1. Suppose two processes that require 1 hour of CPU time are started at the same time on a typical Unix type system. The number of times that each of the processes would enter the READY state is: a. 1 b. None c. more than a 1,000 d. More than a 1,000,000,000 2. The maximum number of processes that can be in the run state at any instant in time is a. 1 b. the number of processors c. the number of processes d. Unlimited. 3. The state transition that does not occur in the diagram that was presented in class is: a. ready to running state. b. running to suspended state c. running to ready state. d. suspended to running state. 4. The one function that a process can not perform is: a. Suspend another process b. Suspend itself. c. Unsuspend itself d. Unsuspend another process 5. Identify the data structures used to maintain the following PCB structures ____ a. The static (parent / 1. Binary heap child) structure 2. Binary tree ____ b. The dynamic (process state) structure 3. General tree 4. Linked list 5. Stack Computer Science 422/622 Quiz 4 Name _____________________ Consider the following program segment: (NOTE WELL: This is not exactly the same program segment found in last years quiz.) x = 15; pid = fork(); if (pid != 0) { sleep(10); printf("hello\n"); printf("%d\n", x); x = 11; } else { x = 77; sleep(72); printf("world\n"); printf("%d\n", x); } 1. In the above program: a. The parent will print "hello" b. The child will print "hello" and the child "world" and the parent "world" b. Both parent and child will d. The child will print "hello" print "hello" and "world" and "world" but the parent wil just print "world" 2. What numeric value will be printed by the parent? 3. What numeric value will be printed by the child? 4. Which of the following actions would NOT be performed in the create_process() system call as we described it in class. a. Load the requested program c. Copy some fields from the parent PCB to the child PCB. c. Copy the entire contents of d. Set up an initial stack for the the entire parent address child. space to the child address space. 5. The mechanism used by application programs to transfer control to the OS when an OS service is being requested is: a. A software interrupt. b. A subroutine call. c. Both the software interrupt d. A privileged instruction and the subroutine call must be used to call the OS. instructions can be used interchangably. Computer Science 422/622 Quiz 5 Name _____________________ 1. The input parameter(s) passed INTO the pipe system call is/are: a. The PID of the process to b. A pointer to an array which to connect the pipe. of two integers. c. A integer value representing d. None of the above... pipe the pipe handle and another like fork has no parameters. integer value representing the capacity of the pipe. 2. Which of the following BEST describes the following segment: [1] pid = fork() [2] pipe(&pd); [3] if (pid == 0) [4] child_proc(); [5] else [6] parent_proc(); a. A single pipe will be created b. Two pipes will be created and the parent and child will and the parent and child be able to communicate through will be able to communicate it. using either one. c. A single pipe will be created d. Two pipes will be created but the parent and child will but the parent and child not be able to communicate through will not be able to communicate it. using either one. 3. The function used to read a pipe in "C" is a. read b. fread c. both work equally well d. neither one can be used. 4. When a process reads from an empty pipe it will a. be terminated by the os b. be blocked until someone writes into the pipe c. be returned a code indicating that the pipe is empty. 5. When a process writes into a full pipe it will a. be terminated by the os b. be blocked until someone reads from the pipe c. be returned a code indicating that the pipe is full Computer Science 422/622 Quiz 6 Name _____________________ 1. Which of the following process state transitions is LEAST likely to occur. (In == Swapped In Out == Swapped Out) a. In ready to b. Out blocked to Out ready. Out ready c. Out blocked to d. In blocked to In blocked. Out blocked. 2. A swapped out process will be dispatched: a. More frequently than a b. Not at all swapped in process c. Only if there is no ready d. Somewhat less frequently than swapped in process. ready swapped in processes. 3. Which of the following is the most reasonable rate at which one would expected swapping and dispatching to occur on a heavily loaded time sharing system. a. Swap: 1 time per hour b. Swap: 10 times a minute Disp: 1 time per second Disp: 100 times a minute c: Swap: 10 times a minute d. Swap: 100 times a second Disp: 200 times a second Disp: 1,000,000 times a second 4. Which of the following would NOT be a good reason for the swapper to select a process for swapping OUT. a. The process is in the b. The process is using a large blocked rather than amount of memory. the ready state. c. The process has a low d. The process has not been dispatched priority. since it was last swapped in. 5. Is each of the following schedulers generally classed as preemptive xor non-preemptive (yes is not a correct answer) a. medium term scheduler b. long term scheduler Computer Science 422/622 Quiz 7 - Name ____________________ 1. As the number of active users of an interactive system is increased, the average response time of the system: a. Decreases b. Increases without bound. c. Approaches a limiting d. Is equal to the throughput. upper bound. 2. As the number of active users of an interactive system is increased, the throughput of the system: a. Decreases b. Increases without bound. c. Approaches a limiting d. Is equal to the response time. upper bound. 3. On a single CPU system the decision made by the SHORT term scheduler of which process to PREEMPT is: a. Derived from a complicated b. Deterministic.. there is only set of factors including one choice. priority. c. Made by randomly selecting d. Made by randomly selecting from one of the swapped in all processes. processes. 4. Suppose PS == (no overhead RR) scheduling is used and four jobs are started at the same time. Two of the jobs require 1 hour of CPU time and the other two require 3 hours. What is the average response time of the jobs. 5. What will be the average respose time for the four jobs be if they are run with non preemptive FCFS scheduling and the jobs two 3 hour jobs are run first. Computer Science 422/622 Quiz 8 - Name ____________________ 1. Consider the following code segment: int a; void xthread( int x, int y) { int c, d; Suppose two threads are created and both run the function xthread which of the following BEST characterizes the sharing of data. a. The variable 'a' is shared b. 'a' and 'x' are shared but but both threads have private 'c' is private. copies of 'x' and 'c'. c. All five variables are shared d. all five variables are private. (i.e. if either thread changes one of them, the change is seen by the other thread. 2. Which of the following values you typically NOT be specified in a system call used to create a thread: a. The address of the function to b. Parameters to be passed into be executed in the context of the function. the new thread. c. The size of the new address d. The address or size of the stack space to be created for the to be used by the new thread. thread. 4. The non-preemtive scheduling method that can be proved to give minimum mean response time is: a. FirstComeFirstServed(FCFS) b. LastComeFirstServed(LCFS) c. ShortestJobFirst(SJF) d. Round robin 5. Suppose that the mean response time for running two jobs is 23/2 minuutes. Another correct way to express this value is: a. 11.5 minutes b. 12.5 minutes c. 13.5 minutes d. 10.5 minutes Computer Science 422/622 Quiz 9 - Name ____________________ Suppose that two cooperating threads (thread 0 and thread 1) execute the following function and at the end of the run the value of sharedsum should == the sum of the limit values passed to the two threads. [ 1] int sharedsum = 0; [ 2] [ 3] void xthread(int parm, int limit) [ 4] { [ 5] int i; [ 6] int local; [ 7] [ 8] for (i = 0; i < limit; i++) [ 9] { [10] local = sharedsum; [11] local += 1; [12] sharedsum = local; [13] } [14] } [15] 1. If thread 0 is preempted after completing statement [12] a destructive modification of the value "sharedsum" a. is guaranteed to happen b. will happen if thread 1 is dispatched and it reads and writes the value of sharedsum c. can't possibly happen 2. If thread 0 is preempted after completing statement [11] a destructive modification of the value "sharedsum" a. is guaranteed to happen b. will happen if thread 1 is dispatched and it reads and writes the value of sharedsum c. can't possibly happen 3. For the following questions match the approach to the mutual exclusion problem with the "fatal flaw" that it posseses. ___ a. Uses a single turn variable 1. Satisfies all mutex objectives ___ b. Each process uses an "intent 2. Guaranteed to cause a deadlock to use critical-section var whenever both processes attempt and sets its own before testing to enter the C-S at about the the others same time. ___ c. Each process uses an "intent 3. May cause deadlock to use critical-section var whenever both processes attempt and test the other process's to enter the C-S at about the before setting its own. 4. Guaranteed to result in both processes being in the C-S at the same time. 5. May permit both processes to be in the C-S at the same time 6. Results in strictly alternating access to the C-S. Computer Science 422/622 Quiz A Name _____________________ 1. In Dekker's algorithm process 1 will loop with its own "using Critical section flag" set to 1 while it waits for process 2's "using Critical Section" flag to be reset to 0: a. Never b. Only if it is process 2's turn to "insist" c. Always d. Only if it is process 1's turn to "insist" Answer the following T or F: ___ 2. A semaphore that has a value of 0 always has a non-empty suspended process queue. ___ 3. A semaphore that has a non-empty suspended process queue always has a value of 0. ___ 4. Signalling a semaphore that has a value of 0 never causes the value of the semaphore to be incremented. ___ 5. A semphore that has a value of 1 always has an empty suspended process queue. Computer Science 422/622 Quiz B Name _____________________ Consider the following (correct) implementation of setlock: [0] CLI ;disable ints [1] RETRY: [2] CMPI LOCKVAL, 0 ;see if its 0 [3] JNZ RETRY ;if not, keep trying til it is. [4] TS LOCKVAL ;use the hardware to make sure. [5] JNZ RETRY ;start over if we got beat to the lock [6] RET 1. If statements [2] and [3] were removed which of the following BEST describes the result in a multiprocessor system: a. it would no longer work b. it would still work correctly correctly and it would and it would cause a performance cause a performance problem problem c. it still work correctly and improve performance 2. Suppose that the instruction [5.1] STI ;turn ints back on were inserted after statement [5] The result would be that a. The system would work b. The system would work worse better because the amount because multiple processes of disabled int code would might mistakenly be allowed be reduced. to hold the lock at the same time. c. The system would work worse d. The system would work worse if priority scheduling were because of both b. and c. in use because a low priority process might be preempted while holding the lock. 3. Consider the following implementation of unlock: [0] STI ;Turn ints back on [1] MOVI LOCKVAL,0 ;Reset the lock value. a. The statements are in the b. The statements are in the WRONG order. correct order c. The order of the statements is irrelevant. 4. If interrupts are not disabled while attempting to acquire a test and set lock in a system that uses strict priority scheduling a. Processes may deadlock in b. Processes may deadlock single processor system in both single and multiple but not in an MP system. processor systems but the likelihood of deadlock is greater on a single processor c. Processes may deadlock d. Processes may deadlock in in both single and multiple a mulitple processor system processor systems but the but not in a single processor. likelihood of deadlock is greater on a multiprocessor -------------- OVER ---------------------- 5. When a correct implementation of wait that contains disablement and test and set is used, the TS instruction will always succeed: a. On the first try on both b. On the first try on single CPU single and multiple processor system but not necessarily systems. on multiple processor systems. c. On the first try on single CPU d. Never on either single or system but never mulitiple processor systems. on multiple processor systems. Computer Science 422/622 Quiz C Name__________________________ 1. In the producer / consumer problem, the use of at least one mutex semaphore is necessary a. When there are multiple b. Whenever there are multiple producers and multiple consumers producers or muliple consumers. but not when there are multiple producers and a single consumer. c. Always d. Never 2. When a single mutex semaphore is used by all producers and consumers the order of waits is a. irrelvant b. counting sem before mutex sem c. mutex sem before counting sem 3. If a single mutex semaphore is shared by both producers and consumers and the producer process has the waits out of order then a deadlock can occur: a. only when the buffer is full b. only when the buffer is empty c. any time the buffer is not d. any time the buffer is not empty. full. 4. If a single mutex semaphore is shared by both producers and consumers the order of the signals (with respect to deadlock avoidance) is a. irrelvant b. counting sem before mutex sem c. mutex sem before counting sem 5. If 10 producers and 10 consumers exist the use of a 20 mutex semaphores (one semaphore dedicated to each producer and consumer) a. is not safe b. is deadlock prone c. should be used in order to optimize concurrent operation. Computer Science 422/622 Quiz D Name _____________________ 1. In a system using mailboxes it is common for only the creator/owner of a mailbox to: a. Write to the mailbox b. Read the mailbox c. Open the mailbox. d. Either read or write the box. 2. Which of the following pairs of approaches to synchonization is most compatible with the way Unix pipes work: a. Blocking writes and b. Blocking reads and non-blocking reads non-blocking writes c. Non-blocking reads and d. Blocking reads and non-blocking writes. Blocking writes 3. For client / server systems using message passing a. Indirect naming is b. Direct naming is superior superior to direct naming. to indirect naming. c. Both methods are d. Neither method is at all equally good. suitable. 4. Which of the following is NNOOTT a reason that message passing is a much more widely used high level interprocess synchronization method than semaphores: a. Message passing is better b. Message passing is computationally suited for distributed more efficient. (networked) environments. c. Message passing is more suitable for process / object oriented designs. 5. In a client / server system that uses message passing and indirect naming the mailbox used to pass service requests TO the SERVER should be created by a. the server b. the client c. either approach works equally well. Computer Science 422/622 Quiz E Name__________________________- 1. Providing a mechanism for circumventing memory protection so that the recipent can access a message is a particular problem: a. when pass by address is used b. when copying is used c. equally difficult in both d. Not a problem in either. 2. The existence of busy-waiting loops is particular problem when message passing systems use: a. non-blocking (asynch) writes b. blocking writes. c. non-blocking reads. d. either non-blocking reads OR non-blocking writes. 3. The MAIN advantage of using copy-twice instead of copy-once when non-blocking writes are used is a. avoiding the buffer recycling b. avoiding the memory protection problem. problem. c. avoiding inefficiencies d. no advantages at all. associated with copy once. 4. When a message passing system is built using semaphores to synchronize access to the mailbox the "receive" function is a: a. producer b. consumer 5. Comparing the use of fixed versus variable length messages: a. fixed length is both easier b. variable length is both easier to implement and uses memory to implement and uses memory more efficiently more efficiently c. fixed length is easier to d. fixed length is both harder implement but variable length to implement and uses memory uses memory more efficiently less efficiently. Computer Science 422/622 Quiz F Name _____________________ 1. A DEADLOCK always involves a. Exactly two processes b. Exactly three processes b. Either two or one processes d. Two or more processes. 2. By definition deadlock means that the processes involved a. May be delayed for a long b. Are delayed until one of the time but will be eventually deadlocked processes voluntarily unblocked by the random gives up its resources. nature of preemption and dispatching. c. Are delayed until the system d. Will eventually crash the is rebooted or one or more whole system. of the deadlocked processes is canceled. 3. In order to guarantee that a deadlock over a resource can't occur it is NECESSARY to: a. Make sure that at least b. Make sure that all four one of the four conditions of the conditions can't can't hold. hold. c. Make sure that at least three of the four conditions can't hold. 4. For each of the following ways of preventing deadlock identify the resource type for which its use is best suited: ____ a. Preemption 1. Memory and Processors ____ b. Simultaneous allocation 2. Files and devices. of all resources 3. Internal OS data structures Computer Science 422/622 Quiz G - Name ____________________ 1. Consider the resource graph shown: There are only three processes and two resource classes. Each class has two instances. Is the system deadlocked? a. yes b. no c. impossible to tell from graph. 2. When the system is started, each element of the "available" vector is initially set to: a. 0 b. The number of processes c. The number of instances of the associated resource class 3. In the deadlock detection algorithm the resources of process j are released if a. Requested[j][i] <= avail[i] b. Requested[j][i] <= avail[i] for some i. for all i. c. Requested[j][i] >= avail[i] d. Requested[j][i] >= avail[i] for some i. for all i. 4. When the resources of process j were released what was added to avail[i]? a. Allocated[j][i] b. Requested[j][i] c. Allocated[j][i] + d. Allocated[j][i] - Requested[j][i] Requested[j][i] 5. The system was free of deadlock at the end of the procedure if a. At least one process was b. All processes were not blocked. not blocked (= marked). (were marked) c. All processes were blocked (=unmarked) . Computer Science 422/622 Quiz H - Name ________________________ 1. The memory architecture used by the large majority of REAL OS's (excludes DOS/Win 3.1) today is. a. Unmapped and unprotected b. Protected and page mapped. c. Protected and segment d. Protected but unmapped. mapped. 2. Recombining free blocks in a variable partition system is necessary a. Only during a partition b. Only when a partition is freed. allocation. c. Both a. and b. d. Only when a process terminates abnormally 3. In freeing a partition in a variable partition scheme of memory management, it is necessary to DELETE AN EXISTING ELEMENT FROM THE FREE LIST a. only when no recombining b. only when the newly freed is possible. partition recombines with BOTH the partition above it and below it c. Any time any recombining d. Never takes place. 4. In freeing a partition in a variable partition scheme of memory management, the number of elements in the free list remains unchanged a. only when no recombining b. only when the newly freed is possible. partition recombines with BOTH the partition above it and below it c. Any time any recombining d. Only when the newly freed partition takes place. combines with either the partition above it XOR the partition below. 5. Identify the main disadvantage of each of the following memory management schemes: ___ 1. Multiple fixed size a. Wasted space within the partition partitions ___ 2. Dynamically allocated b. Fragmentation of free space outside variable size partitions all partitions c. Fragmentation of free space within an allocated partition. Computer Science 422/622 Quiz I Name _____________________ Consider the following code fragment: Rel Loc Machine Code Assembler Code (IN HEX) (IN HEX) : : : : : : 00015E 5010???????? ST R1, X ;Store R1 in variable X. : : : : : : : : : 000384 5820???????? L R2, Z ;Load Z into R2. : : : : 0003CC 0000000B X DW 11 ;Define word variable x ; with init value 11 0003D0 00000063 Z DW 99 ;int z = 99; 1. What value(s) (in hex) will the relocation table for this code contain? 2. What value will be inserted at relative location 386 (the second batch of ????????'s) by the assembler. 3. Suppose this program is loaded into real memory at program base address 0x38000. What will be the actual value of the operand of the St(ore) instruction (the 1st batch of ???'s) at the time the program actually begins execution. 4. Consider the following C variable declaration and initializations; [1] int x = 100; [2] int *y = &x; Which of the above will cause relocation table entry(ies) to be generated: a. [1] but not [2] b. [2] but not [1] c. Both [1] and [2] d. Neither 1 nor 2. ----------------------- Over ------------------------------ 5. The main reason that dynamic relocation CAN'T be performed on systems using unnmapped memory is: a. Its too inefficient. b. Values of address (pointer) variables might change after the program starts. c. The use of informal and d. Both a. and b. dynamically allocated pointers makes it impossible to find all variables being used as pointers. Computer Science 422/622 Quiz J Name _____________________ 1. The memory mgmt function in which segmentation has the biggest advantage over base and bounds addressing is: a. Protecting the OS from b. Support for controlled sharing user processes. among cooperating processes. c. Protecting independent d. No advantage in any of the user processes from areas. each other. 2. In a system that employs segmentation, addresses used to access memory consist of 2 distinct components. What are they: 1 - 2 - Answer the following H, O, or L depending upon whether the specified function is the responsibility of the Hardware, the OS, or the Language compiler and/or Linker in a system that uses segmentation ___ 3. Testing to make sure that the type of access being attempted in memory (read, write, or execute) is consistent with the attributes of the segment being referenced. ___ 4. Testing to ensure that the address generated is not larger than the segment limit. ___ 5. Loading the Segment Table Base Register and Segment table limit register each time a new process is dispatched. Computer Science 422/622 Quiz K Name _____________________ 1. The main reason for the odd-ball structure of the Intel 386 segment descriptor is: a. A batch of bad drugs got b. The design was sub-contracted loose in Silcon Valley out to Micro$oft. c. Backward compatibility d. Intel wanted OS writers to use with the 80286 processor. paging instead of segmentation. 2. The primary advantage of the use of DEMAND segmentation as compared with plain-ole segmentation is: a. Better memory protection. b. Better controlled sharing c. More efficient use of real d. All of the above apply equally. memory. 3. Answer: O or H depending upon whether the function is performed by the OS(O) or is performed by the hardware without OS intervention: ____ a. Testing the P(resent) bit each time memory is accessed and generating an interrupt if P=0. ____ b. Setting the R(eferenced) bit each time memory is accessed. 4. We discussed the use of the Allocated and Present bits in the context of demand segmentation. Assuming A = 1 => Allocated and P = 1 => Present. Which of the 4 combinations should NEVER occur in a correctly functioning OS. a. A = 0 P = 0 b. A = 0 P = 1 c. A = 1 P = 0 d. A = 1 P = 1 Computer Science 422/622 Quiz L Name _____________________ 1. Suppose a computer system uses 1024 byte pages and virtual address with the value 0x001b67 is generated. What physical address will this address be generated if the page table shown is used: 0x12b 0x345 0x12a 0x006 0x00b 0x001 0x234 PTBR -> 0x005 2. Suppose a computer system uses 8192 byte sized pages. The number of bits representing the OFFSET within a page is: a. 14 b. 12 c. 10 d. None of the above 3. If a computer system uses 512 byte sized pages, and a process references address: 0x567def the OFFSET within the page being referenced is: a. 0xdef b. 0xef c. 0x1ef d. None of the above 4. If a computer system uses 1024 byte sized pages, and a process references address: 0x567def the page number of the page being referenced is: a. 0xdef b. 0x567 c. 0x1ef d. None of the above 5. Answer: O or H depending upon whether the function is performed by the OS(O) or is performed by the hardware without OS intervention: ____ a. Testing the P(resent) bit each time memory is accessed and generating an interrupt if P=0. ____ b. Testing the A(llocated) bit after a page fault interrupt to determine if a process is making an illegal memory reference or is trying to reference a page that has been stolen. Computer Science 422/622 Quiz M 1. When an OS implements pseudo-LRU it periodically tests the referenced bit of each page and (circle ALL THAT ARE CORRECT) (UIC = Unreferenced interval counter)) a. Sets the UIC for the b. Adds 1 the UIC for the page to 0 if the page page if the page has not been referenced has not been referenced c. Sets the UIC for the d. Adds 1 the UIC for the page to 0 if the page page if the page has been referenced has been referenced 2. When a pseudo-LRU page replacement policy is in effect, global real memory overcommittment (==shortage) can be detected when: a. When the min value of b. When the max value of all UIC's is small. all UIC's is small. c. When the min value of d. When the max value of all UIC's is large. all UIC's is large. 3. The working set of a process at reference n with window h is denoted w(n, h). The maximum size of w(n, h) is: a. n b. h c. 1 d. The number of pages owned by the process 4. Suppose it is determined that a processor executes 8,000,000 instructions per second and instructions AVERAGE 1.5 references per instruction to memmory. Suppose a working set window size of 12,000,000 references is selected. What is the appropriate time unit for use in computing working set sizes. a. 8 seconds b. 4/3 sec c. 1 second d. None of the above. 5. In determining the approximate WS for a process the proper unit for measuring time is: a. CPU time used by the process b. Real time c. Total CPU time used by all d. Total wait time for the processes process.