Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Figure 27. Driver Entry Points........................................................................................... 143<br />
Figure 28. Block and Character Device Switch Tables....................................................... 143<br />
Figure 29. Opening a Device ............................................................................................. 144<br />
Figure 30. Closing a Device .............................................................................................. 144<br />
Figure 31. Reading Disk Data - block & raw interface....................................................... 145<br />
Figure 32. Data Sequence and Data Flow through Line Dicsipline..................................... 146<br />
Figure 33. Removing characters from a Clist ..................................................................... 147<br />
Figure 34. Placing characters on a Clist ............................................................................. 147<br />
Figure 35. Writing Data to a Terminal ............................................................................... 148<br />
Figure 36. Flooding Standard Output <strong>with</strong> Data................................................................. 148<br />
Figure 37. Algorithm for Reading a Terminal ........................................................................1<br />
Figure 38. Contending for Terminal Input Data ................................................................. 149<br />
Figure 39. Raw Mode - Reading 5 character Bursts ........................................................... 150<br />
Figure 40. Polling a Terminal ............................................................................................ 150<br />
Figure 41. Loggin in.......................................................................................................... 151<br />
Figure 42. A Stream after Open......................................................................................... 151<br />
Figure 43. Pushing a Module onto a Stream....................................................................... 152<br />
Figure 44. Windowing VT................................................................................................. 152<br />
Figure 45. Pseudo-code for Multiplexing Windows ........................................................... 152<br />
Figure 46. Process Scheduling........................................................................................... 170<br />
Figure 47. Range of Process Priorities ............................................................................... 171<br />
Figure 48. Process Scheduling Example ............................................................................ 171<br />
Figure 49. Tie breaker rule ................................................................................................ 173<br />
Figure 50. Fair Share Scheduler......................................................................................... 173<br />
Figure 51. Program Using Timer ....................................................................................... 174<br />
Figure 52. Alarm Call........................................................................................................ 174<br />
Figure 53. Clock Handler .................................................................................................. 175<br />
Figure 54. Invoking Profil system call ............................................................................... 175<br />
Figure 55. Output for Profil Program................................................................................. 175<br />
Figure 56. Algorithm for Allocating Space from Maps ...................................................... 176<br />
Figure 57. Mapping Process Space .................................................................................... 177<br />
Figure 58. Swapping a Process into Memory ..................................................................... 177<br />
Figure 59. Adjusting Memory Map for Expansion Swap.................................................... 177<br />
Figure 60. Algorithm for Swapper ..................................................................................... 178<br />
Figure 61. Thrashing due to Swapping............................................................................... 179<br />
Figure 62. Sequence of Swapping Operations.................................................................... 179<br />
Figure 63. Free List of Buffers .......................................................................................... 180<br />
Figure 64. Buffers on <strong>the</strong> Hash Queues.............................................................................. 181<br />
Figure 65. Algorithm for Buffer Allocation ....................................................................... 181<br />
Figure 66. First Scenario in Finding a Buffer: Buffer on Hash Queue................................. 182<br />
Figure 67. Second Scenario for Buffer Allocation.............................................................. 183<br />
Figure 68. Third Scenario for Buffer Allocation................................................................ 183<br />
Figure 69. Forth Scenario for Buffer Allocation................................................................. 184<br />
Figure 70. Race for Free Buffer ......................................................................................... 184<br />
Figure 71. Fifth Scenario for Buffer Allocation.................................................................. 184<br />
Figure 72. Race for a Locked Buffer.................................................................................. 185<br />
Figure 73. Reading a Disk Block Bach, "bread"................................................................. 185<br />
Figure 74. Algorithm for Block Read Ahead "breada".................................................... 186<br />
Figure 75. Writing a Disk Block Bach, "bwrite". ........................................................... 186