home *** CD-ROM | disk | FTP | other *** search
/ For Beginners & Professional Hackers / cd.iso / docum / unix-prt.doc / chap10.prt < prev    next >
Encoding:
Text File  |  1991-11-06  |  148.3 KB  |  2,482 lines

  1.  
  2.  
  3.     âïÇéÇ 10
  4.  
  5.     EÅÄäæêæÆàîÇ ôÅÉÇéïàìꃠééÄäÄî-é¢éÄäÄîF
  6.  
  7.  
  8.  
  9.  
  10.     Å«ñß¿ßΓѼᠠπ»αáó½Ñ¡¿∩  óó«ñ«¼-óδó«ñ«¼  »«ºó«½∩ÑΓ »α«µÑßßá¼ »«ññÑনóáΓ∞
  11. ßó∩º∞ ß »Ñα¿ΣÑα¿⌐¡δ¼¿ πßΓα«⌐ßΓóἿ, Γᬿ¼¿ ¬á¬ ¡á¬«»¿Γѽ¿ ¡á ¼áú¡¿Γ¡δσ  ñ¿ß-
  12. ¬áσ  ¿ ½Ñ¡Γáσ, ΓÑନ¡á½δ, »α¿¡ΓÑαδ ¿ ßÑΓ¿, ß «ñ¡«⌐ ßΓ«α«¡δ, ¿ ß ¼«ñπ½∩¼¿ ∩ñ-
  13. αá, ¬«Γ«αδÑ π»αáó½∩εΓ πßΓα«⌐ßΓóἿ ¿ ¿¼Ñ¡πεΓß∩ ñαá⌐óÑαἿ πßΓα«⌐ßΓó, ß  ñαπ-
  14. ú«⌐.  îѪñπ ñαá⌐óÑαἿ πßΓα«⌐ßΓó ¿ Γ¿»á¼¿ πßΓα«⌐ßΓó «íδτ¡« ßπΘÑßΓóπÑΓ «ñ¡«º-
  15. ¡áτ¡«Ñ ß««ΓóÑΓßΓó¿Ñ: ó ß¿ßΓѼѠ¼«ªÑΓ íδΓ∞ «ñ¿¡ ñ¿ß¬«óδ⌐ ñαá⌐óÑα ñ½∩ π»αáó½Ñ-
  16. ¡¿∩ óßѼ¿ ñ¿ß¬«ó«ñἿ, «ñ¿¡ ΓÑନ¡á½∞¡δ⌐ ñαá⌐óÑα ñ½∩ π»αáó½Ñ¡¿∩ óßѼ¿ ΓÑନ-
  17. ¡á½á¼¿ ¿ «ñ¿¡ ½Ñ¡Γ«τ¡δ⌐ ñαá⌐óÑα ñ½∩ π»αáó½Ñ¡¿∩ óßѼ¿ ½Ñ¡Γ«τ¡δ¼¿  ¡á¬«»¿Γѽ∩-
  18. ¼¿. àß½¿ ó ß¿ßΓѼѠ¿¼ÑεΓß∩ «ñ¡«Γ¿»¡δÑ πßΓα«⌐ßΓóá, »«½πτÑ¡¡δÑ «Γ αạδσ ¿ºú«-
  19. Γ«ó¿ΓѽÑ⌐ - ¡á»α¿¼Ñα, ñóÑ ¼áન ½Ñ¡Γ«τ¡δσ ¡á¬«»¿ΓѽÑ⌐, - ó φΓ«¼ ß½πτáÑ ¼«ª¡«
  20. Γαá¬Γ«óáΓ∞ «ñ¡«Γ¿»¡δÑ πßΓα«⌐ßΓóᠬᬠπßΓα«⌐ßΓóá ñóπσ αẽ¿τ¡δσ Γ¿»«ó ¿ ¿¼ÑΓ∞
  21. ñ½∩  ¡¿σ  ñóá «Γñѽ∞¡δσ ñαá⌐óÑαá, »«ß¬«½∞¬π Γᬿ¼ πßΓα«⌐ßΓóá¼ ñ½∩ óδ»«½¡Ñ¡¿∩
  22. «ñ¡¿σ ¿ ΓÑσ ªÑ «»Ñαᵿ⌐ ¼«úπΓ »«ΓαÑí«óáΓ∞ß∩  αạδÑ  »«ß½Ññ«óáΓѽ∞¡«ßΓ¿  ¬«-
  23. ¼á¡ñ.  Äñ¿¡  ñαá⌐óÑα π»αáó½∩ÑΓ ¼¡«ªÑßΓó«¼ Σ¿º¿τÑ߬¿σ πßΓα«⌐ßΓó ñá¡¡«ú« Γ¿»á.
  24. ìá»α¿¼Ñα, «ñ¿¡ ΓÑନ¡á½∞¡δ⌐ ñαá⌐óÑα ¼«ªÑΓ π»αáó½∩Γ∞ óßѼ¿ ΓÑନ¡á½á¼¿, »«ñ¬-
  25. ½ετÑ¡¡δ¼¿ ¬ ß¿ßΓѼÑ. äαá⌐óÑα αẽ¿τáÑΓ πßΓα«⌐ßΓóá, ¬«Γ«α묨  π»αáó½∩ÑΓ:  óδ-
  26. σ«ñ¡δÑ  ñá¡¡δÑ, »αÑñ¡áº¡áτÑ¡¡δÑ ñ½∩ «ñ¡«ú« ΓÑନ¡á½á, ¡Ñ ñ«½ª¡δ íδΓ∞ »«ß½á¡δ
  27. ¡á ñαπú«⌐.
  28.     æ¿ßΓѼᠻ«ññÑনóáÑΓ "»α«úαá¼¼¡δÑ πßΓα«⌐ßΓóá", ß ¬áªñδ¼  ¿º  ¬«Γ«αδσ  ¡Ñ
  29. ßó∩ºá¡«  ¡¿  «ñ¡« ¬«¡¬αÑΓ¡«Ñ Σ¿º¿τÑ߬«Ñ πßΓα«⌐ßΓó«. ìá»α¿¼Ñα, ¬á¬ πßΓα«⌐ßΓó«
  30. Γαá¬ΓπÑΓß∩ Σ¿º¿τÑ߬á∩ »á¼∩Γ∞, τΓ«íδ »«ºó«½¿Γ∞ »α«µÑßßπ «íαáΘáΓ∞ß∩ ¬ ¡Ñ⌐ ¿ºó-
  31. ¡Ñ, »πßΓ∞ ñáªÑ »á¼∩Γ∞ ¡Ñ ∩ó½∩ÑΓß∩ »Ñα¿ΣÑα¿⌐¡δ¼ πßΓα«⌐ßΓó«¼. è«¼á¡ñá ps «íαá-
  32. ΘáÑΓß∩ ¬ ¿¡Σ«α¼áµ¿«¡¡δ¼ ßΓαπ¬Γπαá¼ ∩ñαá ó Σ¿º¿τÑ߬«⌐ »á¼∩Γ¿, τΓ«íδ  ß««íΘ¿Γ∞
  33. ßΓáΓ¿ßΓ¿¬π  »α«µÑßß«ó. àΘÑ «ñ¿¡ »α¿¼Ñα: ñαá⌐óÑαδ ¼«úπΓ óÑßΓ¿ Γαáßß¿α«ó¬π ºá-
  34. »¿ßÑ⌐ ó πñ«í¡«¼ ñ½∩ «Γ½áñ¬¿ ó¿ñÑ, á  ñαá⌐óÑα  Γαáßß¿α«ó¬¿  ñáÑΓ  ó«º¼«ª¡«ßΓ∞
  35. »«½∞º«óáΓѽ∩¼ τ¿ΓáΓ∞ φΓ¿ ºá»¿ß¿. ìᬫ¡Ñµ, »α«Σ¿½∞ ∩ñαá, αáßß¼«ΓαÑ¡¡δ⌐ ó ú½á-
  36. óÑ 8, óδ»«½¡Ñ¡ ¬á¬ ñαá⌐óÑα: »α«µÑßß ºá»¿ßδóáÑΓ áñαÑßá »α«úαá¼¼ ∩ñαá, «í¡áαπ-
  37. ªÑ¡¡δσ ó Γáí½¿µÑ ¿ñÑ¡Γ¿Σ¿¬áΓ«α«ó ∩ñαá, ¿ τ¿ΓáÑΓ αѺπ½∞ΓáΓδ »α«Σ¿½¿α«óá¡¿∩.
  38.     é φΓ«⌐ ú½áóÑ αáßß¼áΓα¿óáÑΓß∩ óºá¿¼«ñÑ⌐ßΓó¿Ñ ¼Ñªñπ »α«µÑßßἿ ¿ »«ñß¿ßΓÑ-
  39. ¼«⌐ π»αáó½Ñ¡¿∩ óó«ñ«¼-óδó«ñ«¼, á ΓᬪѠ¼Ñªñπ ¼áΦ¿¡«⌐ ¿ ñαá⌐óÑαἿ πßΓα«⌐ßΓó.
  40. êßß½ÑñπÑΓß∩ «íΘá∩ ßΓαπ¬Γπαá ¿ Σπ¡¬µ¿«¡¿α«óá¡¿Ñ ñαá⌐óÑα«ó ¿ ó ¬áτÑßΓóÑ »α¿¼Ñ-
  41. α«ó  «íΘÑú« óºá¿¼«ñÑ⌐ßΓó¿∩ αáßß¼áΓα¿óáεΓß∩ ñ¿ß¬«óδÑ ¿ ΓÑନ¡á½∞¡δÑ ñαá⌐óÑαδ.
  42. çáóÑαΦáÑΓ ú½áóπ «»¿ßá¡¿Ñ ¡«ó«ú« ¼ÑΓ«ñá αÑ὿ºáµ¿¿ ñαá⌐óÑα«ó  »«Γ«¬«óδσ  πßΓ-
  43. α«⌐ßΓó.
  44.  
  45.  
  46.     E10.1 éçÇêîÄäàëæÆéêà äÉÇëéàÉÄé æ ÅÉÄâÉÇîîìÄë ê ÇÅÅÇÉÇÆìÄë æÉàäÄëF
  47.  
  48.     é  ß¿ßΓѼѠUNIX ¿¼ÑÑΓß∩ ñóá Γ¿»á πßΓα«⌐ßΓó - πßΓα«⌐ßΓóá óó«ñáóδó«ñá í½«-
  49. ¬á¼¿ ¿ πßΓα«⌐ßΓóá ¡ÑßΓαπ¬Γπα¿α«óá¡¡«ú« ¿½¿ »«ß¿¼ó«½∞¡«ú«  óó«ñá-óδó«ñá.  èá¬
  50. πªÑ ú«ó«α¿½«ß∞ ó ú½áóÑ 2, πßΓα«⌐ßΓóá óó«ñá-óδó«ñá í½«¬á¼¿, ΓᬿѠ¬á¬ ñ¿ß¬¿ ¿
  51. ½Ñ¡Γδ,  ñ½∩  «ßΓá½∞¡«⌐  τáßΓ¿ ß¿ßΓѼδ óδú½∩ñ∩Γ ¬á¬ ºá»«¼¿¡áεΘ¿Ñ πßΓα«⌐ßΓóá ß
  52. »α«¿ºó«½∞¡«⌐ óδí«α¬«⌐; ¬ πßΓα«⌐ßΓóá¼  »«ß¿¼ó«½∞¡«ú«  óó«ñá-óδó«ñá  «Γ¡«ß∩Γß∩
  53. óßÑ ñαπú¿Ñ πßΓα«⌐ßΓóá, ó Γ«¼ τ¿ß½Ñ ΓÑନ¡á½δ ¿ ßÑΓÑó«Ñ «í«απñ«óá¡¿Ñ. ôßΓα«⌐-
  54. ßΓóá  óó«ñá-óδó«ñá í½«¬á¼¿ ¼«úπΓ ¿¼ÑΓ∞ ¿¡ΓÑαΣÑ⌐ß ¿ ß πßΓα«⌐ßΓóἿ »«ß¿¼ó«½∞-
  55. ¡«ú« óó«ñá-óδó«ñá.
  56.     Å«½∞º«óáΓѽ∞ óºá¿¼«ñÑ⌐ßΓóπÑΓ ß πßΓα«⌐ßΓóἿ τÑαѺ »«ßαÑñ¡¿τÑßΓó«  Σá⌐½«-
  57. ó«⌐  ß¿ßΓÑ¼δ  (ß¼. É¿ßπ¡«¬ 2.1). èáªñ«Ñ πßΓα«⌐ßΓó« ¿¼ÑÑΓ ¿¼∩, »«σ«ªÑÑ ¡á ¿¼∩
  58. Σá⌐½á, ¿ »«½∞º«óáΓѽ∞ «íαáΘáÑΓß∩ ¬ ¡Ñ¼π ¬á¬ ¬ Σá⌐½π. æ»Ñµ¿á½∞¡δ⌐  Σá⌐½  πßΓ-
  59. α«⌐ßΓóá ¿¼ÑÑΓ ¿¡ñѬߠ¿ ºá¡¿¼áÑΓ ¼ÑßΓ« ó ¿Ñαáασ¿¿ ¬áΓὫú«ó Σá⌐½«ó«⌐ ß¿ßΓѼδ.
  60. öá⌐½  πßΓα«⌐ßΓóá  «Γ½¿τáÑΓß∩  «Γ ñαπú¿σ Σá⌐½«ó Γ¿»«¼ Σá⌐½á, σαá¡∩Θ¿¼ß∩ ó Ñú«
  61. ¿¡ñѬßÑ, ½¿í« "í½«τ¡δ⌐", ½¿í« "ß¿¼ó«½∞¡δ⌐ ß»Ñµ¿á½∞¡δ⌐", ó ºáó¿ß¿¼«ßΓ¿ «Γ πß-
  62.  
  63.                                     290
  64.  
  65. Γα«⌐ßΓóá, ¬«Γ«α«Ñ φëàΣá⌐½ »αÑñßΓáó½∩ÑΓ. àß½¿ πßΓα«⌐ßΓó« ¿¼ÑÑΓ ¬á¬ í½«τ¡δ⌐,
  66. Γᬠ¿ ß¿¼ó«½∞¡δ⌐ ¿¡ΓÑαΣÑ⌐ß, Ñú« »αÑñßΓáó½∩εΓ ñóá Σá⌐½á: ß»Ñµ¿á½∞¡δ⌐ Σá⌐½ πß-
  67. Γα«⌐ßΓóá óó«ñá-óδó«ñá í½«¬á¼¿ ¿ ß»Ñµ¿á½∞¡δ⌐  Σá⌐½  πßΓα«⌐ßΓóá  »«ß¿¼ó«½∞¡«ú«
  68. óó«ñá-óδó«ñá.  æ¿ßΓѼ¡δÑ  Σπ¡¬µ¿¿ ñ½∩ «íδτ¡δσ Σá⌐½«ó, ΓᬿѠ¬á¬ open, close,
  69. read ¿ write, ¿¼ÑεΓ Γ« ªÑ º¡áτÑ¡¿Ñ ¿ ñ½∩ πßΓα«⌐ßΓó, ó τѼ ¼δ πíÑñ¿¼ß∩ »«ºªÑ.
  70. æ¿ßΓѼ¡á∩ Σπ¡¬µ¿∩ ioctl »αÑñ«ßΓáó½∩ÑΓ »α«µÑßßἠ󫺼«ª¡«ßΓ∞  π»αáó½∩Γ∞  πßΓ-
  71. α«⌐ßΓóἿ  »«ß¿¼ó«½∞¡«ú«  óó«ñá-óδó«ñá, ¡« ¡Ñ »α¿¼Ñ¡¿¼á ó «Γ¡«ΦÑ¡¿¿ ¬ Σá⌐½á¼
  72. «íδτ¡«ú« Γ¿»á (*). ÆÑ¼ ¡Ñ ¼Ñ¡ÑÑ, ñαá⌐óÑαá¼ πßΓα«⌐ßΓó ¡ÑΓ ¡Ñ«íσ«ñ¿¼«ßΓ¿  »«ñ-
  73. ñÑনóáΓ∞  »«½¡δ⌐  ¡áí«α ß¿ßΓѼ¡δσ Σπ¡¬µ¿⌐. ìá»α¿¼Ñα, óδΦÑπ»«¼∩¡πΓδ⌐ ñαá⌐óÑα
  74. Γαáßß¿α«ó¬¿ ñáÑΓ »α«µÑßßá¼  ó«º¼«ª¡«ßΓ∞  τ¿ΓáΓ∞  ºá»¿ß¿,  ß«ºñá¡¡δÑ  ñαπú¿¼¿
  75. ñαá⌐óÑαἿ, ¡« ¡Ñ »«ºó«½∩ÑΓ ß«ºñáóáΓ∞ ¿σ.
  76.  
  77.  
  78.     E10.1.1 è«¡Σ¿úπαᵿ∩ ß¿ßΓѼδF
  79.  
  80.     çáñá¡¿Ñ  ¬«¡Σ¿úπαᵿ¿  ß¿ßΓÑ¼δ  φΓ«  »α«µÑñπαá π¬áºá¡¿∩ áñ¼¿¡¿ßΓαáΓ«αἿ
  81. º¡áτÑ¡¿⌐ »áαá¼ÑΓα«ó, ß »«¼«Θ∞ε ¬«Γ«αδσ »α«¿ºó«ñ¿Γß∩ ¡áßΓα«⌐¬á ß¿ßΓѼδ. ìѬ«-
  82. Γ«αδÑ ¿º »áαá¼ÑΓα«ó π¬áºδóáεΓ αẼÑαδ Γáí½¿µ ∩ñαá, Γᬿσ ¬á¬ Γáí½¿µá »α«µÑß-
  83. ß«ó, Γáí½¿µá ¿¡ñѬ߫󠿠Γáí½¿µá Σá⌐½«ó, á ΓᬪѠ߬«½∞¬« íπΣÑα«ó »«¼ÑΘáÑΓß∩ ó
  84. íπΣÑα¡«¼ »π½Ñ. æ »«¼«Θ∞ε ñαπú¿σ »áαá¼ÑΓα«ó π¬áºδóáÑΓß∩ ¬«¡Σ¿úπαᵿ∩  πßΓα«⌐-
  85. ßΓó, Γ« ÑßΓ∞ »α«¿ºó«ñ∩Γß∩ ¬«¡¬αÑΓ¡δÑ π¬áºá¡¿∩ ∩ñαπ, ¬á¬¿Ñ πßΓα«⌐ßΓóá ó¬½ετá-
  86. εΓß∩  ó  ñá¡¡πε  ß¿ßΓѼ¡πε αÑ὿ºáµ¿ε ¿ ¿σ "áñαÑß". ìá»α¿¼Ñα, ó ¬«¡Σ¿úπαᵿ¿
  87. ¼«ªÑΓ íδΓ∞ π¬áºá¡«, τΓ« ΓÑନ¡á½∞¡á∩ »½áΓá óßΓáó½Ñ¡á ó ß««ΓóÑΓßΓóπεΘ¿⌐ αáºΩ-
  88. Ѽ ¡á á»»áαáΓ¡«⌐ »á¡Ñ½¿.
  89.     æπΘÑßΓóπÑΓ  Γα¿  ßΓáñ¿¿, ¡á ¬«Γ«αδσ ¼«ªÑΓ íδΓ∞ π¬áºá¡á ¬«¡Σ¿úπαᵿ∩ πßΓ-
  90. α«⌐ßΓó. é«-»Ñαóδσ, áñ¼¿¡¿ßΓαáΓ«αδ ¼«úπΓ ¬«ñ¿α«óáΓ∞ ¿¡Σ«α¼áµ¿ε « ¬«¡Σ¿úπαᵿ¿
  91. ó Σá⌐½áσ, ¬«Γ«αδÑ Γαá¡ß½¿απεΓß∩ ¿ ¬«¼»«¡πεΓß∩ ó« óαѼ∩ »«ßΓα«Ñ¡¿∩ ∩ñαá.  ê¡-
  92. Σ«α¼áµ¿∩  «  ¬«¡Σ¿úπαᵿ¿  «íδτ¡« π¬áºδóáÑΓß∩ ó »α«ßΓ«¼ Σ«α¼áΓÑ, ¿ »α«úαá¼¼á
  93. ¬«¡Σ¿úπαᵿ¿ »αÑ«íαáºπÑΓ ÑÑ ó Σá⌐½, ú«Γ«óδ⌐ ñ½∩ Γαá¡ß½∩µ¿¿. é«-óΓ«αδσ, áñ¼¿-
  94. ¡¿ßΓαáΓ«αδ ¼«úπΓ π¬áºδóáΓ∞ ¿¡Σ«α¼áµ¿ε « ¬«¡Σ¿úπαᵿ¿ »«ß½Ñ Γ«ú«, ¬á¬ ß¿ßΓѼá
  95. πªÑ ºá»πΘÑ¡á; ∩ñα« ñ¿¡á¼¿τÑ߬¿ ¬«ααÑ¬Γ¿απÑΓ ó¡πΓαÑ¡¡¿Ñ Γáí½¿µδ ¬«¡Σ¿úπαᵿ¿.
  96. ìᬫ¡Ñµ, ßἫ¿ñÑ¡Γ¿Σ¿µ¿απεΘ¿Ñß∩ πßΓα«⌐ßΓóá ñáεΓ ∩ñαπ ó«º¼«ª¡«ßΓ∞ πº¡áΓ∞, ¬á-
  97. ¬¿Ñ ¿º πßΓα«⌐ßΓó ó¬½ετÑ¡δ. ƒñα« ßτ¿ΓδóáÑΓ á»»áαáΓ¡δÑ ¬½ετ¿ ñ½∩  ßἫ¡áßΓα«⌐-
  98. ¬¿.  Å«ñα«í¡«ßΓ¿ ºáñá¡¿∩ ß¿ßΓѼ¡«⌐ ¬«¡Σ¿úπαᵿ¿ óδσ«ñ∩Γ ºá »αÑñѽδ φΓ«⌐ ¬¡¿-
  99. ú¿, «ñ¡á¬« ó« óßÑσ ß½πτá∩σ αѺπ½∞ΓáΓ«¼ »α«µÑñπαδ ºáñá¡¿∩ ¬«¡Σ¿úπαᵿ¿  ∩ó½∩-
  100. ÑΓß∩ úÑ¡Ñαᵿ∩ ¿½¿ ºá»«½¡Ñ¡¿Ñ Γáí½¿µ, ß«ßΓáó½∩εΘ¿σ «ß¡«óπ »α«úαá¼¼ ∩ñαá.
  101.     ê¡ΓÑαΣÑ⌐ß  "∩ñα«  - ñαá⌐óÑα" «»¿ßδóáÑΓß∩ ó Γáí½¿µÑ ¬½ετÑ⌐ πßΓα«⌐ßΓó óó«-
  102. ñá-óδó«ñá í½«¬á¼¿ ¿ ó Γáí½¿µÑ ¬½ετÑ⌐  πßΓα«⌐ßΓó  »«ß¿¼ó«½∞¡«ú«  óó«ñá-óδó«ñá
  103. (É¿ßπ¡«¬  10.1).  èáªñδ⌐ Γ¿» πßΓα«⌐ßΓóá ¿¼ÑÑΓ ó Γáí½¿µÑ Γ«τ¬¿ óσ«ñá, ¬«Γ«αδÑ
  104. »α¿ óδ»«½¡Ñ¡¿¿ ß¿ßΓѼ¡δσ Σπ¡¬µ¿⌐ áñαÑßπεΓ ∩ñα« ¬ ß««ΓóÑΓßΓóπεΘѼπ  ñαá⌐óÑαπ.
  105. öπ¡¬µ¿¿  open  ¿  close,  óδºδóáѼδÑ Σá⌐½«¼ πßΓα«⌐ßΓóá, "»α«»π߬áεΓß∩" τÑαѺ
  106. Γáí½¿µδ ¬½ετÑ⌐ πßΓα«⌐ßΓó ó ß««ΓóÑΓßΓó¿¿  ß  Γ¿»«¼  Σá⌐½á.  öπ¡¬µ¿¿  mount  ¿
  107. umount ΓᬠªÑ óδºδóáεΓ óδ»«½¡Ñ¡¿Ñ »α«µÑñπα «Γ¬αδΓ¿∩ ¿ ºá¬αδΓ¿∩ πßΓα«⌐ßΓó, ¡«
  108. ñ½∩ πßΓα«⌐ßΓó óó«ñá-óδó«ñá í½«¬á¼¿. öπ¡¬µ¿¿ read ¿ write, óδºδóáѼδÑ πßΓα«⌐-
  109. ßΓóἿ  óó«ñá-óδó«ñá  í½«¬á¼¿  ¿ Σá⌐½á¼¿ ó ß¼«¡Γ¿α«óá¡¡δσ Σá⌐½«óδσ ß¿ßΓѼáσ,
  110. ºá»π߬áεΓ á½ú«α¿Γ¼δ αáí«Γδ ß íπΣÑα¡δ¼ ¬ÑΦѼ, ¿¡¿µ¿¿απεΘ¿Ñ αÑ὿ºáµ¿ε ßΓαáΓÑ-
  111. ú¿τÑ߬«⌐ »α«µÑñπαδ αáí«Γδ ß πßΓα«⌐ßΓóἿ. ìѬ«Γ«αδÑ ¿º  ñαá⌐óÑα«ó  ºá»π߬áεΓ
  112. φΓπ »α«µÑñπαπ ¿º¡πΓα¿ ¿º »α«µÑñπα τΓÑ¡¿∩ ¿ ºá»¿ß¿. ü«½ÑÑ »«ñα«í¡« óºá¿¼«ñÑ⌐-
  113. ßΓó¿Ñ ß ¬áªñδ¼ ñαá⌐óÑα«¼ αáßß¼áΓα¿óáÑΓß∩ ó ß½ÑñπεΘѼ αáºñѽÑ.
  114.     ê¡ΓÑαΣÑ⌐ß  "á»»áαáΓπαá - ñαá⌐óÑα" ß«ßΓ«¿Γ ¿º ¼áΦ¿¡¡«-ºáó¿ß¿¼δσ π»αáó½∩ε-
  115. Θ¿σ αÑú¿ßΓα«ó ¿½¿ ¬«¼á¡ñ óó«ñá-óδó«ñá ñ½∩ π»αáó½Ñ¡¿∩ πßΓα«⌐ßΓóἿ ¿ óÑ¬Γ«αá-
  116. ¼¿ »αÑαδóá¡¿⌐: ¬«úñá »α«¿ßσ«ñ¿Γ »αÑαδóá¡¿Ñ «Γ πßΓα«⌐ßΓóá, ß¿ßΓѼᠠ¿ñÑ¡Γ¿Σ¿-
  117. µ¿απÑΓ πßΓα«⌐ßΓó«, óδºóáóΦÑÑ »αÑαδóá¡¿Ñ, ¿ ºá»π߬áÑΓ »α«úαá¼¼π «íαáí«Γ¬¿ ß«-
  118.  
  119. ────────────────────────────────────────
  120. (*) ê ¡á«í«α«Γ, ß¿ßΓѼ¡á∩ Σπ¡¬µ¿∩ fcntl «íÑß»Ñτ¿óáÑΓ ¬«¡Γα«½∞ ¡áñ  ñÑ⌐ßΓó¿∩-
  121.     ¼¿, »α«¿ºó«ñ¿¼δ¼¿ ¡á πα«ó¡Ñ ñÑß¬α¿»Γ«αá Σá⌐½á, ¡« ¡Ñ ¡á πα«ó¡Ñ πßΓα«⌐ßΓ-
  122.     óá. é ñαπú¿σ αÑ὿ºáµ¿∩σ Σπ¡¬µ¿∩ ioctl »α¿¼Ñ¡¿¼á ñ½∩ Σá⌐½«ó óßÑσ Γ¿»«ó.
  123.  
  124.  
  125.                                     291
  126.  
  127. «ΓóÑΓßΓóπεΘÑú« »αÑαδóá¡¿∩. ÄτÑó¿ñ¡«, τΓ« "»α«úαá¼¼¡δÑ πßΓα«⌐ßΓóá", ΓᬿѠ¬á¬
  128. ñαá⌐óÑα  ß¿ßΓÑ¼δ  »«ßΓα«Ñ¡¿∩ »α«Σ¿½∩ ∩ñαá (ú½áóá 8) ¡Ñ ¿¼ÑεΓ á»»áαáΓ¡«ú« ¿¡-
  129. ΓÑαΣÑ⌐ßá, «ñ¡á¬« »α«úαá¼¼δ «íαáí«Γ¬¿ ñαπú¿σ »αÑαδóá¡¿⌐  ¼«úπΓ  «íαáΘáΓ∞ß∩  ¬
  130. "«íαáí«Γτ¿¬π  »α«úαá¼¼¡«ú«  »αÑαδóá¡¿∩" ¡Ñ»«ßαÑñßΓóÑ¡¡«. ìá»α¿¼Ñα, »α«úαá¼¼á
  131. «íαáí«Γ¬¿ »αÑαδóá¡¿∩ »« Γá⌐¼Ñαπ «íαáΘáÑΓß∩ ¬ »α«úαἼѠ«íαáí«Γ¬¿  »αÑαδóá¡¿∩
  132. ß¿ßΓÑ¼δ »«ßΓα«Ñ¡¿∩ »α«Σ¿½∩ ∩ñαá.
  133.     Çñ¼¿¡¿ßΓαáΓ«αδ πßΓá¡áó½¿óáεΓ ß»Ñµ¿á½∞¡δÑ Σá⌐½δ πßΓα«⌐ßΓ󠬫¼á¡ñ«⌐ mknod,
  134. ó  ¬«Γ«α«⌐ π¬áºδóáÑΓß∩ Γ¿» Σá⌐½á (í½«τ¡δ⌐ ¿½¿ ß¿¼ó«½∞¡δ⌐), ßΓáαΦ¿⌐ ¿ ¼½áñΦ¿⌐
  135. ¡«¼Ñαá πßΓα«⌐ßΓóá. è«¼á¡ñá mknod ºá»π߬áÑΓ óδ»«½¡Ñ¡¿Ñ  ß¿ßΓѼ¡«⌐  Σπ¡¬µ¿¿  ß
  136. ΓѼ ªÑ ¿¼Ñ¡Ñ¼, ß«ºñáεΘÑ⌐ Σá⌐½ πßΓα«⌐ßΓóá. ìá»α¿¼Ñα, ó ¬«¼á¡ñ¡«⌐ ßΓ᫬Ñ
  137.  
  138.     mknod /dev/tty13 c 2 13
  139.  
  140. "/dev/tty13"  -  ¿¼∩  Σá⌐½á πßΓα«⌐ßΓóá, "c" π¬áºδóáÑΓ, τΓ« Γ¿» Σá⌐½á - "ß¿¼-
  141. ó«½∞¡δ⌐ ß»Ñµ¿á½∞¡δ⌐" ("b", ß««ΓóÑΓßΓóÑ¡¡«, í½«τ¡δ⌐), "2" - ßΓáαΦ¿⌐ ¡«¼Ñα πß-
  142. Γα«⌐ßΓóá, "13" - ¼½áñΦ¿⌐ ¡«¼Ñα πßΓα«⌐ßΓóá. æΓáαΦ¿⌐ ¡«¼Ñα πßΓα«⌐ßΓóá  »«¬áºδ-
  143. óáÑΓ Ñú« Γ¿», ¬«Γ«α«¼π ß««ΓóÑΓßΓóπÑΓ Γ«τ¬á óσ«ñá ó Γáí½¿µÑ ¬½ετÑ⌐ πßΓα«⌐ßΓó,
  144. ¼½áñΦ¿⌐  ¡«¼Ñα  πßΓα«⌐ßΓóá - φΓ« »«α∩ñ¬«óδ⌐ ¡«¼Ñα Ññ¿¡¿µδ πßΓα«⌐ßΓóá ñá¡¡«ú«
  145. Γ¿»á. àß½¿ »α«µÑßß «Γ¬αδóáÑΓ ß»Ñµ¿á½∞¡δ⌐ í½«τ¡δ⌐ Σá⌐½ ß ¿¼Ñ¡Ñ¼ "/dev/dsk1" ¿
  146. ¬«ñ«¼ 0, ∩ñα« ºá»π߬áÑΓ »α«úαá¼¼π gdopen ó Γ«τ¬Ñ 0 Γáí½¿µδ ¬½ετÑ⌐  πßΓα«⌐ßΓó
  147. í½«τ¡«ú«  óó«ñá-óδó«ñá  (É¿ßπ¡«¬ 10.2); Ñß½¿ »α«µÑßß τ¿ΓáÑΓ ß»Ñµ¿á½∞¡δ⌐ ß¿¼-
  148. ó«½∞¡δ⌐ Σá⌐½ ß ¿¼Ñ¡Ñ¼ "/dev/mem" ¿ ¬«ñ«¼ 3,
  149.  
  150.  
  151.                     Å«ñß¿ßΓѼá π»αáó½Ñ¡¿∩ Σá⌐½á¼¿
  152.     ┌────────────────────────────────────────────────────────────┐
  153.     │                                    open  close             │
  154.     │ open close read write ioctl                     read write │
  155.     │                                    mount umount            │
  156.     └──┼─────┼────┼─────┼─────┼────────────┼─────┼─────┼─────┼───┘
  157.        │     │    │     │     │            │     │   ┌─┴─────┴───┐
  158.        │     │    │     │     │            │     │   │ Σπ¡¬µ¿¿   │
  159.        │     │    │     │     │            │     │   │ αáí«Γδ ß  │
  160.        │     │    │     │     │            │     │   │ íπΣÑα¡δ¼  │
  161.        │     │    │     │     │            │     │   │ ¬ÑΦѼ     │
  162.        │     │    │     │     │            │     │   └─────┬─────┘
  163.     ┌──┴─────┴────┴─────┴─────┴─┐         ┌┴─────┴─────────┴─────┐
  164.     │ Æáí½¿µá ¬½ετÑ⌐ πßΓα«⌐ßΓó  │         │ Æáí½¿µá ¬½ετÑ⌐ πßΓ-  │
  165.     │ »«ß¿¼ó«½∞¡«ú« óó«ñá-óδó«ñá│         │ α«⌐ßΓó óó«ñá-óδó«ñá  │
  166.     │                           │         │        í½«¬á¼¿       │
  167.     └──┬─────┬────┬─────┬─────┬─┘         └──┬──────┬────────┬───┘
  168.     ┌──┼─────┼────┼─────┼─────┼─┐         ┌──┼──────┼────────┼───┐
  169.     │open close read write ioctl│  Æ«τ¬¿  │ open  close  strategy│
  170.     │                           │  óσ«ñá  │                      │
  171.     │         äαá⌐óÑα           │   ñ½∩   │        äαá⌐óÑα       │
  172.     │                           │  ñαá⌐-  │                      │
  173.     │»α«úαἼᠫíαáí«Γ¬¿ »αÑαδ- │  óÑα«ó  │ »α«úαἼᠫíαáí«Γ¬¿  │
  174.     │   óá¡¿⌐ «Γ πßΓα«⌐ßΓóá     │         │»αÑαδóá¡¿⌐ «Γ πßΓα«⌐ßΓ│
  175.     └────────────┼──────────────┘         └───────────┼──────────┘
  176.         ┌────────┴──────────┐               ┌─────────┴─────────┐
  177.         │ éÑ¬Γ«α »αÑαδóá¡¿∩ │               │ éÑ¬Γ«α »αÑαδóá¡¿∩ │
  178.         └────────┬──────────┘               └─────────┬─────────┘
  179.                  └───────────────────┬────────────────┘
  180.                                      │
  181.                          ÅαÑαδóá¡¿∩ «Γ πßΓα«⌐ßΓó
  182.  
  183.                É¿ßπ¡«¬ 10.1. Æ«τ¬¿ óσ«ñá ñ½∩ ñαá⌐óÑα«ó
  184.  
  185.  
  186.  
  187.                                     292
  188.  
  189. ∩ñα« ºá»π߬áÑΓ »α«úαá¼¼π mmread ó Γ«τ¬Ñ 3 Γáí½¿µδ  ¬½ετÑ⌐  πßΓα«⌐ßΓó  »«ß¿¼-
  190. ó«½∞¡«ú« óó«ñá-óδó«ñá. Åα«úαá¼¼á nulldev - φΓ« "»πßΓá∩" »α«úαá¼¼á, ¿ß»«½∞ºπ-
  191. Ѽá∩  ó  ΓÑσ  ß½πτá∩σ,  ¬«úñá «ΓßπΓßΓóπÑΓ ¡Ñ«íσ«ñ¿¼«ßΓ∞ ó ¬«¡¬αÑΓ¡«⌐ Σπ¡¬µ¿¿
  192. ñαá⌐óÑαá. æ «ñ¡¿¼ ßΓáαΦ¿¼ ¡«¼Ñα«¼ πßΓα«⌐ßΓóá ¼«ªÑΓ  íδΓ∞  ßó∩ºá¡«  ¼¡«ªÑßΓó«
  193. »Ñα¿ΣÑα¿⌐¡δσ  πßΓα«⌐ßΓó; ¼½áñΦ¿⌐ ¡«¼Ñα πßΓα«⌐ßΓóá »«ºó«½∩ÑΓ «Γ½¿τ¿Γ∞ ¿σ «ñ¡«
  194. «Γ ñαπú«ú«. ìÑ ¡πª¡« ß«ºñáóáΓ∞ ß»Ñµ¿á½∞¡δÑ Σá⌐½δ πßΓα«⌐ßΓó »α¿  ¬áªñ«⌐  ºáú-
  195. απº¬Ñ  ß¿ßΓѼδ; ¿σ Γ«½∞¬« ¡πª¡« ¬«ααÑ¬Γ¿α«óáΓ∞, Ñß½¿ ¿º¼Ñ¡¿½áß∞ ¬«¡Σ¿úπαᵿ∩
  196. ß¿ßΓѼδ, ¡á»α¿¼Ñα, Ñß½¿ ¬ πßΓá¡«ó½Ñ¡¡«⌐ ¬«¡Σ¿úπαᵿ¿ í뫨 ñ«íáó½Ñ¡δ πßΓα«⌐ß-
  197. Γóá.
  198.  
  199.  
  200.     E10.1.2 æ¿ßΓѼ¡δÑ Σπ¡¬µ¿¿ ¿ óºá¿¼«ñÑ⌐ßΓó¿Ñ ß ñαá⌐óÑαἿF
  201.  
  202.     é φΓ«¼ αáºñѽѠαáßß¼áΓα¿óáÑΓß∩ óºá¿¼«ñÑ⌐ßΓó¿Ñ ∩ñαá ß ñαá⌐óÑαἿ  πßΓα«⌐-
  203. ßΓó.  Åα¿  óδ»«½¡Ñ¡¿¿  ΓÑσ ß¿ßΓѼ¡δσ Σπ¡¬µ¿⌐, ¬«Γ«αδÑ ¿ß»«½∞ºπεΓ ñÑß¬α¿»Γ«αδ
  204. Σá⌐½«ó, ∩ñα«, ß½Ññπ∩ ºá π¬áºáΓѽ∩¼¿, σαá¡∩Θ¿¼¿ß∩ ó »«½∞º«óáΓѽ∞߬«¼ ñÑß¬α¿»-
  205. Γ«αÑ Σá⌐½á, «íαáΘáÑΓß∩ ¬ Γáí½¿µÑ
  206.  
  207.         ┌───────────────────────────────────────────────┐
  208.         │ Γáí½¿µá ¬½ετÑ⌐ πßΓα«⌐ßΓó óó«ñá-óδó«ñá í½«¬á¼¿ │
  209.         ├───────┬────────┬─────────┬────────────────────┤
  210.         │ óσ«ñ  │  open  │  close  │     strategy       │
  211.         ├───────┼────────┼─────────┼────────────────────┤
  212.         │   0   │ gdopen │ gdclose │    gdstrategy      │
  213.         ├───────┼────────┼─────────┼────────────────────┤
  214.         │   1   │ gtopen │ gtclose │    gtstrategy      │
  215.         └───────┴────────┴─────────┴────────────────────┘
  216. ┌────────────────────────────────────────────────────────────────┐
  217. │      Γáí½¿µá ¬½ετÑ⌐ πßΓα«⌐ßΓó »«ß¿¼ó«½∞¡«ú« óó«ñá-óδó«ñá       │
  218. ├──────┬───────────┬───────────┬─────────┬───────────┬───────────┤
  219. │ óσ«ñ │   open    │   close   │  read   │  write    │   ioctl   │
  220. ├──────┼───────────┼───────────┼─────────┼───────────┼───────────┤
  221. │   0  │  conopen  │  conclose │ conread │ conwrite  │  conioctl │
  222. ├──────┼───────────┼───────────┼─────────┼───────────┼───────────┤
  223. │   1  │  dzbopen  │  dzbclose │ dzbread │ dzbwrite  │  dzbioctl │
  224. ├──────┼───────────┼───────────┼─────────┼───────────┼───────────┤
  225. │   2  │  syopen   │  nulldev  │ syread  │ sywrite   │  syioctl  │
  226. ├──────┼───────────┼───────────┼─────────┼───────────┼───────────┤
  227. │   3  │  nulldev  │  nulldev  │ mmread  │ mmwrite   │   nodev   │
  228. ├──────┼───────────┼───────────┼─────────┼───────────┼───────────┤
  229. │   4  │  gdopen   │  gdclose  │ gdread  │ gdwrite   │   nodev   │
  230. ├──────┼───────────┼───────────┼─────────┼───────────┼───────────┤
  231. │   5  │  gtopen   │  gtclose  │ gtread  │ gtwrite   │   nodev   │
  232. └──────┴───────────┴───────────┴─────────┴───────────┴───────────┘
  233.  
  234.   É¿ßπ¡«¬ 10.2. Åα¿¼Ñα ºá»«½¡Ñ¡¿∩ Γáí½¿µ ¬½ετÑ⌐ πßΓα«⌐ßΓó óó«ñá-
  235.                 óδó«ñá í½«¬á¼¿ ¿ ß¿¼ó«½á¼¿
  236.  
  237.  
  238. Σá⌐½«ó ∩ñαá ¿ ¬ ¿¡ñѬßπ, úñÑ «¡« »α«óÑα∩ÑΓ Γ¿» Σá⌐½á, ¿ »ÑαÑσ«ñ¿Γ ¬  Γáí½¿µÑ
  239. ¬½ετÑ⌐  πßΓα«⌐ßΓó  óó«ñá-óδó«ñá í½«¬á¼¿ ¿½¿ ß¿¼ó«½á¼¿. ƒñα« ¿ºó½Ñ¬áÑΓ ¿º ¿¡-
  240. ñѬßá ßΓáαΦ¿⌐ ¿ ¼½áñΦ¿⌐ ¡«¼Ñαá πßΓα«⌐ßΓóá, ¿ß»«½∞ºπÑΓ ßΓáαΦ¿⌐ ¡«¼Ñα ó ¬áτÑß-
  241. ΓóÑ π¬áºáΓѽ∩ ¡á Γ«τ¬π óσ«ñá ó ß««ΓóÑΓßΓóπεΘÑ⌐ Γáí½¿µÑ ¿ óδºδóáÑΓ óδ»«½¡Ñ¡¿Ñ
  242. Σπ¡¬µ¿¿ ñαá⌐óÑαá ó ß««ΓóÑΓßΓó¿¿ ß óδ»«½¡∩Ѽ«⌐ ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿Ñ⌐,  »ÑαÑñáóá∩
  243. ¼½áñΦ¿⌐  ¡«¼Ñα ó ¬áτÑßΓóÑ »áαá¼ÑΓαá. éáª¡δ¼ αẽ¿τ¿Ñ¼ ó αÑ὿ºáµ¿¿ ß¿ßΓѼ¡δσ
  244. Σπ¡¬µ¿⌐ ñ½∩ Σá⌐½«ó πßΓα«⌐ßΓó ¿ ñ½∩ Σá⌐½«ó «íδτ¡«ú« Γ¿»á ∩ó½∩ÑΓß∩ Γ«, τΓ« ¿¡-
  245. ñѬߠ߻ѵ¿á½∞¡«ú« Σá⌐½á ¡Ñ í½«¬¿απÑΓß∩ ó  Γ«  óαѼ∩,  ¬«úñá  ∩ñα«  óδ»«½¡∩ÑΓ
  246. »α«úαá¼¼π ñαá⌐óÑαá. äαá⌐óÑαδ τáßΓ« »α¿«ßΓá¡áó½¿óáεΓ ßó«ε αáí«Γπ, «ª¿ñá∩ ßó∩-
  247. º¿ ß á»»áαáΓ¡δ¼¿ ßαÑñßΓóἿ ¿½¿ »«ßΓπ»½Ñ¡¿∩ ñá¡¡δσ, »«φΓ«¼π ∩ñα« ¡Ñ ó ß«ßΓ«-
  248.  
  249.                                     293
  250.  
  251. ∩¡¿¿  «»αÑñѽ¿Γ∞,  ¡á  ¬á¬«Ñ  óαѼ∩ »α«µÑßß íπñÑΓ »α¿«ßΓá¡«ó½Ñ¡. àß½¿ ¿¡ñѬß
  252. ºáí½«¬¿α«óá¡, ñαπú¿Ñ »α«µÑßßδ, «íαáΓ¿óΦ¿Ñß∩ ¬ ¿¡ñѬßπ (¡á»α¿¼Ñα, »«ßαÑñßΓó«¼
  253. ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ stat), »α¿«ßΓá¡«ó∩Γß∩ ¡á ¡Ñ«»αÑñѽѡ¡«Ñ  óαѼ∩,  »«ß¬«½∞¬π
  254. «ñ¿¡ »α«µÑßß »α¿«ßΓá¡«ó¿½ ñαá⌐óÑα.
  255.     äαá⌐óÑα  πßΓα«⌐ßΓóá  ¿¡ΓÑα»αÑΓ¿απÑΓ »áαá¼ÑΓαδ ó맮óá ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ ó
  256. «Γ¡«ΦÑ¡¿¿ πßΓα«⌐ßΓóá. äαá⌐óÑα  »«ññÑনóáÑΓ  ßΓαπ¬Γπαδ  ñá¡¡δσ,  «»¿ßδóáεΘ¿Ñ
  257. ß«ßΓ«∩¡¿Ñ  ¬áªñ«⌐  ¬«¡Γα«½¿απѼ«⌐  Ññ¿¡¿µδ  ñá¡¡«ú« Γ¿»á πßΓα«⌐ßΓóá; Σπ¡¬µ¿¿
  258. ñαá⌐óÑαá ¿ »α«úαá¼¼δ «íαáí«Γ¬¿ »αÑαδóá¡¿⌐ αÑ὿ºπεΓß∩ ó ß««ΓóÑΓßΓó¿¿ ß  ß«ß-
  259. Γ«∩¡¿Ñ¼  ñαá⌐óÑαá  ¿ ß ΓѼ, ¬á¬«Ñ ñÑ⌐ßΓó¿Ñ óδ»«½¡∩ÑΓß∩ ó φë༫¼Ñ¡Γ (¡á»α¿-
  260. ¼Ñα, ñá¡¡δÑ óó«ñ∩Γß∩ ¿½¿ óδó«ñ∩Γß∩). ÆÑ»Ñα∞ αáßß¼«Γα¿¼ ¬áªñδ⌐ ¿¡ΓÑαΣÑ⌐ß  í«-
  261. ½ÑÑ »«ñα«í¡«.
  262.  
  263.  
  264.     ┌────────────────────────────────────────────────────────────┐
  265.     │ á½ú«α¿Γ¼ open      /* ñ½∩ ñαá⌐óÑα«ó πßΓα«⌐ßΓó */           │
  266.     │ óσ«ñ¡á∩ ¿¡Σ«α¼áµ¿∩:  ¿¼∩ »πΓ¿ »«¿ß¬á                       │
  267.     │                      αѪ¿¼ «Γ¬αδΓ¿∩                        │
  268.     │ óδσ«ñ¡á∩ ¿¡Σ«α¼áµ¿∩: ñÑß¬α¿»Γ«α Σá⌐½á                      │
  269.     │ {                                                          │
  270.     │    »αÑ«íαẫóáΓ∞ ¿¼∩ »πΓ¿ »«¿ß¬á ó ¿¡ñѬß, πóѽ¿τ¿Γ∞ º¡áτÑ-│
  271.     │     ¡¿Ñ ßτÑΓτ¿¬á ßß佫¬ ó ¿¡ñѬßÑ;                         │
  272.     │    óδñѽ¿Γ∞ ó Γáí½¿µÑ Σá⌐½«ó ¼ÑßΓ« ñ½∩ »«½∞º«óáΓѽ∞߬«ú«   │
  273.     │     ñÑß¬α¿»Γ«αá Σá⌐½á, ¬á¬ »α¿ «Γ¬αδΓ¿¿ «íδτ¡«ú« Σá⌐½á;    │
  274.     │                                                            │
  275.     │    óδíαáΓ∞ ¿º ¿¡ñѬßá ßΓáαΦ¿⌐ ¿ ¼½áñΦ¿⌐ ¡«¼Ñαá πßΓα«⌐ßΓóá; │
  276.     │                                                            │
  277.     │    ß«σαá¡¿Γ∞ ¬«¡ΓѬßΓ (á½ú«α¿Γ¼ setjmp) ó ß½πτáÑ »ÑαÑñáτ¿  │
  278.     │     π»αáó½Ñ¡¿∩ «Γ ñαá⌐óÑαá;                                │
  279.     │                                                            │
  280.     │    Ñß½¿ (πßΓα«⌐ßΓó« í½«τ¡«ú« Γ¿»á)                         │
  281.     │    {                                                       │
  282.     │       ¿ß»«½∞º«óáΓ∞ ßΓáαΦ¿⌐ ¡«¼Ñα πßΓα«⌐ßΓóá ó ¬áτÑßΓóÑ π¬á-│
  283.     │        ºáΓѽ∩ ó Γáí½¿µÑ ¬½ετÑ⌐ πßΓα«⌐ßΓó óó«ñá-óδó«ñá í½«- │
  284.     │        ¬á¼¿;                                               │
  285.     │       óδºóáΓ∞ »α«µÑñπαπ «Γ¬αδΓ¿∩ ñαá⌐óÑαá »« ñá¡¡«¼π ¿¡ñѬ-│
  286.     │        ßπ: »ÑαÑñáΓ∞ ¼½áñΦ¿⌐ ¡«¼Ñα πßΓα«⌐ßΓóá, αѪ¿¼δ «Γ¬αδ-│
  287.     │        Γ¿∩;                                                │
  288.     │    }                                                       │
  289.     │    ó »α«Γ¿ó¡«¼ ß½πτáÑ                                      │
  290.     │    {                                                       │
  291.     │       ¿ß»«½∞º«óáΓ∞ ßΓáαΦ¿⌐ ¡«¼Ñα πßΓα«⌐ßΓóá ó ¬áτÑßΓóÑ π¬á-│
  292.     │        ºáΓѽ∩ ó Γáí½¿µÑ ¬½ετÑ⌐ πßΓα«⌐ßΓó »«ß¿¼ó«½∞¡«ú« óó«-│
  293.     │        ñá-óδó«ñá;                                          │
  294.     │       óδºóáΓ∞ »α«µÑñπαπ «Γ¬αδΓ¿∩ ñαá⌐óÑαá »« ñá¡¡«¼π ¿¡ñѬ-│
  295.     │        ßπ: »ÑαÑñáΓ∞ ¼½áñΦ¿⌐ ¡«¼Ñα πßΓα«⌐ßΓóá, αѪ¿¼δ «Γ¬αδ-│
  296.     │        Γ¿∩;                                                │
  297.     │    }                                                       │
  298.     │                                                            │
  299.     │    Ñß½¿ («Γ¬αδΓ¿Ñ ó ñαá⌐óÑαÑ ¡Ñ óδ»«½¡¿½«ß∞)               │
  300.     │       »α¿óÑßΓ¿ Γáí½¿µπ Σá⌐½«ó ¬ »Ñαó«¡áτá½∞¡«¼π ó¿ñπ,      │
  301.     │        π¼Ñ¡∞Φ¿Γ∞ º¡áτÑ¡¿Ñ ßτÑΓτ¿¬á ó ¿¡ñѬßÑ;              │
  302.     │ }                                                          │
  303.     └────────────────────────────────────────────────────────────┘
  304.  
  305.             É¿ßπ¡«¬ 10.3. Ç½ú«α¿Γ¼ «Γ¬αδΓ¿∩ πßΓα«⌐ßΓóá
  306.  
  307.     E10.1.2.1 OpenF
  308.  
  309.     Åα¿  «Γ¬αδΓ¿¿ πßΓα«⌐ßΓóá ∩ñα« ß½ÑñπÑΓ Γ«⌐ ªÑ »α«µÑñπαÑ, τΓ« ¿ »α¿ «Γ¬αδ-
  310.  
  311.                                     294
  312.  
  313.  
  314.  
  315. Γ¿¿ Σá⌐½«ó «íδτ¡«ú« Γ¿»á (ß¼. αáºñѽ 5.1), óδñѽ∩∩ ó »á¼∩Γ¿ ¿¡ñѬßδ,  πóѽ¿-
  316. τ¿óá∩  º¡áτÑ¡¿Ñ  ßτÑΓτ¿¬á ßß佫¬ ¿ »α¿ßóá¿óá∩ º¡áτÑ¡¿Ñ Γ«τ¬¿ óσ«ñá ó Γáí½¿µπ
  317. Σá⌐½«ó ¿ »«½∞º«óáΓѽ∞߬«ú« ñÑß¬α¿»Γ«αá Σá⌐½á. ìᬫ¡Ñµ, ∩ñα« ó«ºóαáΘáÑΓ  º¡á-
  318. τÑ¡¿Ñ »«½∞º«óáΓѽ∞߬«ú« ñÑß¬α¿»Γ«αá Σá⌐½á óδºδóáεΘѼπ »α«µÑßßπ, ΓᬠτΓ« «Γ¬-
  319. αδΓ¿Ñ  πßΓα«⌐ßΓóá óδú½∩ñ¿Γ ΓᬠªÑ, ¬á¬ ¿ «Γ¬αδΓ¿Ñ Σá⌐½á «íδτ¡«ú« Γ¿»á. Äñ¡á-
  320. ¬«, »ÑαÑñ ΓѼ, ¬á¬ óÑα¡πΓ∞ß∩ ó αѪ¿¼ ºáñáτ¿, ∩ñα« ºá»π߬áÑΓ
  321. ºáó¿ß∩Θπε «Γ πßΓα«⌐ßΓóá »α«µÑñπαπ open (É¿ßπ¡«¬ 10.3). ä½∩  πßΓα«⌐ßΓóá  óó«-
  322. ñá-óδó«ñá  í½«¬á¼¿ ºá»π߬áÑΓß∩ »α«µÑñπαá open, ºá¬«ñ¿α«óá¡¡á∩ ó Γáí½¿µÑ ¬½ε-
  323. τÑ⌐ πßΓα«⌐ßΓó óó«ñá-óδó«ñá í½«¬á¼¿, ñ½∩ πßΓα«⌐ßΓó »«ß¿¼ó«½∞¡«ú« óó«ñá-óδó«ñá
  324. - »α«µÑñπαá open, ºá¬«ñ¿α«óá¡¡á∩ ó ß««ΓóÑΓßΓóπεΘÑ⌐ Γáí½¿µÑ. àß½¿  πßΓα«⌐ßΓó«
  325. ¿¼ÑÑΓ  ¬á¬ í½«τ¡δ⌐, Γᬠ¿ ß¿¼ó«½∞¡δ⌐ Γ¿», ∩ñα« ºá»π߬áÑΓ »α«µÑñπαπ open, ß«-
  326. «ΓóÑΓßΓóπεΘπε Γ¿»π Σá⌐½á πßΓα«⌐ßΓóá, «Γ¬αδΓ«ú« »«½∞º«óáΓѽѼ: «íÑ  »α«µÑñπαδ
  327. ¼«úπΓ ñáªÑ íδΓ∞ ¿ñÑ¡Γ¿τ¡δ, ó ºáó¿ß¿¼«ßΓ¿ «Γ ¬«¡¬αÑΓ¡«ú« ñαá⌐óÑαá.
  328.     çáó¿ß∩Θá∩  «Γ  Γ¿»á  πßΓα«⌐ßΓóá »α«µÑñπαá open πßΓá¡áó½¿óáÑΓ ßó∩º∞ ¼Ñªñπ
  329. óδºδóáεΘ¿¼ »α«µÑßß«¼ ¿ «Γ¬αδóáÑ¼δ¼ πßΓα«⌐ßΓó«¼ ¿ ¿¡¿µ¿á½¿º¿απÑΓ ¿¡Σ«α¼áµ¿«¡-
  330. ¡δÑ ßΓαπ¬Γπαδ ñαá⌐óÑαá. ìá»α¿¼Ñα, »α«µÑñπαá open ñ½∩ ΓÑନ¡á½á ¼«ªÑΓ  »α¿«ß-
  331. Γá¡«ó¿Γ∞ »α«µÑßß ñ« ΓÑσ »«α, »«¬á ó ¼áΦ¿¡π ¡Ñ »«ßΓπ»¿Γ ß¿ú¡á½ (á»»áαáΓ¡δ⌐) «
  332. Γ«¼,  τΓ«  »«½∞º«óáΓѽ∞  »αÑñ»α¿¡∩½  »«»δΓ¬π ºáαÑú¿ßΓα¿α«óáΓ∞ß∩. Å«ß½Ñ φΓ«ú«
  333. ¿¡¿µ¿á½¿º¿απεΓß∩ ¿¡Σ«α¼áµ¿«¡¡δÑ ßΓαπ¬Γπαδ ñαá⌐óÑαá ó ß««ΓóÑΓßΓó¿¿ ß »α¿¡∩Γδ-
  334. ¼¿ πßΓá¡«ó¬á¼¿ ΓÑନ¡á½á (¡á»α¿¼Ñα, ß¬«α«ßΓ∞ε »ÑαÑñáτ¿ ¿¡Σ«α¼áµ¿¿ ó  í«ñáσ).
  335. ä½∩  "»α«úαá¼¼¡δσ πßΓα«⌐ßΓó", Γᬿσ ¬á¬ »á¼∩Γ∞ ß¿ßΓѼδ, »α«µÑñπαá open ¼«ªÑΓ
  336. ¡Ñ ó¬½ετáΓ∞ ó ßÑí∩ ¿¡¿µ¿á½¿ºáµ¿ε.
  337.     àß½¿ ó« óαѼ∩ «Γ¬αδΓ¿∩ πßΓα«⌐ßΓóá »α«µÑßßπ »α¿Φ½«ß∞  »α¿«ßΓá¡«ó¿Γ∞ß∩  »«
  338. ¬á¬«⌐-½¿í« ¿º ó¡ÑΦ¡¿σ »α¿τ¿¡, ¼«ªÑΓ Γᬠ߽πτ¿Γ∞ß∩, τΓ« ß«íδΓ¿Ñ, ¬«Γ«α«Ñ ñ«½-
  339. ª¡« í佫 íδ óδºóáΓ∞ ó«º«í¡«ó½Ñ¡¿Ñ óδ»«½¡Ñ¡¿∩ »α«µÑßßá, Γᬠ¡¿¬«úñá ¿ ¡Ñ »α«-
  340. ¿º«⌐ñÑΓ. ìá»α¿¼Ñα, Ñß½¿ ¡á ñá¡¡«¼ ΓÑନ¡á½Ñ ÑΘÑ ¡Ñ ºáαÑú¿ßΓα¿α«óá½ß∩ ¡¿ «ñ¿¡
  341. ¿º »«½∞º«óáΓѽÑ⌐, »α«µÑßß getty, "«Γ¬αδóΦ¿⌐" ΓÑନ¡á½ (αáºñѽ 7.9), »α¿«ßΓá-
  342. ¡áó½¿óáÑΓß∩  ñ« ΓÑσ »«α, »«¬á »«½∞º«óáΓѽѼ ¡Ñ íπñÑΓ »αÑñ»α¿¡∩Γá »«»δΓ¬á αÑ-
  343. ú¿ßΓαᵿ¿, »α¿ φΓ«¼ ¼«ªÑΓ »α«⌐Γ¿ ñ«ßΓáΓ«τ¡« í«½∞Φ«⌐ »α«¼ÑªπΓ«¬ óαѼѡ¿. ƒñα«
  344. ñ«½ª¡« ¿¼ÑΓ∞ ó«º¼«ª¡«ßΓ∞ ó«º«í¡«ó¿Γ∞ óδ»«½¡Ñ¡¿Ñ »α«µÑßßá  ¿  «Γ¼Ñ¡¿Γ∞  ó맮ó
  345. Σπ¡¬µ¿¿  open  »«  »«½πτÑ¡¿¿  ß¿ú¡á½á: Ñ¼π ß½ÑñπÑΓ ßíα«ß¿Γ∞ ¿¡ñѬß, «Γ¼Ñ¡¿Γ∞
  346. Γ«τ¬π óσ«ñá ó Γáí½¿µÑ Σá⌐½«ó ¿ »«½∞º«óáΓѽ∞߬¿⌐  ñÑß¬α¿»Γ«α  Σá⌐½á,  ¬«Γ«αδÑ
  347. í뫨  óδñÑ½Ñ¡δ »ÑαÑñ óσ«ñ«¼ ó ñαá⌐óÑα, »«ß¬«½∞¬π «Γ¬αδΓ¿Ñ ¡Ñ »α«¿º«Φ½«. ƒñα«
  348. ß«σαá¡∩ÑΓ ¬«¡ΓѬßΓ »α«µÑßßá, ¿ß»«½∞ºπ∩ á½ú«α¿Γ¼ setjmp (αáºñѽ 6.4.4), »αѪ-
  349. ñÑ τѼ ºá»πßΓ¿Γ∞ »α«µÑñπαπ open; Ñß½¿ »α«µÑßß ó«º«í¡«ó½∩ÑΓß∩ »« ß¿ú¡á½π, ∩ñ-
  350. α« ó«ßßΓá¡áó½¿óáÑΓ ¬«¡ΓѬßΓ »α«µÑßßá ó Γ«¼ ß«ßΓ«∩¡¿¿, ¬«Γ«α«Ñ «¡ ¿¼Ñ½  »ÑαÑñ
  351. «íαáΘÑ¡¿Ñ¼  ¬ ñαá⌐óÑαπ, ¿ß»«½∞ºπ∩ á½ú«α¿Γ¼ longjmp (αáºñѽ 6.4.4), ¿ ó«ºóαá-
  352. ΘáÑΓ ß¿ßΓѼѠóßÑ óδñѽѡ¡δÑ »α«µÑñπαÑ open ßΓαπ¬Γπαδ ñá¡¡δσ. Æ«τ¡« ΓᬠªÑ  ¿
  353. ñαá⌐óÑα ¼«ªÑΓ π½«ó¿Γ∞ ß¿ú¡á½ ¿ «τ¿ßΓ¿Γ∞ ñ«ßΓπ»¡δѠѼπ ßΓαπ¬Γπαδ ñá¡¡δσ, Ñß½¿
  354. φΓ«  ¡Ñ«íσ«ñ¿¼«. ƒñα« ΓᬪѠ»ÑαÑπßΓá¡áó½¿óáÑΓ ßΓαπ¬Γπαδ ñá¡¡δσ Σá⌐½«ó«⌐ ß¿ß-
  355. ΓѼδ, ¬«úñá ñαá⌐óÑα ßΓὬ¿óáÑΓß∩ ß ¿ß¬½ετ¿Γѽ∞¡δ¼¿ ß¿Γπᵿ∩¼¿,  Γᬿ¼¿,  ¬á¬
  356. »«»δΓ¬á »«½∞º«óáΓѽ∩ «íαáΓ¿Γ∞ß∩ ¬ πßΓα«⌐ßΓóπ, «ΓßπΓßΓóπεΘѼπ ó ñá¡¡«⌐ ¬«¡Σ¿-
  357. úπαᵿ¿. é »«ñ«í¡δσ ß½πτá∩σ Σπ¡¬µ¿∩ open ¡Ñ óδ»«½¡∩ÑΓß∩.
  358.     Åα«µÑßßδ  ¼«úπΓ π¬áºδóáΓ∞ º¡áτÑ¡¿∩ αẽ¿τ¡δσ »áαá¼ÑΓα«ó, σáαá¬ΓÑਧπεΘ¿Ñ
  359. «ß«íÑ¡¡«ßΓ¿ óδ»«½¡Ñ¡¿∩ »α«µÑñπαδ «Γ¬αδΓ¿∩. êº ¡¿σ ¡á¿í«½ÑÑ τáßΓ« ¿ß»«½∞ºπÑΓ-
  360. ß∩ "no delay" (íѺ ºáñÑ᪬¿), «º¡áτáεΘÑÑ, τΓ« »α«µÑßß ¡Ñ íπñÑΓ »α¿«ßΓá¡«ó½Ñ¡
  361. ó« óαѼ∩ óδ»«½¡Ñ¡¿∩ »α«µÑñπαδ open, Ñß½¿  πßΓα«⌐ßΓó«  ¡Ñ  ú«Γ«ó«.  æ¿ßΓѼ¡á∩
  362. Σπ¡¬µ¿∩  open ó«ºóαáΘáÑΓ π»αáó½Ñ¡¿Ñ ¡Ñ¼Ññ½Ñ¡¡« ¿ »«½∞º«óáΓѽ∞߬¿⌐ »α«µÑßß ¡Ñ
  363. πº¡áÑΓ, »α«¿º«Φ½« ½¿ á»»áαáΓ¡«Ñ ß«Ññ¿¡Ñ¡¿Ñ ¿½¿ ¡ÑΓ.  ÄΓ¬αδΓ¿Ñ  πßΓα«⌐ßΓóá  ß
  364. »áαá¼ÑΓα«¼  "no delay", ¬α«¼Ñ óßÑú« »α«τÑú«, ºáΓα«¡ÑΓ ßѼá¡Γ¿¬π ó맮óá Σπ¡¬-
  365. µ¿¿ read, τΓ« ¼δ πó¿ñ¿¼ ñá½ÑÑ (αáºñѽ 10.3.4).
  366.     àß½¿ πßΓα«⌐ßΓó« «Γ¬αδóáÑΓß∩ ¼¡«ú«¬αáΓ¡«, ∩ñα« «íαáíáΓδóáÑΓ »«½∞º«óáΓѽ∞-
  367. ߬¿Ñ ñÑß¬α¿»Γ«αδ Σá⌐½«ó, ¿¡ñѬߠ¿ ºá»¿ß¿ ó Γáí½¿µÑ Σá⌐½«ó Γá¬, ¬á¬ φΓ«  «»¿-
  368. ßá¡«  ó  ú½áóÑ  5, ºá»π߬á∩ «»αÑñѽ∩Ѽπε Γ¿»«¼ πßΓα«⌐ßΓóá »α«µÑñπαπ open »α¿
  369. ¬áªñ«¼ ó맮óÑ ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ open. Æá¬¿¼ «íαẫ¼, ñαá⌐óÑα πßΓα«⌐ßΓóá  ¼«-
  370. ªÑΓ »«ñßτ¿ΓáΓ∞, ß¬«½∞¬« αẠπßΓα«⌐ßΓó« í佫 "«Γ¬αδΓ«", ¿ »αÑαóáΓ∞ óδ»«½¡Ñ¡¿Ñ
  371. Σπ¡¬µ¿¿ open, Ñß½¿ ¬«½¿τÑßΓó« «Γ¬αδΓ¿⌐ »α¿¡∩½« ¡Ññ«»πßΓ¿¼«Ñ º¡áτÑ¡¿Ñ. ìá»α¿-
  372.  
  373.                                     295
  374.  
  375. ¼Ñα, ¿¼ÑÑΓ ß¼δß½ αáºαÑΦ¿Γ∞ »α«µÑßßá¼ ¼¡«ú«¬αáΓ¡« "«Γ¬αδóáΓ∞" ΓÑନ¡á½ ¡á ºá-
  376. »¿ß∞  ñ½∩  Γ«ú«,  τΓ«íδ  »«½∞º«óáΓѽ¿ ¼«ú½¿ «í¼Ñ¡¿óáΓ∞ß∩ ß««íΘÑ¡¿∩¼¿. ì« »α¿
  377. φΓ«¼ ¡Ñ ß½ÑñπÑΓ ñ«»π߬áΓ∞ ¼¡«ú«¬αáΓ¡«ú«  "«Γ¬αδΓ¿∩"  »ÑτáΓáεΘÑú«  πßΓα«⌐ßΓóá
  378. ñ½∩  «ñ¡«óαѼѡ¡«⌐ ºá»¿ß¿, Γᬠ¬á¬ »α«µÑßßδ ¼«úπΓ ºáΓÑαÑΓ∞ ñαπú ñαπúπ ¿¡Σ«α-
  379. ¼áµ¿ε. ¥Γ¿ αẽ¿τ¿∩ ¿¼ÑεΓ ß¼δß½ ß¬«αÑÑ ¡á »αá¬Γ¿¬Ñ, ¡ÑªÑ½¿ ¡á ßΓáñ¿¿  αáºαá-
  380. í«Γ¬¿:  αáºαÑΦÑ¡¿Ñ «ñ¡«óαѼѡ¡«⌐ ºá»¿ß¿ ¡á ΓÑନ¡á½δ ß»«ß«íßΓóπÑΓ πßΓá¡«ó½Ñ-
  381. ¡¿ε óºá¿¼«ñÑ⌐ßΓó¿∩ ¼Ñªñπ »«½∞º«óáΓѽ∩¼¿; ºá»αÑΘÑ¡¿Ñ «ñ¡«óαѼѡ¡«⌐ ºá»¿ß¿  ¡á
  382. »α¿¡ΓÑαδ ß½πª¿Γ »«óδΦÑ¡¿ε τ¿Γáíѽ∞¡«ßΓ¿ ¼áΦ¿¡«úαá¼¼ (**).
  383.  
  384.  
  385.  
  386.     ┌────────────────────────────────────────────────────────────┐
  387.     │ á½ú«α¿Γ¼ close           /* ñ½∩ πßΓα«⌐ßΓó */               │
  388.     │ óσ«ñ¡á∩ ¿¡Σ«α¼áµ¿∩:  ñÑß¬α¿»Γ«α Σá⌐½á                      │
  389.     │ óδσ«ñ¡á∩ ¿¡Σ«α¼áµ¿∩: «ΓßπΓßΓóπÑΓ                           │
  390.     │ {                                                          │
  391.     │    óδ»«½¡¿Γ∞ á½ú«α¿Γ¼ ßΓá¡ñáαΓ¡«ú« ºá¬αδΓ¿∩ (ú½áóá 5σσσ);  │
  392.     │    Ñß½¿ (º¡áτÑ¡¿Ñ ßτÑΓτ¿¬á ßß佫¬ ó Γáí½¿µÑ Σá⌐½«ó ¡Ñ 0)   │
  393.     │       »ÑαÑ⌐Γ¿ ¡á finish;                                   │
  394.     │    Ñß½¿ (ßπΘÑßΓóπÑΓ ÑΘÑ «ñ¿¡ «Γ¬αδΓδ⌐ Σá⌐½, ßΓáαΦ¿⌐ ¿ ¼½áñ-│
  395.     │     Φ¿⌐ ¡«¼Ñαá ¬«Γ«α«ú« ß«ó»áñáεΓ ß ¡«¼ÑαἿ ºá¬αδóáѼ«ú«  │
  396.     │     πßΓα«⌐ßΓóá)                                            │
  397.     │       »ÑαÑ⌐Γ¿ ¡á finish;     /* ¡Ñ »«ß½Ññ¡ÑÑ ºá¬αδΓ¿Ñ */   │
  398.     │    Ñß½¿ (πßΓα«⌐ßΓó« ß¿¼ó«½∞¡«ú« Γ¿»á)                      │
  399.     │    {                                                       │
  400.     │       ¿ß»«½∞º«óáΓ∞ ßΓáαΦ¿⌐ ¡«¼Ñα ó ¬áτÑßΓóÑ π¬áºáΓѽ∩ ó    │
  401.     │        Γáí½¿µÑ ¬½ετÑ⌐ πßΓα«⌐ßΓóá »«ß¿¼ó«½∞¡«ú« óó«ñá-óδó«- │
  402.     │        ñá;                                                 │
  403.     │       óδºóáΓ∞ »α«µÑñπαπ ºá¬αδΓ¿∩, «»αÑñѽ∩Ѽπε Γ¿»«¼ ñαá⌐- │
  404.     │        óÑαá ¿ »ÑαÑñáΓ∞ Ñ⌐ ó ¬áτÑßΓóÑ »áαá¼ÑΓαá ¼½áñΦ¿⌐ ¡«- │
  405.     │        ¼Ñα πßΓα«⌐ßΓóá;                                     │
  406.     │    }                                                       │
  407.     │    Ñß½¿ (πßΓα«⌐ßΓó« í½«τ¡«ú« Γ¿»á)                         │
  408.     │    {                                                       │
  409.     │       Ñß½¿ (πßΓα«⌐ßΓó« ¼«¡Γ¿α«óá¡«)                        │
  410.     │          »ÑαÑ⌐Γ¿ ¡á finish;                                │
  411.     │       »ÑαÑ»¿ßáΓ∞ í½«¬¿ πßΓα«⌐ßΓóá ¿º íπΣÑα¡«ú« ¬ÑΦá ¡á πßΓ-│
  412.     │        α«⌐ßΓó«;                                            │
  413.     │       ¿ß»«½∞º«óáΓ∞ ßΓáαΦ¿⌐ ¡«¼Ñα ó ¬áτÑßΓóÑ π¬áºáΓѽ∩ ó    │
  414.     │        Γáí½¿µÑ ¬½ετÑ⌐ πßΓα«⌐ßΓóá óó«ñá-óδó«ñá í½«¬á¼¿;     │
  415.     │       óδºóáΓ∞ »α«µÑñπαπ ºá¬αδΓ¿∩, «»αÑñѽ∩Ѽπε Γ¿»«¼ ñαá⌐- │
  416.     │        óÑαá ¿ »ÑαÑñáΓ∞ Ñ⌐ ó ¬áτÑßΓóÑ »áαá¼ÑΓαá ¼½áñΦ¿⌐ ¡«- │
  417.     │        ¼Ñα πßΓα«⌐ßΓóá;                                     │
  418.     │       ßñѽáΓ∞ ¡ÑñÑ⌐ßΓó¿Γѽ∞¡δ¼¿ í½«¬¿ πßΓα«⌐ßΓóá, «ßΓáóΦ¿Ñ-│
  419.     │        ß∩ ó íπΣÑα¡«¼ ¬ÑΦÑ;                                 │
  420.     │    }                                                       │
  421.     │  finish:                                                   │
  422.     │    «ßó«í«ñ¿Γ∞ ¿¡ñѬß;                                      │
  423.     │ }                                                          │
  424.     └────────────────────────────────────────────────────────────┘
  425.  
  426.              É¿ßπ¡«¬ 10.4. Ç½ú«α¿Γ¼ ºá¬αδΓ¿∩ πßΓα«⌐ßΓóá
  427.  
  428. ────────────────────────────────────────
  429. (**)  ìá »αá¬Γ¿¬Ñ óδó«ñ ¡á »ÑτáΓ∞ «íδτ¡« π»αáó½∩ÑΓß∩ ß»Ñµ¿á½∞¡δ¼¿ »α«µÑßßἿ
  430.      íπΣÑα¿ºáµ¿¿, ¿ »αáóá ñ«ßΓπ»á πßΓá¡áó½¿óáεΓß∩ Γᬿ¼ «íαẫ¼, τΓ«íδ Γ«½∞-
  431.      ¬« ß¿ßΓѼá íπΣÑα¿ºáµ¿¿ ¼«ú½á «íαáΘáΓ∞ß∩ ¬ »α¿¡ΓÑαπ.
  432.  
  433.  
  434.  
  435.                                     296
  436.  
  437.     E10.1.2.2 CloseF
  438.  
  439.     Åα«µÑßß αáºαδóáÑΓ ßó∩º∞ ß «Γ¬αδΓδ¼ πßΓα«⌐ßΓó«¼,  ºá¬αδóá∩  Ñú«.  Äñ¡á¬«,
  440. ∩ñα«  ºá»π߬áÑΓ  «»αÑñѽ∩Ѽπε Γ¿»«¼ πßΓα«⌐ßΓóá »α«µÑñπαπ close Γ«½∞¬« ó »«ß-
  441. ½Ññ¡Ñ¼ ó맮óÑ Σπ¡¬µ¿¿ close ñ½∩ φΓ«ú« πßΓα«⌐ßΓóá, ¿ Γ« Γ«½∞¬« Ñß½¿ ¡Ñ  «ßΓá-
  442. ½«ß∞  »α«µÑßß«ó, ¬«Γ«αδ¼ πßΓα«⌐ßΓó« ¡Ñ«íσ«ñ¿¼« «Γ¬αδΓδ¼, »«ß¬«½∞¬π »α«µÑñπαá
  443. ºá¬αδΓ¿∩ πßΓα«⌐ßΓóá ºáóÑαΦáÑΓß∩ αáºαδó«¼ á»»áαáΓ¡«ú« ß«Ññ¿¡Ñ¡¿∩; «Γßεñá  ∩ß-
  444. ¡«,  τΓ« ∩ñαπ ß½ÑñπÑΓ »«ñ«ªñáΓ∞, »«¬á ¡Ñ «ßΓá¡ÑΓß∩ ¡¿ «ñ¡«ú« »α«µÑßßá, «íαá-
  445. ΘáεΘÑú«ß∩ ¬ πßΓα«⌐ßΓóπ. Å«ß¬«½∞¬π ∩ñα« ºá»π߬áÑΓ »α«µÑñπαπ «Γ¬αδΓ¿∩ πßΓα«⌐ß-
  446. Γóá »α¿ ¬áªñ«¼ ó맮óÑ ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ open, á  »α«µÑñπαπ  ºá¬αδΓ¿∩  Γ«½∞¬«
  447. «ñ¿¡ αáº, ñαá⌐óÑαπ πßΓα«⌐ßΓóá ¡ÑóÑñ«¼«, ß¬«½∞¬« »α«µÑßß«ó ¿ß»«½∞ºπεΓ πßΓα«⌐-
  448. ßΓó« ó ñá¡¡δ⌐ ¼«¼Ñ¡Γ. äαá⌐óÑαδ ¼«úπΓ ½Ñú¬« óδ⌐Γ¿ ¿º ßΓα«∩, Ñß½¿ »α¿ ¿σ ¡á»¿-
  449. ßá¡¿¿  ¡Ñ ß«í½εñá½áß∞ «ßë᫪¡«ßΓ∞: ¬«úñá »α¿ óδ»«½¡Ñ¡¿¿ »α«µÑñπαδ close «¡¿
  450. »α¿«ßΓá¡áó½¿óáεΓ ßó«ε αáí«Γπ ¿ ¬á¬«⌐-¡¿íπñ∞ »α«µÑßß «Γ¬αδóáÑΓ πßΓα«⌐ßΓó«  ñ«
  451. Γ«ú«,  ¬á¬ ºáóÑαΦ¿Γß∩ »α«µÑñπαá ºá¬αδΓ¿∩, πßΓα«⌐ßΓó« ¼«ªÑΓ ßΓáΓ∞ ¡Ññ«ßΓπ»¡δ¼
  452. ñ½∩ αáí«Γδ, Ñß½¿ ó αѺπ½∞ΓáΓÑ ¬«¼í¿¡áµ¿¿ ó맮ó«ó open ¿ close ß½«ª¿½áß∞  ¡Ñ-
  453. αáß»«º¡áóáѼá∩ ß¿Γπᵿ∩.
  454.  
  455.     Ç½ú«α¿Γ¼  ºá¬αδΓ¿∩  πßΓα«⌐ßΓóá »«σ«ª ¡á á½ú«α¿Γ¼ ºá¬αδΓ¿∩ Σá⌐½á «íδτ¡«ú«
  456. Γ¿»á (É¿ßπ¡«¬ 10.4). Äñ¡á¬«, ñ« Γ«ú«, ¬á¬ ∩ñα« «ßó«í«ªñáÑΓ ¿¡ñѬß, ó ¡Ñ¼ óδ-
  457. »«½¡∩εΓß∩ ñÑ⌐ßΓó¿∩, ß»Ñµ¿Σ¿τ¡δÑ ñ½∩ Σá⌐½«ó πßΓα«⌐ßΓó.
  458.  1. Åα«ß¼áΓα¿óáÑΓß∩ Γáí½¿µá Σá⌐½«ó ñ½∩ Γ«ú«, τΓ«íδ πíÑñ¿Γ∞ß∩ ó Γ«¼,  τΓ«  ¡¿
  459.     «ñ¡«¼π  ¿º  »α«µÑßß«ó ¡Ñ ΓαÑíπÑΓß∩, τΓ«íδ πßΓα«⌐ßΓó« í佫 «Γ¬αδΓ«. ùΓ«íδ
  460.     πßΓá¡«ó¿Γ∞, τΓ« ó맮ó Σπ¡¬µ¿¿ close ñ½∩ πßΓα«⌐ßΓóá  ∩ó½∩ÑΓß∩  »«ß½Ññ¡¿¼,
  461.     ¡Ññ«ßΓáΓ«τ¡«  »«½«ª¿Γ∞ß∩  ¡á  º¡áτÑ¡¿Ñ ßτÑΓτ¿¬á ßß佫¬ ó Γáí½¿µÑ Σá⌐½«ó,
  462.     »«ß¬«½∞¬π ¡Ñ߬«½∞¬« »α«µÑß߫󠼫úπΓ «íαáΘáΓ∞ß∩ ¬ «ñ¡«¼π ¿ Γ«¼π  ªÑ  πßΓ-
  463.     α«⌐ßΓóπ, ¿ß»«½∞ºπ∩ αẽ¿τ¡δÑ Γ«τ¬¿ óσ«ñá ó Γáí½¿µÑ Σá⌐½«ó. Æá¬ ªÑ ¡Ññ«ß-
  464.     ΓáΓ«τ¡«  »«½«ª¿Γ∞ß∩  ¡á  º¡áτÑ¡¿Ñ ßτÑΓτ¿¬á ó Γáí½¿µÑ ¿¡ñѬ߫ó, »«ß¬«½∞¬π
  465.     «ñ¡«¼π ¿ Γ«¼π ªÑ πßΓα«⌐ßΓóπ ¼«úπΓ ß««ΓóÑΓßΓó«óáΓ∞ ¡Ñ߬«½∞¬« Σá⌐½«ó  πßΓ-
  466.     α«⌐ßΓóá. ìá»α¿¼Ñα, ¬«¼á¡ñá ls -l »«¬áªÑΓ, τΓ« «ñ¡«¼π ¿ Γ«¼π ªÑ πßΓα«⌐ßΓ-
  467.     óπ  ß¿¼ó«½∞¡«ú«  Γ¿»á ("c" ó ¡áτá½Ñ ßΓ᫬¿) ß««ΓóÑΓßΓóπεΓ ñóá Σá⌐½á πßΓ-
  468.     α«⌐ßΓóá, ßΓáαΦ¿⌐ ¿ ¼½áñΦ¿⌐ ¡«¼Ñαá π ¬«Γ«αδσ (9 ¿ 1) ß«ó»áñáεΓ.  ç¡áτÑ¡¿Ñ
  469.     ßτÑΓτ¿¬á  ßó∩ºÑ⌐ ñ½∩ ¬áªñ«ú« Σá⌐½á, αáó¡«Ñ 1, ú«ó«α¿Γ « Γ«¼, τΓ« ¿¼ÑÑΓß∩
  470.     ñóá ¿¡ñѬßá.
  471.  
  472.        crw--w--w-     1 root   vis   9, 1  Aug 6 1984  /dev/tty01
  473.        crw--w--w-     1 root   unix  9, 1  May 3 15:02 /dev/tty01
  474.  
  475.     àß½¿ »α«µÑßßδ «Γ¬αδóáεΓ «íá Σá⌐½á ¡Ñºáó¿ß¿¼« «ñ¿¡ «Γ ñαπú«ú«, «¡¿  «íαá-
  476.     Γ∩Γß∩ ¬ αáº¡δ¼ ¿¡ñѬßá¼ «ñ¡«ú« ¿ Γ«ú« ªÑ πßΓα«⌐ßΓóá.
  477.  2. àß½¿ πßΓα«⌐ßΓó« ß¿¼ó«½∞¡«ú« Γ¿»á, ∩ñα« ºá»π߬áÑΓ »α«µÑñπαπ ºá¬αδΓ¿∩ πßΓ-
  478.     α«⌐ßΓóá ¿ ó«ºóαáΘáÑΓ π»αáó½Ñ¡¿Ñ ó αѪ¿¼ ºáñáτ¿. àß½¿ πßΓα«⌐ßΓó« í½«τ¡«ú«
  479.     Γ¿»á,  ∩ñα«  »α«ß¼áΓα¿óáÑΓ Γáí½¿µπ αѺπ½∞ΓáΓ«ó ¼«¡Γ¿α«óá¡¿∩ ¿ »α«óÑα∩ÑΓ,
  480.     ¡Ñ αáß»«½áúáÑΓß∩ ½¿ ¡á πßΓα«⌐ßΓóÑ ß¼«¡Γ¿α«óá¡¡á∩ Σá⌐½«óá∩ ß¿ßΓѼá.  àß½¿
  481.     Γá¬á∩ ß¿ßΓѼá ÑßΓ∞, ∩ñα« ¡Ñ ß¼«ªÑΓ ºá»πßΓ¿Γ∞ »α«µÑñπαπ ºá¬αδΓ¿∩ πßΓα«⌐ß-
  482.     Γóá, »«ß¬«½∞¬π ¡Ñ íδ½ ßñѽᡠ»«ß½Ññ¡¿⌐ ó맮ó Σπ¡¬µ¿¿ close ñ½∩ πßΓα«⌐ßΓ-
  483.     óá.  äáªÑ  Ñß½¿ ¡á πßΓα«⌐ßΓóÑ ¡ÑΓ ß¼«¡Γ¿α«óá¡¡«⌐ Σá⌐½«ó«⌐ ß¿ßΓѼδ, ó íπ-
  484.     ΣÑα¡«¼ ¬ÑΦÑ ÑΘÑ ¼«úπΓ ¡áσ«ñ¿Γ∞ß∩ í½«¬¿ ß ñá¡¡δ¼¿, «ßΓáóΦ¿Ñß∩ «Γ  ß¼«¡Γ¿-
  485.     α«óá¡¡«⌐  αá¡ÑÑ  Σá⌐½«ó«⌐  ß¿ßΓÑ¼δ ¿ ¡Ñ »ÑαÑ»¿ßá¡¡δÑ ¡á πßΓα«⌐ßΓó«, »«ß-
  486.     ¬«½∞¬π ¿¼Ñ½¿ »«¼ÑΓ¬π "«Γ½«ªÑ¡¡á∩ ºá»¿ß∞". Å«φΓ«¼π ∩ñα« »α«ß¼áΓα¿óáÑΓ íπ-
  487.     ΣÑα¡δ⌐ ¬ÑΦ ó »«¿ß¬áσ Γᬿσ í½«¬«ó ¿ »ÑαÑ»¿ßδóáÑΓ ¿σ ¡á πßΓα«⌐ßΓó«  »ÑαÑñ
  488.     ºá»π߬«¼  »α«µÑñπαδ  ºá¬αδΓ¿∩ πßΓα«⌐ßΓóá. Å«ß½Ñ ºá¬αδΓ¿∩ πßΓα«⌐ßΓóá ∩ñα«
  489.     ó¡«ó∞ »α«ß¼áΓα¿óáÑΓ íπΣÑα¡δ⌐ ¬ÑΦ ¿ ñѽáÑΓ ¡ÑñÑ⌐ßΓó¿Γѽ∞¡δ¼¿ óßÑ  íπΣÑαδ,
  490.     ¬«Γ«αδÑ ß«ñÑαªáΓ í½«¬¿ ñ½∩ Γ«½∞¬« τΓ« ºá¬αδΓ«ú« πßΓα«⌐ßΓóá, ó Γ« ªÑ óαÑ-
  491.     ¼∩ »«ºó«½∩∩ íπΣÑαá¼ ß á¬Γπá½∞¡«⌐ ¿¡Σ«α¼áµ¿Ñ⌐ «ßΓáΓ∞ß∩ ó ¬ÑΦÑ.
  492.  3. ƒñα« «ßó«í«ªñáÑΓ ¿¡ñѬߠΣá⌐½á πßΓα«⌐ßΓóá.
  493.     è«α«τÑ ú«ó«α∩, »α«µÑñπαá ºá¬αδΓ¿∩ πßΓα«⌐ßΓóá αáºαδóáÑΓ ßó∩º∞ ß πßΓα«⌐ßΓ-
  494. ó«¼  ¿  ¿¡¿µ¿á½¿º¿απÑΓ ºá¡«ó« ¿¡Σ«α¼áµ¿«¡¡δÑ ßΓαπ¬Γπαδ ñαá⌐óÑαá ¿ á»»áαáΓ¡πε
  495. τáßΓ∞ πßΓα«⌐ßΓóá ß ΓѼ, τΓ«íδ  ∩ñα«  ¼«ú½«  íδ  »«ºñ¡ÑÑ  «Γ¬αδΓ∞  πßΓα«⌐ßΓó«
  496.  
  497.                                     297
  498.  
  499. ó¡«ó∞.
  500.  
  501.  
  502.     E10.1.2.3 Read ¿ WriteF
  503.  
  504.     Ç½ú«α¿Γ¼δ  τΓÑ¡¿∩ ¿ ºá»¿ß¿ ∩ñα«¼ ¡á πßΓα«⌐ßΓóÑ »«σ«ª¿ ¡á á¡á½«ú¿τ¡δÑ á½-
  505. ú«α¿Γ¼δ ñ½∩ Σá⌐½«ó «íδτ¡«ú« Γ¿»á. àß½¿ »α«µÑßß »α«¿ºó«ñ¿Γ τΓÑ¡¿Ñ ¿½¿  ºá»¿ß∞
  506. ¡á  πßΓα«⌐ßΓóÑ »«ß¿¼ó«½∞¡«ú« óó«ñá-óδó«ñá, ∩ñα« ºá»π߬áÑΓ »α«µÑñπαδ read ¿½¿
  507. write, «»αÑñѽ∩ѼδÑ Γ¿»«¼ ñαá⌐óÑαá. ìÑß¼«Γα∩ ¡á τáßΓ«  óßΓαÑτáεΘ¿Ñß∩  ß¿Γπá-
  508. µ¿¿,  ¬«úñá ∩ñα« «ßπΘÑßΓó½∩ÑΓ »ÑαÑñáτπ ñá¡¡δσ ¡Ñ»«ßαÑñßΓóÑ¡¡« ¼Ñªñπ áñαÑß¡δ¼
  509. »α«ßΓαá¡ßΓó«¼ ºáñáτ¿ ¿ πßΓα«⌐ßΓó«¼, ñαá⌐óÑαδ  πßΓα«⌐ßΓó  ¼«úπΓ  íπΣÑਧ«óáΓ∞
  510. ¿¡Σ«α¼áµ¿ε ó¡πΓα¿ ßÑí∩. ìá»α¿¼Ñα, ΓÑନ¡á½∞¡δÑ ñαá⌐óÑαδ ñ½∩ íπΣÑα¿ºáµ¿¿ ñá¡-
  511. ¡δσ  ¿ß»«½∞ºπεΓ  ß¿¼ó«½∞¡δÑ  ß»¿ß¬¿ (αáºñѽ 10.3.1). é Γᬿσ ß½πτá∩σ ñαá⌐óÑα
  512. πßΓα«⌐ßΓóá óδñѽ∩ÑΓ "íπΣÑα", ¬«»¿απÑΓ ñá¡¡δÑ ¿º »α«ßΓαá¡ßΓóá ºáñáτ¿ »α¿  óδ-
  513. »«½¡Ñ¡¿¿  »α«µÑñπαδ  write ¿ óδó«ñ¿Γ ¿σ ¿º "íπΣÑαá" ¡á πßΓα«⌐ßΓó«. Åα«µÑñπαá
  514. ºá»¿ß¿, π»αáó½∩Ѽá∩ ñαá⌐óÑα«¼, αÑúπ½¿απÑΓ «íΩѼ óδó«ñ¿¼«⌐  ¿¡Σ«α¼áµ¿¿  (Γ.¡.
  515. π»αáó½Ñ¡¿Ñ »«Γ«¬«¼ ñá¡¡δσ): Ñß½¿ »α«µÑßßδ úÑ¡Ñα¿απεΓ ¿¡Σ«α¼áµ¿ε íδßΓαÑÑ, τѼ
  516. πßΓα«⌐ßΓó«  óδó«ñ¿Γ ÑÑ, »α«µÑñπαᠺỿ߿ »α¿«ßΓá¡áó½¿óáÑΓ óδ»«½¡Ñ¡¿Ñ »α«µÑß-
  517. ß«ó ñ« ΓÑσ »«α, »«¬á πßΓα«⌐ßΓó« ¡Ñ íπñÑΓ  ú«Γ«ó«  »α¿¡∩Γ∞  ß½ÑñπεΘπε  »«αµ¿ε
  518. ñá¡¡δσ. Åα¿ τΓÑ¡¿¿ ñαá⌐óÑα πßΓα«⌐ßΓóá »«¼ÑΘáÑΓ ñá¡¡δÑ, »«½πτÑ¡¡δÑ «Γ πßΓα«⌐-
  519. ßΓóá, ó íπΣÑα ¿
  520.  
  521.                    Åá¼∩Γ∞
  522.  
  523.                    │     │
  524.                    ├─────┤
  525.              160110│ CSR │         ┌──────┐ ┌─────────tty00
  526.                    │ RDB ├─────────┤ dz00 ├─┼─────────tty01
  527.                    │ TDB │         └──────┘ │          ...
  528.                    ├─────┤                  └─────────tty07
  529.              160120│ CSR │         ┌──────┐ ┌─────────tty08
  530.              160122│ RDB ├─────────┤ dz01 ├─┼─────────tty09
  531.              160126│ TDB │         └──────┘ │          ...
  532.                    ├─────┤                  └─────────tty15
  533.                    │     │
  534.  
  535.     É¿ßπ¡«¬ 10.5. ÄΓ«íαáªÑ¡¿Ñ ó »á¼∩Γ¿ óó«ñá-óδó«ñá ß ¿ß»«½∞º«óá-
  536.                   ¡¿Ñ¼ ¬«¡Γα«½½Ñαá VAX DZ11
  537.  
  538.  
  539. ¬«»¿απÑΓ  ¿σ ¿º íπΣÑαá ó »«½∞º«óáΓѽ∞߬¿Ñ áñαÑßá, π¬áºá¡¡δÑ ó ó맮óÑ ß¿ßΓѼ-
  540. ¡«⌐ Σπ¡¬µ¿¿.
  541.     è«¡¬αÑΓ¡δ⌐ ¼ÑΓ«ñ óºá¿¼«ñÑ⌐ßΓó¿∩ ñαá⌐óÑαá ß πßΓα«⌐ßΓó«¼ «»αÑñѽ∩ÑΓß∩ «ß«-
  542. íÑ¡¡«ßΓ∩¼¿ á»»áαáΓπαδ. ìѬ«Γ«αδÑ ¿º ¼áΦ¿¡ «íÑß»Ñτ¿óáεΓ «Γ«íαáªÑ¡¿Ñ óó«ñá-óδ-
  543. ó«ñá ó »á¼∩Γ¿, »«ñαáºπ¼ÑóáεΘÑÑ, τΓ« ¬«¡¬αÑΓ¡δÑ áñαÑßá ó áñαÑß¡«¼ »α«ßΓαá¡ßΓ-
  544. óÑ ∩ñαá ∩ó½∩εΓß∩ ¡Ñ ¡«¼ÑαἿ ∩τÑѬ ó Σ¿º¿τÑ߬«⌐ »á¼∩Γ¿, á  ß»Ñµ¿á½∞¡δ¼¿  αÑ-
  545. ú¿ßΓαἿ,  ¬«¡Γα«½¿απεΘ¿¼¿ ß««ΓóÑΓßΓóπεΘ¿Ñ πßΓα«⌐ßΓóá. çỿßδóá∩ ó π¬áºá¡¡δÑ
  546. αÑú¿ßΓαδ π»αáó½∩εΘ¿Ñ »áαá¼ÑΓαδ ó ß««ΓóÑΓßΓó¿¿ ß«  ß»Ñµ¿Σ¿¬áµ¿∩¼¿  á»»áαáΓ¡δσ
  547. ßαÑñßΓó,  ñαá⌐óÑα  «ßπΘÑßΓó½∩ÑΓ π»αáó½Ñ¡¿Ñ πßΓα«⌐ßΓó«¼. ìá»α¿¼Ñα, ¬«¡Γα«½½Ñα
  548. óó«ñá-óδó«ñá ñ½∩ ¼áΦ¿¡δ VAX-11 ß«ñÑαª¿Γ ß»Ñµ¿á½∞¡δÑ αÑú¿ßΓαδ ñ½∩ ºá»¿ß¿  ¿¡-
  549. Σ«α¼áµ¿¿  « ß«ßΓ«∩¡¿¿ πßΓα«⌐ßΓóá (αÑú¿ßΓαδ ¬«¡Γα«½∩ ¿ ß«ßΓ«∩¡¿∩) ¿ ñ½∩ »ÑαÑ-
  550. ñáτ¿ ñá¡¡δσ (íπΣÑα¡δÑ αÑú¿ßΓαδ), ¬«Γ«αδÑ Σ«α¼¿απεΓß∩ »« ß»Ñµ¿á½∞¡δ¼  áñαÑßá¼
  551. ó Σ¿º¿τÑ߬«⌐ »á¼∩Γ¿. é τáßΓ¡«ßΓ¿, ΓÑନ¡á½∞¡δ⌐ ¬«¡Γα«½½Ñα VAX DZ11 π»αáó½∩ÑΓ
  552. 8 áß¿¡σα«¡¡δ¼¿ ½¿¡¿∩¼¿ ΓÑନ¡á½∞¡«⌐ ßó∩º¿ (ß¼. [Levy 80], úñÑ í«½ÑÑ »«ñα«í¡«
  553. «íΩ∩ß¡∩ÑΓß∩ áασ¿ΓѬΓπαá ¼áΦ¿¡ VAX). ÅπßΓ∞ αÑú¿ßΓα ¬«¡Γα«½∩ ¿ ß«ßΓ«∩¡¿∩ (CSR)
  554. ñ½∩  ¬«¡¬αÑΓ¡«ú«  ΓÑନ¡á½á DZ11 ¿¼ÑÑΓ áñαÑß 160120, »ÑαÑñáεΘ¿⌐ íπΣÑα¡δ⌐ αÑ-
  555. ú¿ßΓα (TDB) - áñαÑß 120126, á »α¿¡¿¼áεΘ¿⌐ íπΣÑα¡δ⌐  αÑú¿ßΓα  (RDB)  -  áñαÑß
  556. 160122   (É¿ßπ¡«¬  10.5).  ä½∩  Γ«ú«,  τΓ«íδ  »ÑαÑñáΓ∞  ß¿¼ó«½  ¡á  ΓÑନ¡á½
  557. "/dev/tty09", ñαá⌐óÑα ΓÑନ¡á½á ºá»¿ßδóáÑΓ Ññ¿¡¿µπ (1 = 9  »«  ¼«ñπ½ε  8)  ó
  558.  
  559.                                     298
  560.  
  561. π¬áºá¡¡δ⌐  ñó«¿τ¡δ⌐  αáºα∩ñ αÑú¿ßΓαá ¬«¡Γα«½∩ ¿ ß«ßΓ«∩¡¿∩ ¿ ºáΓѼ ºá»¿ßδóáÑΓ
  562. ß¿¼ó«½ ó »ÑαÑñáεΘ¿⌐ íπΣÑα¡δ⌐ αÑú¿ßΓα. çỿß∞ ó »ÑαÑñáεΘ¿⌐  íπΣÑα¡δ⌐  αÑú¿ßΓα
  563. ∩ó½∩ÑΓß∩  »ÑαÑñáτÑ⌐ ñá¡¡δσ. è«¡Γα«½½Ñα DZ11 óδßΓáó½∩ÑΓ í¿Γ "óδ»«½¡Ñ¡«" ó αÑ-
  564. ú¿ßΓαÑ ¬«¡Γα«½∩ ¿ ß«ßΓ«∩¡¿∩, ¬«úñá ú«Γ«ó »α¿¡∩Γ∞  ß½ÑñπεΘπε  »«αµ¿ε  ñá¡¡δσ.
  565. ä«»«½¡¿Γѽ∞¡«  ñαá⌐óÑα  ¼«ªÑΓ óδßΓáó¿Γ∞ í¿Γ "󫺼«ª¡« »αÑαδóá¡¿Ñ »ÑαÑñáτ¿" ó
  566. αÑú¿ßΓαÑ ¬«¡Γα«½∩ ¿ ß«ßΓ«∩¡¿∩, τΓ« ºáßΓáó½∩ÑΓ ¬«¡Γα«½½Ñα DZ11 »αÑαδóáΓ∞  αá-
  567. í«Γπ  ß¿ßΓѼδ, ¬«úñá «¡ ú«Γ«ó »α¿¡∩Γ∞ ß½ÑñπεΘπε »«αµ¿ε ñá¡¡δσ. ùΓÑ¡¿Ñ ñá¡¡δσ
  568. ¿º DZ11 »α«¿ºó«ñ¿Γß∩ á¡á½«ú¿τ¡«.
  569.     ìá ñαπú¿σ ¼áΦ¿¡áσ ¿¼ÑÑΓß∩ »α«úαá¼¼¿απѼδ⌐  óó«ñ-óδó«ñ,  »«ñαáºπ¼ÑóáεΘ¿⌐,
  570. τΓ«  ó ¼áΦ¿¡Ñ ¿¼ÑεΓß∩ ¿¡ßΓαπ¬µ¿¿ »« π»αáó½Ñ¡¿ε πßΓα«⌐ßΓóἿ. äαá⌐óÑαδ π»αáó-
  571. ½∩εΓ πßΓα«⌐ßΓóἿ, óδ»«½¡∩∩ ß««ΓóÑΓßΓóπεΘ¿Ñ ¿¡ßΓαπ¬µ¿¿. ìá»α¿¼Ñα,  ó  ¼áΦ¿¡Ñ
  572. IBM  370 ¿¼ÑÑΓß∩ ¿¡ßΓαπ¬µ¿∩ "Start I/O" (ìáτáΓ∞ óó«ñ-óδó«ñ), ¬«Γ«αá∩ ¿¡¿µ¿¿-
  573. απÑΓ «»Ñαᵿε óó«ñá-óδó«ñá, ßó∩ºá¡¡πε ß πßΓα«⌐ßΓó«¼. æ»«ß«í ßó∩º¿ ñαá⌐óÑαá ß
  574. »Ñα¿ΣÑα¿⌐¡δ¼¿ πßΓα«⌐ßΓóἿ ¡Ñºá¼ÑΓÑ¡ ñ½∩ »«½∞º«óáΓѽ∩.
  575.     Å«ß¬«½∞¬π ¿¡ΓÑαΣÑ⌐ß ¼Ñªñπ ñαá⌐óÑαἿ πßΓα«⌐ßΓó ¿ ß««ΓóÑΓßΓóπεΘ¿¼¿  á»»á-
  576. αáΓ¡δ¼¿  ßαÑñßΓóἿ ∩ó½∩ÑΓß∩ ¼áΦ¿¡¡«-ºáó¿ß¿¼δ¼, ¡á φΓ«¼ πα«ó¡Ñ ¡Ñ ßπΘÑßΓóπÑΓ
  577. ßΓá¡ñáαΓ¡δσ ¿¡ΓÑαΣÑ⌐ß«ó. èᬠó ß½πτáÑ óó«ñáóδó«ñá ß «Γ«íαáªÑ¡¿Ñ¼  ó  »á¼∩Γ¿,
  578. Γᬠ ¿ ó ß½πτáÑ »α«úαá¼¼¿απѼ«ú« óó«ñá-óδó«ñá ñαá⌐óÑα ¼«ªÑΓ »«ßδ½áΓ∞ ¡á πßΓ-
  579. α«⌐ßΓó« π»αáó½∩εΘ¿Ñ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ß µÑ½∞ε πßΓá¡«ó½Ñ¡¿∩  αѪ¿¼á  »α∩¼«ú«
  580. ñ«ßΓπ»á ó »á¼∩Γ∞ (ÅäÅ) ñ½∩ πßΓα«⌐ßΓóá. æ¿ßΓѼᠻ«ºó«½∩ÑΓ «ßπΘÑßΓó½∩Γ∞ ¼áßß«-
  581. óπε  »ÑαÑñáτπ  ñá¡¡δσ ¼Ñªñπ πßΓα«⌐ßΓó«¼ ¿ »á¼∩Γ∞ε ó αѪ¿¼Ñ ÅäÅ »áαώѽ∞¡« ß
  582. αáí«Γ«⌐ µÑ¡Γαá½∞¡«ú« »α«µÑßß«αá, »α¿ φΓ«¼ πßΓα«⌐ßΓó« »αÑαδóáÑΓ αáí«Γπ ß¿ßΓÑ-
  583. ¼δ »« ºáóÑαΦÑ¡¿¿ »ÑαÑñáτ¿ ñá¡¡δσ. äαá⌐óÑα «αúá¡¿ºπÑΓ π»αáó½Ñ¡¿Ñ  ó¿αΓπá½∞¡«⌐
  584. »á¼∩Γ∞ε Γᬿ¼ «íαẫ¼, τΓ«íδ ∩τÑ⌐¬¿ »á¼∩Γ¿ ß ¿σ ñÑ⌐ßΓó¿Γѽ∞¡δ¼¿ ¡«¼ÑαἿ ¿ß-
  585. »«½∞º«ó὿ß∞ ñ½∩ ÅäÅ.
  586.     üδßΓα«ñÑ⌐ßΓóπεΘ¿Ñ  πßΓα«⌐ßΓóá ¼«úπΓ ¿¡«úñá »ÑαÑñáóáΓ∞ ñá¡¡δÑ ¡Ñ»«ßαÑñßΓ-
  587. óÑ¡¡« ó áñαÑß¡«Ñ »α«ßΓαá¡ßΓó« ºáñáτ¿, íѺ ó¼ÑΦáΓѽ∞ßΓóá íπΣÑαá ∩ñαá.  é  αÑ-
  588. ºπ½∞ΓáΓÑ »«óδΦáÑΓß∩ ß¬«α«ßΓ∞ »ÑαÑñáτ¿ ñá¡¡δσ, »«ß¬«½∞¬π »α¿ φΓ«¼ »α«¿ºó«ñ¿Γ-
  589. ß∩ ¡á «ñ¡π «»Ñαáµ¿ε ¬«»¿α«óá¡¿∩ ¼Ñ¡∞ΦÑ, ¿, ¬α«¼Ñ Γ«ú«, «íΩѼ ñá¡¡δσ, »ÑαÑñá-
  590. óáѼδσ  ºá «ñ¡π «»Ñαᵿε, ¡Ñ «úαá¡¿τ¿óáÑΓß∩ αẼÑα«¼ íπΣÑα«ó ∩ñαá. äαá⌐óÑαδ,
  591. «ßπΘÑßΓó½∩εΘ¿Ñ Γá¬πε »ÑαÑñáτπ  ñá¡¡δσ  íѺ  "«íαáí«Γ¬¿",  «íδτ¡«  ¿ß»«½∞ºπεΓ
  592. í½«τ¡δ⌐  ¿¡ΓÑαΣÑ⌐ß  ñ½∩  »α«µÑñπα  »«ß¿¼ó«½∞¡«ú« τΓÑ¡¿∩ ¿ ºá»¿ß¿, Ñß½¿ π ¡¿σ
  593. ¿¼ÑÑΓß∩ ñó«⌐¡¿¬ í½«τ¡«ú« Γ¿»á.
  594.  
  595.  
  596.     E10.1.2.4 æΓαáΓÑú¿τÑ߬¿⌐ ¿¡ΓÑαΣÑ⌐ßF
  597.  
  598.     ƒñα« ¿ß»«½∞ºπÑΓ ßΓαáΓÑú¿τÑ߬¿⌐ ¿¡ΓÑαΣÑ⌐ß ñ½∩ »ÑαÑñáτ¿ ñá¡¡δσ  ¼Ñªñπ  íπ-
  599. ΣÑα¡δ¼ ¬ÑΦѼ ¿ πßΓα«⌐ßΓó«¼, σ«Γ∩, ¬á¬ πªÑ ú«ó«α¿½«ß∞ αá¡ÑÑ, »α«µÑñπαδ τΓÑ¡¿∩
  600. ¿  ºá»¿ß¿ ñ½∩ πßΓα«⌐ßΓó »«ß¿¼ó«½∞¡«ú« óó«ñáóδó«ñá ¿¡«úñá »«½∞ºπεΓß∩ »α«µÑñπ-
  601. α«⌐ strategy (¿σ ñó«⌐¡¿¬á í½«τ¡«ú« Γ¿»á) ñ½∩ ¡Ñ»«ßαÑñßΓóÑ¡¡«⌐ »ÑαÑñáτ¿  ñá¡-
  602. ¡δσ  ¼Ñªñπ  πßΓα«⌐ßΓó«¼  ¿ áñαÑß¡δ¼ »α«ßΓαá¡ßΓó«¼ ºáñáτ¿. Åα«µÑñπαá strategy
  603. ¼«ªÑΓ π»αáó½∩Γ∞ «τÑαÑñ¡«ßΓ∞ε óδ»«½¡Ñ¡¿∩ ºáñá¡¿⌐ ¡á óó«ñ-óδó«ñ,  ßó∩ºá¡¡δ⌐  ß
  604. πßΓα«⌐ßΓó«¼, ¿½¿ óδ»«½¡∩Γ∞ í«½ÑÑ ß½«ª¡δÑ ñÑ⌐ßΓó¿∩ »« »½á¡¿α«óá¡¿ε óδ»«½¡Ñ¡¿∩
  605. »«ñ«í¡δσ  ºáñá¡¿⌐. äαá⌐óÑαδ ó ß«ßΓ«∩¡¿¿ »α¿ó∩ºδóáΓ∞ »ÑαÑñáτπ ñá¡¡δσ ¬ «ñ¡«¼π
  606. Σ¿º¿τÑ߬«¼π áñαÑßπ ¿½¿ ¬« ¼¡«ú¿¼. ƒñα« »ÑαÑñáÑΓ áñαÑß ºáú«½«ó¬á íπΣÑαá ßΓαá-
  607. ΓÑú¿τÑ߬«⌐ »α«µÑñπαÑ ñαá⌐óÑαá; ó ºáú«½«ó¬Ñ ß«ñÑনΓß∩ ß»¿ß«¬ áñαÑß«ó  (ßΓαá-
  608. ¡¿µ  »á¼∩Γ¿) ¿ αẼÑαδ ñá¡¡δσ, »ÑαÑñáóáѼδσ ¡á ¿½¿ ß πßΓα«⌐ßΓóá. Ç¡á½«ú¿τ¡«Ñ
  609. ñÑ⌐ßΓó¿Ñ ¿¼ÑÑΓ ¼ÑßΓ« »α¿ αáí«ΓÑ ¼Ñσá¡¿º¼á ßó«»¿¡úá, «»¿ßá¡¡«ú«  ó  ú½áóÑ  9.
  610. Åα¿  αáí«ΓÑ  ß íπΣÑα¡δ¼ ¬ÑΦѼ ∩ñα« »ÑαÑñáÑΓ ñá¡¡δÑ ß «ñ¡«ú« áñαÑßá; ó« óαѼ∩
  611. ßó«»¿¡úá ∩ñα« »ÑαÑñáÑΓ ñá¡¡δÑ, αáß»«½«ªÑ¡¡δÑ »« ¡Ñ߬«½∞¬¿¼ áñαÑßá¼ (ßΓαá¡¿µδ
  612. »á¼∩Γ¿). àß½¿ ñá¡¡δÑ ¬«»¿απεΓß∩ ¿º ¿½¿ ó áñαÑß¡«Ñ »α«ßΓαá¡ßΓó« ºáñáτ¿, ñαá⌐-
  613. óÑα ñ«½ªÑ¡ í½«¬¿α«óáΓ∞ »α«µÑßß (¿½¿ »« ¬αá⌐¡Ñ⌐ ¼ÑαÑ, ß««ΓóÑΓßΓóπεΘ¿Ñ ßΓαá¡¿-
  614. µδ) ó »á¼∩Γ¿ ñ« ºáóÑαΦÑ¡¿∩ »ÑαÑñáτ¿ ñá¡¡δσ.
  615.     ìá»α¿¼Ñα, »«ß½Ñ ¼«¡Γ¿α«óá¡¿∩ Σá⌐½«ó«⌐ ß¿ßΓѼδ ∩ñα« ¿ñÑ¡Γ¿Σ¿µ¿απÑΓ ¬áªñδ⌐
  616. Σá⌐½ ó Σá⌐½«ó«⌐ ß¿ßΓѼѠ»« ¡«¼Ñαπ πßΓα«⌐ßΓóá ¿ ¡«¼Ñαπ ¿¡ñѬßá. é ¡«¼ÑαÑ πßΓ-
  617. α«⌐ßΓóᠺᬫñ¿α«óá¡δ Ñú« ßΓáαΦ¿⌐ ¿ ¼½áñΦ¿⌐ ¡«¼Ñαá. è«úñá ∩ñα«  «íαáΘáÑΓß∩  ¬
  618. í½«¬π, ¬«Γ«αδ⌐ »α¿¡áñ½Ñª¿Γ Σá⌐½π, «¡« ¬«»¿απÑΓ ¡«¼Ñα πßΓα«⌐ßΓóá ¿ ¡«¼Ñα í½«-
  619. ¬á  ó ºáú«½«ó«¬ íπΣÑαá, ¬á¬ πªÑ ú«ó«α¿½«ß∞ αá¡ÑÑ ó ú½áóÑ 3. ÄíαáΘÑ¡¿∩ ¬ ñ¿ß-
  620.  
  621.                                     299
  622.  
  623. ¬π, ¿ß»«½∞ºπεΘ¿Ñ á½ú«α¿Γ¼δ αáí«Γδ ß  íπΣÑα¡δ¼  ¬ÑΦѼ  (¡á»α¿¼Ñα,  bread  ¿½¿
  624. bwrite),  ¿¡¿µ¿¿απεΓ óδ»«½¡Ñ¡¿Ñ ßΓαáΓÑú¿τÑ߬«⌐ »α«µÑñπαδ, «»αÑñѽ∩Ѽ«⌐ ßΓáα-
  625. Φ¿¼ ¡«¼Ñα«¼ πßΓα«⌐ßΓóá. æΓαáΓÑú¿τÑ߬á∩ »α«µÑñπαá ¿ß»«½∞ºπÑΓ  º¡áτÑ¡¿∩  »«½Ñ⌐
  626. ¼½áñΦÑú«  ¡«¼Ñαá  ¿ ¡«¼Ñαá í½«¬á ¿º ºáú«½«ó¬á íπΣÑαá ñ½∩ ¿ñÑ¡Γ¿Σ¿¬áµ¿¿ ¼ÑßΓá
  627. αáß»«½«ªÑ¡¿∩ ñá¡¡δσ ¡á πßΓα«⌐ßΓóÑ, á áñαÑß íπΣÑαá - ñ½∩ ¿ñÑ¡Γ¿Σ¿¬áµ¿¿  ¼ÑßΓá
  628. ¡áº¡áτÑ¡¿∩ »ÑαÑñáóáѼδσ ñá¡¡δσ. Æ«τ¡« ΓᬠªÑ, ¬«úñá »α«µÑßß «íαáΘáÑΓß∩ ¬ πß-
  629. Γα«⌐ßΓóπ óó«ñá-óδó«ñá í½«¬á¼¿ ¡Ñ»«ßαÑñßΓóÑ¡¡« (¡á»α¿¼Ñα, «Γ¬αδóá∩ πßΓα«⌐ßΓó«
  630. ¿  τ¿Γá∩  ¿½¿  ºá»¿ßδóá∩ ¡á ¡Ñú«), «¡ ¿ß»«½∞ºπÑΓ á½ú«α¿Γ¼δ αáí«Γδ ß íπΣÑα¡δ¼
  631. ¬ÑΦѼ, ¿ ¿¡ΓÑαΣÑ⌐ß »α¿ φΓ«¼ Σπ¡¬µ¿«¡¿απÑΓ óδΦÑ«»¿ßá¡¡δ¼ «íαẫ¼.
  632.  
  633.  
  634.     E10.1.2.5 IoctlF
  635.  
  636.     æ¿ßΓѼ¡á∩ Σπ¡¬µ¿∩ ioctl ∩ó½∩ÑΓß∩ «í«íΘÑ¡¿Ñ¼  ß»Ñµ¿Σ¿τ¡δσ  ñ½∩  ΓÑନ¡á½á
  637. Σπ¡¬µ¿⌐  stty (ºáñáΓ∞ πßΓᡫ󬿠ΓÑନ¡á½á) ¿ gtty (»«½πτ¿Γ∞ πßΓᡫ󬿠ΓÑନ-
  638. ¡á½á), ¿¼ÑóΦ¿σß∩ ó αá¡¡¿σ óÑαß¿∩σ ß¿ßΓѼδ UNIX. Ä¡á óδßΓπ»áÑΓ ó ¬áτÑßΓóÑ «í-
  639. ΘÑ⌐ Γ«τ¬¿ óσ«ñá ñ½∩ óßÑσ ßó∩ºá¡¡δσ ß Γ¿»«¼  πßΓα«⌐ßΓóá  ¬«¼á¡ñ  ¿  »«ºó«½∩ÑΓ
  640. »α«µÑßßá¼  ºáñáóáΓ∞  á»»áαáΓ¡δÑ  »áαá¼ÑΓαδ, áßß«µ¿¿α«óá¡¡δÑ ß πßΓα«⌐ßΓó«¼, ¿
  641. »α«úαá¼¼¡δÑ »áαá¼ÑΓαδ, áßß«µ¿¿α«óá¡¡δÑ ß  ñαá⌐óÑα«¼.  æ»Ñµ¿á½∞¡δÑ  ñÑ⌐ßΓó¿∩,
  642. óδ»«½¡∩ѼδÑ  Σπ¡¬µ¿Ñ⌐ ioctl ñ½∩ αạδσ πßΓα«⌐ßΓó αẽ¿τ¡δ ¿ «»αÑñѽ∩εΓß∩ Γ¿-
  643. »«¼ ñαá⌐óÑαá. Åα«úαá¼¼δ, ¿ß»«½∞ºπεΘ¿Ñ ó맮ó ioctl, ñ«½ª¡δ  ñ«½ª¡δ  º¡áΓ∞,  ß
  644. Σá⌐½«¼  ¬á¬«ú« Γ¿»á «¡¿ αáí«ΓáεΓ, Γᬠ¬á¬ «¡¿ ∩ó½∩εΓß∩ á»»áαáΓ¡«-ºáó¿ß¿¼δ¼¿.
  645. ê߬½ετÑ¡¿Ñ ¿º «íΘÑú« »αáó¿½á ßñѽᡫ ñ½∩ ß¿ßΓѼδ, ¬«Γ«αá∩ ¡Ñ ó¿ñ¿Γ  αẽ¿τ¿⌐
  646. ¼Ñªñπ  Σá⌐½á¼¿  αạδσ Γ¿»«ó. ü«½ÑÑ »«ñα«í¡« ¿ß»«½∞º«óá¡¿Ñ Σπ¡¬µ¿¿ ioctl ñ½∩
  647. ΓÑନ¡á½«ó αáßß¼«ΓαÑ¡« ó αáºñѽѠ10.3.3.
  648.     æ¿¡Γá¬ß¿ß ¬«¼á¡ñ¡«⌐ ßΓ᫬¿, ß«ñÑαªáΘÑ⌐ ó맮ó ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿:
  649.  
  650.     ioctl(fd,command,arg);
  651.  
  652. úñÑ fd - ñÑß¬α¿»Γ«α Σá⌐½á, ó«ºóαáΘáѼδ⌐  »αÑñóáα¿Γѽ∞¡«  óδºóá¡¡«⌐  Σπ¡¬µ¿Ñ⌐
  653. open,  command  - ñÑ⌐ßΓó¿Ñ (¬«¼á¡ñá), ¬«Γ«α«Ñ ¡Ñ«íσ«ñ¿¼« óδ»«½¡¿Γ∞ ñαá⌐óÑαπ,
  654. arg - »áαá¼ÑΓα ¬«¼á¡ñδ (¼«ªÑΓ íδΓ∞ π¬áºáΓѽѼ ¡á ßΓαπ¬Γπαπ). è«¼á¡ñδ  ß»Ñµ¿-
  655. Σ¿τ¡δ  ñ½∩ αẽ¿τ¡δσ ñαá⌐óÑα«ó; ß½Ññ«óáΓѽ∞¡«, ¬áªñδ⌐ ñαá⌐óÑα ¿¡ΓÑα»αÑΓ¿απÑΓ
  656. ¬«¼á¡ñδ ó ß««ΓóÑΓßΓó¿¿ ß« ßó«¿¼¿ ó¡πΓαÑ¡¡¿¼¿ ß»Ñµ¿Σ¿¬áµ¿∩¼¿, «Γ  ¬«¼á¡ñδ,  ó
  657. ßó«ε  «τÑαÑñ∞, ºáó¿ß¿Γ Σ«α¼áΓ ßΓαπ¬Γπαδ ñá¡¡δσ, «»¿ßδóáѼ«⌐ »ÑαÑñáóáÑ¼δ¼ »á-
  658. αá¼ÑΓα«¼. äαá⌐óÑαδ ¼«úπΓ ßτ¿ΓδóáΓ∞ ßΓαπ¬Γπαπ ñá¡¡δσ arg ¿º »α«ßΓαá¡ßΓóá  ºá-
  659. ñáτ¿ ó ß««ΓóÑΓßΓó¿¿ ß »αÑñ«»αÑñѽѡ¡δ¼ Σ«α¼áΓ«¼ ¿½¿ ºá»¿ßδóáΓ∞ πßΓᡫ󬿠πß-
  660. Γα«⌐ßΓóá  ó »α«ßΓαá¡ßΓó« ºáñáτ¿ »« áñαÑßπ π¬áºá¡¡«⌐ ßΓαπ¬Γπαδ. ìá»α¿¼Ñα, ¡á-
  661. ½¿τ¿Ñ ¿¡ΓÑαΣÑ⌐ßá, »αÑñ«ßΓáó½∩Ѽ«ú« Σπ¡¬µ¿Ñ⌐ ioctl, ñáÑΓ ó«º¼«ª¡«ßΓ∞  »«½∞º«-
  662. óáΓѽ∩¼  πßΓá¡áó½¿óáΓ∞  ñ½∩  ΓÑନ¡á½á ß¬«α«ßΓ∞ »ÑαÑñáτ¿ ¿¡Σ«α¼áµ¿¿ ó í«ñáσ,
  663. »ÑαѼáΓδóáΓ∞ ¼áú¡¿Γ¡πε ½Ñ¡Γπ, ¿, ¡á¬«¡Ñµ, óδ»«½¡∩Γ∞ ßÑΓÑóδÑ «»Ñαᵿ¿,  ºáñá-
  664. óá∩ ¡«¼Ñαá ó¿αΓπá½∞¡δσ ¬á¡á½«ó ¿ ßÑΓÑóδÑ áñαÑßá.
  665.  
  666.  
  667.     E10.1.2.6 äαπú¿Ñ Σπ¡¬µ¿¿, ¿¼ÑεΘ¿Ñ «Γ¡«ΦÑ¡¿Ñ ¬ Σá⌐½«ó«⌐ ß¿ßΓѼÑF
  668.  
  669.     Æá¬¿Ñ  Σπ¡¬µ¿¿ αáí«Γδ ß Σá⌐½«ó«⌐ ß¿ßΓѼ«⌐, ¬á¬ stat ¿ chmod, óδ»«½¡∩εΓß∩
  670. «ñ¿¡á¬«ó«, ¬á¬ ñ½∩ «íδτ¡δσ Σá⌐½«ó, Γᬠ¿ ñ½∩ πßΓα«⌐ßΓó; «¡¿  ¼á¡¿»π½¿απεΓ  ß
  671. ¿¡ñѬ߫¼, ¡Ñ «íαáΘá∩ß∞ ¬ ñαá⌐óÑαπ. äáªÑ ß¿ßΓѼ¡á∩ Σπ¡¬µ¿∩ lseek αáí«ΓáÑΓ ñ½∩
  672. πßΓα«⌐ßΓó. ìá»α¿¼Ñα, Ñß½¿ »α«µÑßß »«ñó«ñ¿Γ ú«½«ó¬π ¡á ½Ñ¡Γ«»α«Γ∩ª¡«¼ πßΓα«⌐-
  673. ßΓóÑ  ¬  π¬áºá¡¡«¼π  áñαÑßπ  ß¼ÑΘÑ¡¿∩ ó íá⌐Γáσ ß »«¼«Θ∞ε Σπ¡¬µ¿¿ lseek, ∩ñα«
  674. ¬«ααÑ¬Γ¿απÑΓ ß¼ÑΘÑ¡¿Ñ ó Γáí½¿µÑ Σá⌐½«ó ¡«  ¡Ñ  óδ»«½¡∩ÑΓ  ¡¿¬á¬¿σ  ñÑ⌐ßΓó¿⌐,
  675. ߻ѵ¿Σ¿τ¡δσ  ñ½∩ ñá¡¡«ú« Γ¿»á ñαá⌐óÑαá. è«úñá »«ºñ¡ÑÑ »α«µÑßß óδ»«½¡∩ÑΓ τΓÑ-
  676. ¡¿Ñ (read) ¿½¿ ºá»¿ß∞ (write), ∩ñα« »ÑαÑßδ½áÑΓ  áñαÑß  ß¼ÑΘÑ¡¿∩  ¿º  Γáí½¿µδ
  677. Σá⌐½«ó ó áñαÑß¡«Ñ »α«ßΓαá¡ßΓó« ºáñáτ¿, »«ñ«í¡« Γ«¼π, ¬á¬ φΓ« ¿¼ÑÑΓ ¼ÑßΓ« »α¿
  678. αáí«ΓÑ  ß Σá⌐½á¼¿ «íδτ¡«ú« Γ¿»á, ¿ πßΓα«⌐ßΓó« Σ¿º¿τÑ߬¿ »ÑαѼÑΘáÑΓ ú«½«ó¬π ¬
  679. ß««ΓóÑΓßΓóπεΘѼπ ß¼ÑΘÑ¡¿ε, π¬áºá¡¡«¼π ó »α«ßΓαá¡ßΓóÑ ºáñáτ¿. ¥Γ«Γ ß½πτá⌐ ¿½-
  680. ½εßΓα¿απÑΓß∩ ¡á »α¿¼ÑαÑ ó αáºñѽѠ10.3.
  681.  
  682.  
  683.                                     300
  684.  
  685.     ÅÑα¿ΣÑα¿⌐¡δÑ         æ«Ññ¿¡¿Γѽ∞¡á∩              éÑ¬Γ«α
  686.      πßΓα«⌐ßΓóá              »á¡Ñ½∞                »αÑαδóá¡¿∩
  687.                                               ┌──────────────────┐
  688.                                               │         ∙        │
  689.          tty00 ─────────────┐                 │         ∙        │
  690.          tty01 ....         │                 │         ∙        │
  691.           ...               │ ┌──┐            ├──────────────────┤
  692.          tty07 ─────────────┴─┤  │∙∙∙∙∙∙∙∙∙∙∙∙│     ttyintr 0    │
  693.          tty08 ─────────────┐ ├──┤            ├──────────────────┤
  694.          tty09 ....         ├─┤  │∙∙∙∙∙∙∙∙∙∙∙∙│     ttyintr 1    │
  695.           ...      ┌────────┘ ├──┤            ├──────────────────┤
  696.          tty15 ────┘ ┌────────┤  │∙∙∙∙∙∙∙∙∙∙∙∙│     consintr     │
  697.        ¬«¡ß«½∞ ──────┘        ├──┤            ├──────────────────┤
  698.      »α¿¡ΓÑα00 ─────────────┬─┤  │∙∙∙∙∙∙∙∙∙∙∙∙│    printintr 0   │
  699.                ....         │ ├──┤            ├──────────────────┤
  700.      »α¿¡ΓÑα03 ─────────────┘ │  │            │         ∙        │
  701.                               │  │            │         ∙        │
  702.                               └──┘            └──────────────────┘
  703.  
  704.                 É¿ßπ¡«¬ 10.6. ÅαÑαδóá¡¿∩ «Γ πßΓα«⌐ßΓó
  705.  
  706.  
  707.  
  708.     E10.1.3 Åα«úαá¼¼δ «íαáí«Γ¬¿ »αÑαδóá¡¿⌐F
  709.  
  710.     èᬠπªÑ ú«ó«α¿½«ß∞ óδΦÑ (αáºñѽ 6.4.1), ó«º¡¿¬¡«óÑ¡¿Ñ »αÑαδóá¡¿∩  »«íπª-
  711. ñáÑΓ ∩ñα« ºá»π߬áΓ∞ »α«úαá¼¼π «íαáí«Γ¬¿ »αÑαδóá¡¿⌐, ó «ß¡«óÑ á½ú«α¿Γ¼á ¬«Γ«-
  712. α«⌐ ½Ñª¿Γ ß««Γ¡«ΦÑ¡¿Ñ ¼Ñªñπ πßΓα«⌐ßΓó«¼, óδºóáóΦ¿¼ »αÑαδóá¡¿Ñ, ¿ ß¼ÑΘÑ¡¿Ñ¼ ó
  713. Γáí½¿µÑ  óÑ¬Γ«α«ó  »αÑαδóá¡¿⌐. ƒñα« ºá»π߬áÑΓ »α«úαá¼¼π «íαáí«Γ¬¿ »αÑαδóá¡¿⌐
  714. ñ½∩ ñá¡¡«ú« Γ¿»á πßΓα«⌐ßΓóá, »ÑαÑñáóá∩ Ñ⌐ ¡«¼Ñα πßΓα«⌐ßΓóá ¿½¿ ñαπú¿Ñ  »áαá-
  715. ¼ÑΓαδ  ñ½∩ Γ«ú«, τΓ«íδ ¿ñÑ¡Γ¿Σ¿µ¿α«óáΓ∞ Ññ¿¡¿µπ πßΓα«⌐ßΓóá, óδºóáóΦπε »αÑαδ-
  716. óá¡¿Ñ. ìá»α¿¼Ñα, ó Γáí½¿µÑ óÑ¬Γ«α«ó »αÑαδóá¡¿⌐ ¡á É¿ßπ¡¬Ñ 10.6 »«¬áºá¡δ  ñóÑ
  717. Γ«τ¬¿  óσ«ñá  ñ½∩  «íαáí«Γ¬¿ »αÑαδóá¡¿⌐ «Γ ΓÑନ¡á½«ó ("ttyintr"), ¬áªñá∩ ¿º
  718. ¬«Γ«αδσ ¿ß»«½∞ºπÑΓß∩ ñ½∩ «íαáí«Γ¬¿ »αÑαδóá¡¿⌐, »«ßΓπ»¿óΦ¿σ «Γ 8  ΓÑନ¡á½«ó.
  719. àß½¿  πßΓα«⌐ßΓó«  tty09  »αÑαóὫ αáí«Γπ ß¿ßΓѼδ, ß¿ßΓѼá óδºδóáÑΓ »α«úαá¼¼π
  720. «íαáí«Γ¬¿ »αÑαδóá¡¿∩, áßß«µ¿¿α«óá¡¡πε ß ¼ÑßΓ«¼ á»»áαáΓ¡«ú« »«ñ¬½ετÑ¡¿∩  πßΓ-
  721. α«⌐ßΓóá.  Å«ß¬«½∞¬π ß «ñ¡«⌐ ºá»¿ß∞ε ó Γáí½¿µÑ óÑ¬Γ«α«ó »αÑαδóá¡¿⌐ ¼«ªÑΓ íδΓ∞
  722. ßó∩ºá¡« ¼¡«ªÑßΓó« Σ¿º¿τÑ߬¿σ πßΓα«⌐ßΓó, ñαá⌐óÑα  ñ«½ªÑ¡  π¼ÑΓ∞  αáß»«º¡áóáΓ∞
  723. πßΓα«⌐ßΓó«,  óδºóáóΦÑÑ »αÑαδóá¡¿Ñ. ìá α¿ßπ¡¬Ñ ºá»¿ß¿ ó Γáí½¿µÑ óÑ¬Γ«α«ó »αÑ-
  724. αδóá¡¿⌐, ß««ΓóÑΓßΓóπεΘ¿Ñ »αÑαδóá¡¿∩¼ «Γ ΓÑନ¡á½«ó, ¿¼ÑεΓ ¼ÑΓ¬¿ 0 ¿ 1, τΓ«íδ
  725. ß¿ßΓѼá αẽ¿τá½á ¿σ ¼Ñªñπ ß«í«⌐ »α¿ ó맮óÑ »α«úαá¼¼δ «íαáí«Γ¬¿  »αÑαδóá¡¿⌐,
  726. ¿ß»«½∞ºπ∩ ¬ »α¿¼Ñαπ φëà¡«¼Ñα ó ¬áτÑßΓóÑ »ÑαÑñáóáѼ«ú« »α«úαἼѠ»áαá¼ÑΓαá.
  727. Åα«úαἼᠠ«íαáí«Γ¬¿  »αÑαδóá¡¿⌐  ¿ß»«½∞ºπÑΓ φëà¡«¼Ñα ¿ ñαπúπε ¿¡Σ«α¼áµ¿ε,
  728. »ÑαÑñá¡¡πε ¼Ñσá¡¿º¼«¼ »αÑαδóá¡¿∩, ñ½∩ Γ«ú«, τΓ«íδ πñ«ßΓ«óÑα¿Γ∞ß∩, τΓ« ¿¼Ñ¡¡«
  729. πßΓα«⌐ßΓó« tty09, á ¡Ñ tty12, »αÑαóὫ αáí«Γπ ß¿ßΓѼδ. ¥Γ«Γ »α¿¼Ñα  ó  π»α«-
  730. ΘÑ¡¡«¼ ó¿ñÑ »«¬áºδóáÑΓ Γ«, τΓ« ¿¼ÑÑΓ ¼ÑßΓ« ó αÑá½∞¡δσ ß¿ßΓѼáσ, úñÑ ¡á ßἫ¼
  731. ñѽѠ ßπΘÑßΓóπÑΓ  ¡Ñ߬«½∞¬«  πα«ó¡Ñ⌐ ¬«¡Γα«½½Ñα«ó ¿ ß««ΓóÑΓßΓóπεΘ¿σ »α«úαá¼¼
  732. «íαáí«Γ¬¿ »αÑαδóá¡¿⌐, ¡« «¡ ¿½½εßΓα¿απÑΓ «íΘ¿Ñ »α¿¡µ¿»δ.
  733.     àß½¿ »«ñóÑßΓ¿ ¿Γ«ú, ¼«ª¡« ß¬áºáΓ∞, τΓ«  ¡«¼Ñα  πßΓα«⌐ßΓóá,  ¿ß»«½∞ºπѼδ⌐
  734. »α«úαá¼¼«⌐  «íαáí«Γ¬¿ »αÑαδóá¡¿⌐, ¿ñÑ¡Γ¿Σ¿µ¿απÑΓ Ññ¿¡¿µπ á»»áαáΓπαδ, á ¼½áñ-
  735. Φ¿⌐ ¡«¼Ñα ó Σá⌐½Ñ πßΓα«⌐ßΓóá ¿ñÑ¡Γ¿Σ¿µ¿απÑΓ πßΓα«⌐ßΓó« ñ½∩ ∩ñαá. äαá⌐óÑα πß-
  736. Γα«⌐ßΓóá πßΓá¡áó½¿óáÑΓ ß««ΓóÑΓßΓó¿Ñ ¼Ñªñπ ¼½áñΦ¿¼ ¡«¼Ñα«¼ πßΓα«⌐ßΓóá ¿ ¡«¼Ñ-
  737. α«¼ Ññ¿¡¿µδ á»»áαáΓπαδ.
  738.  
  739.  
  740.     E10.2 äêæèÄé¢à äÉÇëéàÉ¢F
  741.  
  742.     Æá¬ ß½«ª¿½«ß∞ ¿ßΓ«α¿τÑ߬¿, τΓ« ñ¿ß¬«óδÑ πßΓα«⌐ßΓóá ó ß¿ßΓѼáσ UNIX  αáº-
  743. í¿ó὿ß∞  ¡á  αáºñѽδ,  ß«ñÑαªáΘ¿Ñ  αẽ¿τ¡δÑ Σá⌐½«óδÑ ß¿ßΓѼδ, τΓ« «º¡áτὫ
  744.  
  745.                                     301
  746.  
  747. "ñѽѡ¿Ñ [ñ¿ß¬«ó«ú«] »á¬ÑΓá ¡á ¡Ñ߬«½∞¬« π»αáó½∩Ѽδσ »«-ßó«Ñ¼π τáßΓÑ⌐"  (ß¼.
  748. [System  V 84b]). ìá»α¿¼Ñα, Ñß½¿ ¡á ñ¿ß¬Ñ αáß»«½áúáεΓß∩ τÑΓδαÑ Σá⌐½«óδÑ ß¿ß-
  749. ΓѼδ, áñ¼¿¡¿ßΓαáΓ«α ¼«ªÑΓ «ßΓáó¿Γ∞ «ñ¡π ¿º ¡¿σ ¡Ñß¼«¡Γ¿α«óá¡¡«⌐, «ñ¡π  ß¼«¡-
  750. Γ¿α«óáΓ∞  Γ«½∞¬« ñ½∩ τΓÑ¡¿∩, á ñóÑ ñαπú¿σ Γ«½∞¬« ñ½∩ ºá»¿ß¿. ìÑß¼«Γα∩ ¡á Γ«,
  751. τΓ« óßÑ Σá⌐½«óδÑ ß¿ßΓѼδ ß«ßπΘÑßΓóπεΓ ¡á «ñ¡«¼ Σ¿º¿τÑ߬«¼ πßΓα«⌐ßΓóÑ,  »«½∞-
  752. º«óáΓѽ¿  ¡Ñ  ¼«úπΓ ¡¿ «íαáΘáΓ∞ß∩ ¬ Σá⌐½á¼ ¡Ñ¼«¡Γ¿α«óá¡¡«⌐ Σá⌐½«ó«⌐ ß¿ßΓѼδ,
  753. ¿ß»«½∞ºπ∩ ¼ÑΓ«ñδ ñ«ßΓπ»á, «»¿ßá¡¡δÑ ó ú½áóáσ 4 ¿ 5, ¡¿  ºá»¿ßδóáΓ∞  Σá⌐½δ  ó
  754. Σá⌐½«óδÑ ß¿ßΓѼδ, ß¼«¡Γ¿α«óá¡¡δÑ Γ«½∞¬« ñ½∩ τΓÑ¡¿∩. ü«½ÑÑ Γ«ú«, Γᬠ¬á¬ ¬áª-
  755. ñδ⌐  αáºñѽ  (¿,  ß½Ññ«óáΓѽ∞¡«, Σá⌐½«óá∩ ß¿ßΓѼá) ºá¡¿¼áÑΓ ¡á ñ¿ß¬Ñ ß¼Ñª¡δÑ
  756. ñ«α«ª¬¿ ¿ µ¿½¿¡ñαδ, ß¬«»¿α«óáΓ∞ óßε Σá⌐½«óπε ß¿ßΓѼπ ½ÑúτÑ, τѼ ó  Γ«¼  ß½π-
  757. τáÑ, Ñß½¿ íδ αáºñѽ ºá¡¿¼á½ πτáßΓ¬¿, αáºíα«ßá¡¡δÑ »« óßѼπ ñ¿ß¬«ó«¼π Γ«¼π.
  758.     ä¿ß¬«óδ⌐  ñαá⌐óÑα Γαá¡ß½¿απÑΓ áñαÑß Σá⌐½«ó«⌐ ß¿ßΓѼδ, ß«ßΓ«∩Θ¿⌐ ¿º ½«ú¿-
  759. τÑ߬«ú« ¡«¼Ñαá πßΓα«⌐ßΓóá ¿ ¡«¼Ñαá í½«¬á, ó Γ«τ¡δ⌐ ¡«¼Ñα ñ¿ß¬«ó«ú«  ßÑ¬Γ«αá.
  760. äαá⌐óÑα  »«½πτáÑΓ áñαÑß «ñ¡¿¼ ¿º ß½ÑñπεΘ¿σ »πΓÑ⌐: ½¿í« ßΓαáΓÑú¿τÑ߬á∩ »α«µÑ-
  761. ñπαá ¿ß»«½∞ºπÑΓ íπΣÑα ¿º íπΣÑα¡«ú« »π½á, ºáú«½«ó«¬ ¬«Γ«α«ú« ß«ñÑαª¿Γ  ¡«¼Ñαá
  762. πßΓα«⌐ßΓóá  ¿  í½«¬á,  ½¿í«  »α«µÑñπαδ  τΓÑ¡¿∩  ¿ ºá»¿ß¿ »ÑαÑñáεΓ ½«ú¿τÑ߬¿⌐
  763. (¼½áñΦ¿⌐) ¡«¼Ñα πßΓα«⌐ßΓóá ó ¬áτÑßΓóÑ »áαá¼ÑΓαá; «¡¿ »αÑ«íαáºπεΓ áñαÑß  ß¼Ñ-
  764. ΘÑ¡¿∩  ó  íá⌐Γáσ, σαá¡∩Θ¿⌐ß∩ ó »α«ßΓαá¡ßΓóÑ ºáñáτ¿, ó áñαÑß ß««ΓóÑΓßΓóπεΘÑú«
  765. í½«¬á. ä¿ß¬«óδ⌐ ñαá⌐óÑα ¿ß»«½∞ºπÑΓ ¡«¼Ñα πßΓα«⌐ßΓóá ñ½∩ ¿ñÑ¡Γ¿Σ¿¬áµ¿¿  Σ¿º¿-
  766. τÑ߬«ú«  πßΓα«⌐ßΓóá  ¿  π¬áºá¡¿∩ ¿ß»«½∞ºπѼ«ú« αáºñѽá, «íαáΘá∩ß∞ »α¿ φΓ«¼ ¬
  767. ó¡πΓαÑ¡¡¿¼ Γáí½¿µá¼ ñ½∩ »«¿ß¬á ßÑ¬Γ«αá, «Γ¼ÑτáεΘÑú« ¡áτὫ αáºñѽᠡá ñ¿ß¬Ñ.
  768. ìᬫ¡Ñµ, «¡ ñ«íáó½∩ÑΓ ¡«¼Ñα í½«¬á ó Σá⌐½«ó«⌐ ß¿ßΓѼѠ¬ ¡«¼Ñαπ í½«¬á, ß ¬«Γ«-
  769. α«ú« ¡áτ¿¡áÑΓß∩ ¬áªñδ⌐ ßÑ¬Γ«α, τΓ«íδ ¿ñÑ¡Γ¿Σ¿µ¿α«óáΓ∞  ßÑ¬Γ«α,  ¿ß»«½∞ºπѼδ⌐
  770. ñ½∩ óó«ñá-óδó«ñá.
  771.  
  772.          ┌─────────────────────────────────────────────┐
  773.          │ Éáºñѽ    ìáτá½∞¡δ⌐ í½«¬     ä½¿¡á ó í½«¬áσ │
  774.          │                                             │
  775.          │           ÉẼÑα í½«¬á = 512 íá⌐Γ           │
  776.          │                                             │
  777.          │    0                0                 64000 │
  778.          │    1            64000                944000 │
  779.          │    2           168000                840000 │
  780.          │    3           336000                672000 │
  781.          │    4           504000                504000 │
  782.          │    5           672000                336000 │
  783.          │    6           840000                168000 │
  784.          │    7                0               1008000 │
  785.          └─────────────────────────────────────────────┘
  786.  
  787.                É¿ßπ¡«¬ 10.7. ÉáºñÑ½δ ¡á ñ¿ß¬Ñ RP07
  788.  
  789.  
  790.     êßΓ«α¿τÑ߬¿ ß½«ª¿½«ß∞ Γá¬, τΓ« αẼÑαδ ñ¿ß¬«óδσ αáºñѽ«ó πßΓá¡áó½¿óáεΓß∩
  791. ó  ºáó¿ß¿¼«ßΓ¿ «Γ Γ¿»á ñ¿ß¬á. ìá»α¿¼Ñα, ñ¿ß¬ DEC RP07 αáºí¿Γ ¡á αáºñѽδ, σá-
  792. αá¬ΓÑα¿ßΓ¿¬á ¬«Γ«αδσ »α¿óÑñѡᠠ¡á  É¿ßπ¡¬Ñ  10.7.  ÅαÑñ»«½«ª¿¼,  τΓ«  Σá⌐½δ
  793. "/dev/dsk0",  "/dev/dsk1",  "/dev/dsk2" ¿ "/dev/dsk3" ß««ΓóÑΓßΓóπεΓ αáºñѽá¼
  794. ñ¿ß¬á RP07, ¿¼ÑεΘ¿¼ ¡«¼Ñαá «Γ 0 ñ« 3, ¿ ¿¼ÑεΓ  á¡á½«ú¿τ¡δÑ  ¼½áñΦ¿Ñ  ¡«¼Ñαá.
  795. ÅπßΓ∞  αẼÑα ½«ú¿τÑ߬«ú« í½«¬á ó Σá⌐½«ó«⌐ ß¿ßΓѼѠ߫ó»áñáÑΓ ß αẼÑα«¼ ñ¿ß-
  796. ¬«ó«ú« í½«¬á. àß½¿ ∩ñα« »δΓáÑΓß∩ «íαáΓ¿Γ∞ß∩ ¬ í½«¬π ß ¡«¼Ñα«¼ 940 ó Σá⌐½«ó«⌐
  797. ß¿ßΓѼÑ, σαá¡∩ΘÑ⌐ß∩ ó "/dev/dsk3", ñ¿ß¬«óδ⌐ ñαá⌐óÑα  »ÑαÑáñαÑßπÑΓ  ºá»α«ß  ¬
  798. í½«¬π  ß ¡«¼Ñα«¼ 336940 (αáºñѽ 3 ¡áτ¿¡áÑΓß∩ ß í½«¬á, ¿¼ÑεΘÑú« ¡«¼Ñα 336000;
  799. 336000 + 940 = 336940) ¡á ñ¿ß¬Ñ.
  800.     ÉẼÑαδ αáºñѽ«ó ¡á ñ¿ß¬Ñ óáα∞¿απεΓß∩ ¿ áñ¼¿¡¿ßΓαáΓ«αδ αáß»«½áúáεΓ  Σá⌐-
  801. ½«óδÑ  ß¿ßΓѼδ ó αáºñѽáσ ß««ΓóÑΓßΓóπεΘÑú« αẼÑαá: í«½∞Φ¿Ñ Σá⌐½«óδÑ ß¿ßΓѼδ
  802. »«»áñáεΓ ó αáºñѽδ í«½∞ΦÑú« αẼÑαá ¿ Γ. ñ. ÉáºñÑ½δ ¡á ñ¿ß¬Ñ ¼«úπΓ  »ÑαѬαδ-
  803. óáΓ∞ß∩. ìá»α¿¼Ñα, αáºñѽδ 0 ¿ 1 ¡á ñ¿ß¬Ñ RP07 ¡Ñ »ÑαÑßѬáεΓß∩, ¡« ó¼ÑßΓÑ «¡¿
  804. ºá¡¿¼áεΓ  í½«¬¿  ß ¡«¼ÑαἿ «Γ 0 ñ« 1008000, Γ« ÑßΓ∞ óÑß∞ ñ¿ß¬. Éáºñѽ 7 Γá¬
  805. ªÑ ºá¡¿¼áÑΓ óÑß∞ ñ¿ß¬. ÅÑαѬαδΓ¿Ñ αáºñѽ«ó ¡Ñ ¿¼ÑÑΓ º¡áτÑ¡¿∩, »«ß¬«½∞¬π Σá⌐-
  806.  
  807.                                     302
  808.  
  809. ½«óδÑ ß¿ßΓѼδ, σαá¡∩Θ¿Ñß∩ ó αáºñѽáσ, αẼÑΘáεΓß∩ Γᬿ¼ «íαẫ¼,  τΓ«  ¼Ñªñπ
  810. ¡¿¼¿  ¡ÑΓ  »ÑαÑßÑτÑ¡¿⌐.  ê¼ÑΓ∞  «ñ¿¡  αáºñѽ, ó¬½ετáεΘ¿⌐ ó ßÑí∩ óßÑ ñ¿ß¬«ó«Ñ
  811. »α«ßΓαá¡ßΓó«, óδú«ñ¡«, »«ß¬«½∞¬π óÑß∞ Γ«¼ ¼«ª¡« íδßΓα« ß¬«»¿α«óáΓ∞.
  812.     êß»«½∞º«óá¡¿Ñ αáºñѽ«ó Σ¿¬ß¿α«óá¡¡«ú«  ß«ßΓáóá  ¿  αẼÑαá  «úαá¡¿τ¿óáÑΓ
  813. ú¿í¬«ßΓ∞  ñ¿ß¬«ó«⌐ ¬«¡Σ¿úπαᵿ¿. ê¡Σ«α¼áµ¿ε « αáºñѽáσ ó ºá¬«ñ¿α«óá¡¡«¼ ó¿ñÑ
  814. ¡Ñ ß½ÑñπÑΓ ó¬½ετáΓ∞ ó ñ¿ß¬«óδ⌐ ñαá⌐óÑα, ¡« ¡πª¡« »«¼ÑßΓ¿Γ∞ ó Γáí½¿µπ  ß«ñÑα-
  815. ª¿¼«ú« ñ¿ß¬«ó«ú« Γ«¼á. Äñ¡á¬«, ¡á⌐Γ¿ «íΘÑÑ ¼ÑßΓ« ¡á óßÑσ ñ¿ß¬áσ ñ½∩ αẼÑΘÑ-
  816. ¡¿∩ Γáí½¿µδ ß«ñÑন¼«ú« ñ¿ß¬«ó«ú« Γ«¼á ¿ ß«σαá¡¿Γ∞ ΓѼ ßá¼δ¼ ß«ó¼ÑßΓ¿¼«ßΓ∞ ß
  817. »αÑñδñπΘ¿¼¿  óÑαß¿∩¼¿  ß¿ßΓÑ¼δ  ñ«ó«½∞¡«  Γαπñ¡«. é ßπΘÑßΓóπεΘ¿σ αÑ὿ºáµ¿∩σ
  818. óÑαß¿¿ V »αÑñ»«½áúáÑΓß∩, τΓ« í½«¬ ¡áτá½∞¡«⌐ ºáúαπº¬¿ »Ñαó«⌐ ¿º Σá⌐½«óδσ ß¿ß-
  819. ΓѼ ¡á ñ¿ß¬Ñ ºá¡¿¼áÑΓ »Ñαóδ⌐ ßÑ¬Γ«α Γ«¼á, σ«Γ∩ »« ½«ú¿¬Ñ φΓ«,  ¬áºá½«ß∞  íδ,
  820. ßἫѠ»«ñσ«ñ∩ΘÑÑ ¼ÑßΓ« ñ½∩ Γáí½¿µδ ß«ñÑন¼«ú« Γ«¼á. ê óßÑ ªÑ ñ¿ß¬«óδ⌐ ñαá⌐-
  821. óÑα  ñ«½ªÑ¡ ¿¼ÑΓ∞ ºá¬«ñ¿α«óá¡¡πε ¿¡Σ«α¼áµ¿ε « ¼ÑßΓÑ αáß»«½«ªÑ¡¿∩ Γáí½¿µδ ß«-
  822. ñÑন¼«ú« Γ«¼á ñ½∩ ¬áªñ«ú« ñ¿ß¬á, ¡Ñ »αÑ»∩ΓßΓóπ∩ ßπΘÑßΓó«óá¡¿ε ñ¿ß¬«óδσ αáº-
  823. ñѽ«ó »ÑαѼѡ¡«ú« αẼÑαá.
  824.     é ßó∩º¿ ß ΓѼ, τΓ« ñ½∩ ß¿ßΓѼδ UNIX ∩ó½∩ÑΓß∩  Γ¿»¿τ¡δ¼  óδß«¬¿⌐  πα«óÑ¡∞
  825. ñ¿ß¬«ó«ú«  ΓαáΣ¿¬á,  ñαá⌐óÑα  ñ¿ß¬á ñ«½ªÑ¡ ¼á¬ß¿¼¿º¿α«óáΓ∞ »ÑαÑñáτπ ñá¡¡δσ ß
  826. ΓѼ, τΓ«íδ «íÑß»Ñτ¿Γ∞ ¡á¿½πτΦπε »α«¿ºó«ñ¿Γѽ∞¡«ßΓ∞  óßÑ⌐  ß¿ßΓѼδ.  ì«óÑ⌐Φ¿Ñ
  827. ñ¿ß¬«óδÑ ¬«¡Γα«½½Ñαδ «ßπΘÑßΓó½∩εΓ »½á¡¿α«óá¡¿Ñ óδ»«½¡Ñ¡¿∩ ºáñá¡¿⌐, ΓαÑíπεΘ¿σ
  828. «íαáΘÑ¡¿∩  ¬ ñ¿ß¬π, »«º¿µ¿«¡¿απεΓ ú«½«ó¬π ñ¿ß¬á ¿ «íÑß»Ñτ¿óáεΓ »ÑαÑñáτπ ñá¡-
  829. ¡δσ ¼Ñªñπ ñ¿ß¬«¼ ¿ µÑ¡Γαá½∞¡δ¼ »α«µÑßß«α«¼; ¿¡áτÑ φΓ« »α¿σ«ñ¿Γß∩ ñѽáΓ∞ ñ¿ß-
  830. ¬«ó«¼π ñαá⌐óÑαπ.
  831.     æÑαó¿ß¡δÑ »α«úαá¼¼δ ¼«úπΓ ¡Ñ»«ßαÑñßΓóÑ¡¡« «íαáΘáΓ∞ß∩  ¬  ñ¿ß¬π  ó  «íσ«ñ
  832. ßΓá¡ñáαΓ¡«ú«  ¼ÑΓ«ñá ñ«ßΓπ»á ¬ Σá⌐½«ó«⌐ ß¿ßΓѼÑ, αáßß¼«ΓαÑ¡¡«ú« ó ú½áóáσ 4 ¿
  833. 5, ¬á¬ »«½∞ºπ∩ß∞ í½«τ¡δ¼ ¿¡ΓÑαΣÑ⌐ß«¼, Γᬠ¿ ¡Ñ »α¿íÑúá∩  ¬  ßΓαπ¬Γπα¿α«óá¡¿ε
  834. ñá¡¡δσ.  ìÑ»«ßαÑñßΓóÑ¡¡«  αáí«ΓáεΓ  ß  ñ¿ß¬«¼  ñóÑ ó᪡δÑ »α«úαá¼¼δ - mkfs ¿
  835. fsck. Åα«úαá¼¼á mkfs Σ«α¼áΓ¿απÑΓ αáºñѽ ñ¿ß¬á  ñ½∩  Σá⌐½«ó«⌐  ß¿ßΓÑ¼δ  UNIX,
  836. ß«ºñáóá∩ »α¿ φΓ«¼ ßπ»Ñαí½«¬, ß»¿ß«¬ ¿¡ñѬ߫ó, ß»¿ß«¬ ßó«í«ñ¡δσ ñ¿ß¬«óδσ í½«-
  837. ¬«ó  ß π¬áºáΓѽ∩¼¿ ¿ ¬«α¡Ñó«⌐ ¬áΓὫú ¡«ó«⌐ Σá⌐½«ó«⌐ ß¿ßΓѼδ. Åα«úαá¼¼á fsck
  838. »α«óÑα∩ÑΓ µÑ½«ßΓ¡«ßΓ∞ ßπΘÑßΓóπεΘÑ⌐ Σá⌐½«ó«⌐ ß¿ßΓÑ¼δ ¿ ¿ß»αáó½∩ÑΓ «Φ¿í¬¿, ¬á¬
  839. »«¬áºá¡« ó ú½áóÑ 5.
  840.     Éáßß¼«Γα¿¼ »α«úαá¼¼π, »α¿óÑñÑ¡¡πε ¡á É¿ßπ¡¬Ñ 10.8, ó »α¿¼Ñ¡Ñ¡¿¿ ¬ Σá⌐½á¼
  841. "/dev/dsk15" ¿ "/dev/rdsk15", ¿ »αÑñ»«½«ª¿¼, τΓ« ¬«¼á¡ñá ls óδñá½á ß½ÑñπεΘπε
  842. ¿¡Σ«α¼áµ¿ε:
  843.     ls -1 /dev/dsk15 /dev/rdsk15
  844.  
  845.     br--------  2 root   root   0,21 Feb 12 15:40   /dev/dsk15
  846.     crw-rw----  2 root   root   7,21 Mar  7 09:29   /dev/rdsk15
  847.  
  848.     ÄΓßεñá ó¿ñ¡«, τΓ« Σá⌐½ "/dev/dsk15"  ß««ΓóÑΓßΓóπÑΓ  πßΓα«⌐ßΓóπ  í½«τ¡«ú«
  849. Γ¿»á,  ó½áñѽ∞µÑ¼ ¬«Γ«α«ú« ∩ó½∩ÑΓß∩ »«½∞º«óáΓѽ∞ »«ñ ¿¼Ñ¡Ñ¼ "root", ¿ Γ«½∞¬«
  850. »«½∞º«óáΓѽ∞ "root" ¼«ªÑΓ τ¿ΓáΓ∞ ß ¡Ñú« ¡Ñ»«ßαÑñßΓóÑ¡¡«. àú« ßΓáαΦ¿⌐ ¡«¼Ñα -
  851. 0, ¼½áñΦ¿⌐ - 21. öá⌐½ "/dev/rdsk15" ß««ΓóÑΓßΓóπÑΓ  πßΓα«⌐ßΓóπ  »«ß¿¼ó«½∞¡«ú«
  852. óó«ñá-óδó«ñá, ó½áñѽ∞µÑ¼ ¬«Γ«α«ú« ∩ó½∩ÑΓß∩ »«½∞º«óáΓѽ∞ "root", «ñ¡á¬« »αáóá
  853. ñ«ßΓπ»á  ¬ ¬«Γ«α«¼π ¡á ºá»¿ß∞ ¿ τΓÑ¡¿Ñ ÑßΓ∞ ¬á¬ π ó½áñѽ∞µá, Γᬠ¿ π úαπ»»δ.
  854. àú« ßΓáαΦ¿⌐ ¡«¼Ñα - 7, ¼½áñΦ¿⌐ - 21. Åα«µÑßß,  «Γ¬αδóáεΘ¿⌐  Σá⌐½δ,  »«½πτáÑΓ
  855. ñ«ßΓπ» ¬ πßΓα«⌐ßΓóπ τÑαѺ Γáí½¿µπ ¬½ε-
  856. τÑ⌐  πßΓα«⌐ßΓó óó«ñá-óδó«ñá í½«¬á¼¿ ¿ Γáí½¿µπ ¬½ετÑ⌐ πßΓα«⌐ßΓó »«ß¿¼ó«½∞¡«ú«
  857. óó«ñá-óδó«ñá, ß««ΓóÑΓßΓóÑ¡¡«, á  ¼½áñΦ¿⌐  ¡«¼Ñα  πßΓα«⌐ßΓóá  21  ¿¡Σ«α¼¿απÑΓ
  858. ñαá⌐óÑα « Γ«¼, ¬ ¬á¬«¼π αáºñѽπ ñ¿ß¬á »α«¿ºó«ñ¿Γß∩ «íαáΘÑ¡¿Ñ, ¡á»α¿¼Ñα, ñ¿ß-
  859. ¬«ó«ñ 2, αáºñѽ 1. Å«ß¬«½∞¬π ¼½áñΦ¿Ñ ¡«¼Ñαá π Σá⌐½«ó ß«ó»áñáεΓ, «¡¿ ßßδ½áεΓ-
  860. ß∩ ¡á «ñ¿¡ ¿ Γ«Γ ªÑ αáºñѽ ñ¿ß¬á, Ñß½¿ »αÑñ»«½«ª¿Γ∞, τΓ« φΓ« «ñ¡« πßΓα«⌐ßΓó«
  861. (***).  Æá¬¿¼  «íαẫ¼, »α«µÑßß, óδ»«½¡∩εΘ¿⌐ »α«úαá¼¼π, «Γ¬αδóáÑΓ «ñ¿¡ ¿ Γ«Γ
  862.  
  863. ───────────────────────────────────────
  864. (***) ìÑ ßπΘÑßΓóπÑΓ ¿¡«ú« ß»«ß«íá πßΓá¡«ó¿Γ∞, τΓ« ß¿¼ó«½∞¡δ⌐ ¿ í½«τ¡δ⌐ ñαá⌐-
  865.       óÑαδ ßßδ½áεΓß∩ ¡á «ñ¡« ¿ Γ« ªÑ πßΓα«⌐ßΓó«, ¬α«¼Ñ »α«ß¼«Γαá Γáí½¿µ ß¿ß-
  866.       ΓѼ¡«⌐ ¬«¡Σ¿úπαᵿ¿ ¿ ΓѬßΓá »α«úαá¼¼ ñαá⌐óÑαá.
  867.  
  868.  
  869.                                     303
  870.  
  871. ªÑ ñαá⌐óÑα ñóáªñδ (¿ß»«½∞ºπ∩ αẽ¿τ¡δÑ ¿¡ΓÑαΣÑ⌐ßδ), »«º¿µ¿«¡¿απÑΓ ú«½«ó¬π  ¬
  872. ß¼ÑΘÑ¡¿ε  ß áñαÑß«¼ 8192 ¿ ßτ¿ΓδóáÑΓ ñá¡¡δÑ ß φΓ«ú« ¼ÑßΓá. ÉѺπ½∞ΓáΓδ óδ»«½-
  873. ¡Ñ¡¿∩ «»Ñαᵿ⌐ τΓÑ¡¿∩ ñ«½ª¡δ íδΓ∞  ¿ñÑ¡Γ¿τ¡δ¼¿  »α¿  πß½«ó¿¿,  τΓ«  αáí«ΓáÑΓ
  874. Γ«½∞¬« «ñ¡á Σá⌐½«óá∩ ß¿ßΓѼá.
  875.  
  876.     ┌────────────────────────────────────────────────────────────┐
  877.     │ #include "fcntl.h"                                         │
  878.     │ main()                                                     │
  879.     │ {                                                          │
  880.     │      char buf1[4096], buf2[4096]                           │
  881.     │      int fd1, fd2, i;                                      │
  882.     │                                                            │
  883.     │      if (((fd1 = open("/dev/dsk5/", O_RDONLY)) == -1) ||   │
  884.     │               ((fd2 = open("/dev/rdsk5", O_RDONLY)) == -1))│
  885.     │      {                                                     │
  886.     │            printf("«Φ¿í¬á »α¿ «Γ¬αδΓ¿¿\n");                │
  887.     │            exit();                                         │
  888.     │      }                                                     │
  889.     │                                                            │
  890.     │      lseek(fd1, 8192L, 0);                                 │
  891.     │      lseek(fd2, 8192L, 0);                                 │
  892.     │                                                            │
  893.     │      if ((read(fd1, buf1, sizeof(buf1)) == -1) ||          │
  894.     │          (read(fd2, buf2, sizeof(buf2)) == -1))            │
  895.     │      {                                                     │
  896.     │            printf("«Φ¿í¬á »α¿ τΓÑ¡¿¿\n");                  │
  897.     │            exit();                                         │
  898.     │      }                                                     │
  899.     │                                                            │
  900.     │      for (i = 0; i < sizeof(buf1); i++)                    │
  901.     │            if (buf1[i] != buf2[i])                         │
  902.     │            {                                               │
  903.     │                 printf("αẽ¿τ¿Ñ ó ß¼ÑΘÑ¡¿¿ %d\n", i);     │
  904.     │                 exit();                                    │
  905.     │            }                                               │
  906.     │      printf("ñá¡¡δÑ ß«ó»áñáεΓ\n");                         │
  907.     │ }                                                          │
  908.     └────────────────────────────────────────────────────────────┘
  909.  
  910.     É¿ßπ¡«¬ 10.8. ùΓÑ¡¿Ñ ñá¡¡δσ ß ñ¿ß¬á ß ¿ß»«½∞º«ó᡿Ѽ í½«τ¡«ú«
  911.                   ¿¡ΓÑαΣÑ⌐ßá ¿ íѺ ßΓαπ¬Γπα¿α«óá¡¿∩ ñá¡¡δσ
  912.  
  913.  
  914.     Åα«úαá¼¼δ, «ßπΘÑßΓó½∩εΘ¿Ñ τΓÑ¡¿Ñ ¿ ºá»¿ß∞ ¡á ñ¿ß¬ ¡Ñ»«ßαÑñßΓóÑ¡¡«, »αÑñ-
  915. ßΓáó½∩εΓ  «»áß¡«ßΓ∞,  »«ß¬«½∞¬π  ¼á¡¿»π½¿απεΓ  ß τπóßΓó¿Γѽ∞¡«⌐ ¿¡Σ«α¼áµ¿Ñ⌐,
  916. α¿ß¬π∩ ¡áαπΦ¿Γ∞ ß¿ßΓѼ¡πε ºáΘ¿Γπ. Çñ¼¿¡¿ßΓαáΓ«αá¼ ß½ÑñπÑΓ ºáΘ¿ΘáΓ∞ ¿¡ΓÑαΣÑ⌐-
  917. ßδ óó«ñá-óδó«ñá »πΓѼ πßΓᡫ󬿠»αáó ñ«ßΓπ»á ¬  Σá⌐½á¼  ñ¿ß¬«óδσ  πßΓα«⌐ßΓó.
  918. ìá»α¿¼Ñα,  ñ¿ß¬«óδÑ  Σá⌐½δ  "/dev/dsk15" ¿ "/dev/rdsk15" ñ«½ª¡δ »α¿¡áñ½ÑªáΓ∞
  919. »«½∞º«óáΓѽε ß ¿¼Ñ¡Ñ¼ "root", ¿ »αáóá ñ«ßΓπ»á ¬ ¡¿¼ ñ«½ª¡δ  íδΓ∞  «»αÑñѽѡδ
  920. Γᬿ¼  «íαẫ¼,  τΓ«íδ »«½∞º«óáΓѽε "root" í佫 αáºαÑΦÑ¡« τΓÑ¡¿Ñ, á óßѼ «ß-
  921. Γá½∞¡δ¼ »«½∞º«óáΓѽ∩¼ ¿ τΓÑ¡¿Ñ, ¿ ºá»¿ß∞ ñ«½ª¡δ íδΓ∞ ºá»αÑΘÑ¡δ.
  922.     Åα«úαá¼¼δ, «ßπΘÑßΓó½∩εΘ¿Ñ τΓÑ¡¿Ñ ¿ ºá»¿ß∞ ¡á ñ¿ß¬ ¡Ñ»«ßαÑñßΓóÑ¡¡«, ¼«úπΓ
  923. ΓᬪѠ¡áαπΦ¿Γ∞ µÑ½«ßΓ¡«ßΓ∞ ñá¡¡δσ ó  Σá⌐½«ó«⌐  ß¿ßΓѼÑ.  Ç½ú«α¿Γ¼δ  Σá⌐½«ó«⌐
  924. ß¿ßΓѼδ,  αáßß¼«ΓαÑ¡¡δÑ  ó ú½áóáσ 3, 4 ¿ 5, ¬««αñ¿¡¿απεΓ óδ»«½¡Ñ¡¿Ñ «»Ñαᵿ⌐
  925. óó«ñá-óδó«ñá, ßó∩ºá¡¡δσ ß ñ¿ß¬«¼, ΓѼ ßá¼δ¼ »«ññÑনóá∩ µÑ½«ßΓ¡«ßΓ∞ ¿¡Σ«α¼á-
  926. µ¿«¡¡δσ ßΓαπ¬Γπα ¡á ñ¿ß¬Ñ, ó Γ«¼ τ¿ß½Ñ ß»¿ß¬á ßó«í«ñ¡δσ  ñ¿ß¬«óδσ  í½«¬«ó  ¿
  927. π¬áºáΓѽÑ⌐ ¿º ¿¡ñѬ߫ó ¡á ¿¡Σ«α¼áµ¿«¡¡δÑ í½«¬¿ »α∩¼«⌐ ¿ ¬«ßóÑ¡¡«⌐ áñαÑßᵿ¿.
  928. Åα«µÑßßδ, «íαáΘáεΘ¿Ñß∩ ¬ ñ¿ß¬π ¡Ñ»«ßαÑñßΓóÑ¡¡«, «íσ«ñ∩Γ φΓ¿ á½ú«α¿Γ¼δ. ÅπßΓ∞
  929. ñáªÑ ¿σ »α«úαá¼¼δ ¡á»¿ßá¡δ ß í«½∞Φ«⌐ «ßë᫪¡«ßΓ∞ε, »α«í½Ñ¼á µÑ½«ßΓ¡«ßΓ¿ óßÑ
  930.  
  931.                                     304
  932.  
  933. αáó¡«  ¡Ñ ¿ßτѺ¡ÑΓ, Ñß½¿ «¡¿ óδ»«½¡∩εΓß∩ »áαώѽ∞¡« ß αáí«Γ«⌐ ñαπú«⌐ Σá⌐½«-
  934. ó«⌐ ß¿ßΓѼδ. Å« φΓ«⌐ »α¿τ¿¡Ñ »α«úαá¼¼á fsck ¡Ñ ñ«½ª¡á óδ»«½¡∩Γ∞ß∩ »α¿  ¡á½¿-
  935. τ¿¿ á¬Γ¿ó¡«⌐ Σá⌐½«ó«⌐ ß¿ßΓѼδ.
  936.     äóá  Γ¿»á  ñ¿ß¬«ó«ú« ¿¡ΓÑαΣÑ⌐ßá αẽ¿τáεΓß∩ ¼Ñªñπ ß«í«⌐ »« ¿ß»«½∞º«óá¡¿ε
  937. íπΣÑα¡«ú« ¬ÑΦá. Åα¿ αáí«ΓÑ ß í½«τ¡δ¼ ¿¡ΓÑαΣÑ⌐ß«¼ ∩ñα« »«½∞ºπÑΓß∩ ΓѼ ªÑ  á½-
  938. ú«α¿Γ¼«¼,  τΓ« ¿ ñ½∩ Σá⌐½«ó «íδτ¡«ú« Γ¿»á, ¿ß¬½ετÑ¡¿Ñ ß«ßΓáó½∩Ñàë༫¼Ñ¡Γ,
  939. ¬«úñá »«ß½Ñ »αÑ«íαẫóá¡¿∩ áñαÑßá ß¼ÑΘÑ¡¿∩ ½«ú¿τÑ߬«ú« íá⌐Γá ó áñαÑß  ß¼ÑΘÑ-
  940. ¡¿∩  ½«ú¿τÑ߬«ú« í½«¬á (ß¼. á½ú«α¿Γ¼ bmap ó ú½áóÑ 4) «¡« Γαá¬ΓπÑΓ áñαÑß ß¼Ñ-
  941. ΘÑ¡¿∩ ½«ú¿τÑ߬«ú« í½«¬á ¬á¬ Σ¿º¿τÑ߬¿⌐ ¡«¼Ñα í½«¬á ó Σá⌐½«ó«⌐  ß¿ßΓѼÑ.  çá-
  942. ΓѼ,  ¿ß»«½∞ºπ∩ íπΣÑα¡δ⌐ ¬ÑΦ, ∩ñα« «íαáΘáÑΓß∩ ¬ ñá¡¡δ¼, ¿, ó ¬«¡Ñτ¡«¼ ¿Γ«úÑ,
  943. ¬ ßΓαáΓÑú¿τÑ߬«¼π ¿¡ΓÑαΣÑ⌐ßπ ñαá⌐óÑαá. Äñ¡á¬«, »α¿ «íαáΘÑ¡¿¿ ¬  ñ¿ß¬π  τÑαѺ
  944. ß¿¼ó«½∞¡δ⌐ ¿¡ΓÑαΣÑ⌐ß (íѺ ßΓαπ¬Γπα¿α«óá¡¿∩ ñá¡¡δσ), ∩ñα« ¡Ñ »αÑóαáΘáÑΓ áñαÑß
  945. ß¼ÑΘÑ¡¿∩  ó  áñαÑß  Σá⌐½á, á »ÑαÑñáÑΓ Ñú« ¡Ñ¼Ññ½Ñ¡¡« ñαá⌐óÑαπ, ¿ß»«½∞ºπ∩ ñ½∩
  946. »ÑαÑñáτ¿ αáí«τÑÑ »α«ßΓαá¡ßΓó« ºáñáτ¿. Åα«µÑñπαδ τΓÑ¡¿∩ ¿ ºá»¿ß¿, óσ«ñ∩Θ¿Ñ  ó
  947. ß«ßΓáó ñαá⌐óÑαá, »αÑ«íαáºπεΓ ß¼ÑΘÑ¡¿Ñ ó íá⌐Γáσ ó ß¼ÑΘÑ¡¿Ñ ó í½«¬áσ ¿ ¬«»¿απ-
  948. εΓ ñá¡¡δÑ ¡Ñ»«ßαÑñßΓóÑ¡¡« ó áñαÑß¡«Ñ »α«ßΓαá¡ßΓó« ºáñáτ¿, ¼¿¡π∩ íπΣÑαδ ∩ñαá.
  949.     Æá¬¿¼ «íαẫ¼, Ñß½¿ «ñ¿¡ »α«µÑßß ºá»¿ßδóáÑΓ ¡á πßΓα«⌐ßΓó« í½«τ¡«ú« Γ¿»á,
  950. á  óΓ«α«⌐  »α«µÑßß  ºáΓѼ ßτ¿ΓδóáÑΓ ß πßΓα«⌐ßΓóá ß¿¼ó«½∞¡«ú« Γ¿»á »« Γ«¼π ªÑ
  951. áñαÑßπ, óΓ«α«⌐ »α«µÑßß ¼«ªÑΓ ¡Ñ ßτ¿ΓáΓ∞ ¿¡Σ«α¼áµ¿ε, ºá»¿ßá¡¡πε  »Ñαóδ¼  »α«-
  952. µÑßß«¼,  Γᬠ ¬á¬  ¿¡Σ«α¼áµ¿∩  ¼«ªÑΓ ÑΘÑ ¡áσ«ñ¿Γ∞ß∩ ó íπΣÑα¡«¼ ¬ÑΦÑ, á ¡Ñ ¡á
  953. ñ¿ß¬Ñ. ÆÑ¼ ¡Ñ ¼Ñ¡ÑÑ, Ñß½¿ óΓ«α«⌐ »α«µÑßß «íαáΓ¿Γß∩ ¬ πßΓα«⌐ßΓóπ í½«τ¡«ú« Γ¿-
  954. »á, «¡ áóΓ«¼áΓ¿τÑ߬¿ »«»áñÑΓ ¡á ¡«óδÑ ñá¡¡δÑ, ¡áσ«ñ∩Θ¿Ñß∩ ó íπΣÑα¡«¼ ¬ÑΦÑ.
  955.     Åα¿ ¿ß»«½∞º«óá¡¿¿ ß¿¼ó«½∞¡«ú« ¿¡ΓÑαΣÑ⌐ßá ¼«ª¡« ßΓ«½¬¡πΓ∞ß∩  ß«  ßΓαá¡¡«⌐
  956. ß¿ΓπᵿÑ⌐.  àß½¿  »α«µÑßß  τ¿ΓáÑΓ ¿½¿ »¿ΦÑΓ ¡á πßΓα«⌐ßΓó« »«ß¿¼ó«½∞¡«ú« óó«-
  957. ñá-óδó«ñá »«αµ¿∩¼¿ ¼Ñ¡∞ΦÑú« αẼÑαá, τѼ, ¬ »α¿¼Ñαπ, í½«¬, αѺπ½∞ΓáΓδ  íπñπΓ
  958. ºáó¿ßÑΓ∞ «Γ ñαá⌐óÑαá. ìá»α¿¼Ñα, Ñß½¿ »α«¿ºó«ñ¿Γ∞ ºá»¿ß∞ ¡á ½Ñ¡Γπ »« 1 íá⌐Γπ,
  959. ¬áªñδ⌐ íá⌐Γ ¼«ªÑΓ »«»áßΓ∞ ó ½εí«⌐ ¿º ½Ñ¡Γ«τ¡δσ í½«¬«ó.
  960.     ÅαÑ¿¼πΘÑßΓó«  ¿ß»«½∞º«óá¡¿∩  ß¿¼ó«½∞¡«ú«  ¿¡ΓÑαΣÑ⌐ßá ß«ßΓ«¿Γ ó ß¬«α«ßΓ¿,
  961. Ñß½¿ ¡Ñ ó«º¡¿¬áÑΓ ¡Ñ«íσ«ñ¿¼«ßΓ∞ ó ¬ÑΦ¿α«óá¡¿¿ ñá¡¡δσ ñ½∩ ñá½∞¡Ñ⌐ΦÑ⌐  αáí«Γδ.
  962. Åα«µÑßßδ,  «íαáΘáεΘ¿Ñß∩ ¬ πßΓα«⌐ßΓóá¼ óó«ñá -óδó«ñá í½«¬á¼¿, »ÑαÑñáεΓ ¿¡Σ«α-
  963. ¼áµ¿ε í½«¬á¼¿, αẼÑα ¬áªñ«ú« ¿º ¬«Γ«αδσ «úαá¡¿τ¿óáÑΓß∩ αẼÑα«¼ ½«ú¿τÑ߬«ú«
  964. í½«¬á ó ñá¡¡«⌐ Σá⌐½«ó«⌐ ß¿ßΓѼÑ. ìá»α¿¼Ñα, Ñß½¿ αẼÑα ½«ú¿τÑ߬«ú«  í½«¬á  ó
  965. Σá⌐½«ó«⌐  ß¿ßΓѼѠ1 èíá⌐Γ, ºá «ñ¡π «»Ñαᵿε óó«ñá-óδó«ñá ¼«ªÑΓ íδΓ∞ »ÑαÑñá¡«
  966. ¡Ñ í«½∞ΦÑ 1 èíá⌐Γá ¿¡Σ«α¼áµ¿¿. Åα¿ φΓ«¼ »α«µÑßßδ, «íαáΘáεΘ¿Ñß∩ ¬ ñ¿ß¬π ß »«-
  967. ¼«Θ∞ε ß¿¼ó«½∞¡«ú« ¿¡ΓÑαΣÑ⌐ßá, ¼«úπΓ »ÑαÑñáóáΓ∞  ºá  «ñ¡π  ñ¿ß¬«óπε  «»Ñαᵿε
  968. ¼¡«ªÑßΓó«  ñ¿ß¬«óδσ í½«¬«ó, ó ºáó¿ß¿¼«ßΓ¿ «Γ ó«º¼«ª¡«ßΓÑ⌐ ñ¿ß¬«ó«ú« ¬«¡Γα«½-
  969. ½Ñαá. æ Σπ¡¬µ¿«¡á½∞¡«⌐ Γ«τ¬¿ ºαÑ¡¿∩, »α«µÑßß »«½πτáÑàëàªÑ  ßá¼δ⌐  αѺπ½∞-
  970. ΓáΓ, ¡« ß¿¼ó«½∞¡δ⌐ ¿¡ΓÑαΣÑ⌐ß ¼«ªÑΓ αáí«ΓáΓ∞ ú«αáºñ« íδßΓαÑÑ. àß½¿ ó«ß»«½∞º«-
  971. óáΓ∞ß∩  »α¿¼Ñα«¼, »α¿óÑñÑ¡¡δ¼ ¡á É¿ßπ¡¬Ñ 10.8, ¼«ª¡« πó¿ñÑΓ∞, τΓ« ¬«úñá »α«-
  972. µÑßß ßτ¿ΓδóáÑΓ 4096 íá⌐Γ, ¿ß»«½∞ºπ∩ í½«τ¡δ⌐ ¿¡ΓÑαΣÑ⌐ß ñ½∩ Σá⌐½«ó«⌐ ß¿ßΓѼδ ß
  973. αẼÑα«¼ í½«¬á 1 èíá⌐Γ, ∩ñα« »α«¿ºó«ñ¿Γ τÑΓδαÑ ó¡πΓαÑ¡¡¿Ñ ¿ΓÑαᵿ¿, ¡á  ¬áª-
  974. ñ«¼ ΦáúÑ «íαáΘá∩ß∞ ¬ ñ¿ß¬π, »αѪñÑ τѼ óδºóá¡¡á∩ ß¿ßΓѼ¡á∩ Σπ¡¬µ¿∩ ó«ºóαáΘá-
  975. ÑΓ π»αáó½Ñ¡¿Ñ, ¡« ¬«úñá »α«µÑßß ¿ß»«½∞ºπÑΓ ß¿¼ó«½∞¡δ⌐ ¿¡ΓÑαΣÑ⌐ß, ñαá⌐óÑα ¼«-
  976. ªÑΓ  ºá¬«¡τ¿Γ∞  τΓÑ¡¿Ñ  ºá «ñ¡π ñ¿ß¬«óπε «»Ñαᵿε. ü«½ÑÑ Γ«ú«, ¿ß»«½∞º«óá¡¿Ñ
  977. í½«τ¡«ú« ¿¡ΓÑαΣÑ⌐ßá óδºδóáÑΓ ñ«»«½¡¿Γѽ∞¡«Ñ ¬«»¿α«óá¡¿Ñ ñá¡¡δσ ¼Ñªñπ  áñαÑß-
  978. ¡δ¼  »α«ßΓαá¡ßΓó«¼  ºáñáτ¿ ¿ íπΣÑαἿ ∩ñαá, τΓ« «ΓßπΓßΓóπÑΓ ó ß¿¼ó«½∞¡«¼ ¿¡-
  979. ΓÑαΣÑ⌐ßÑ.
  980.  
  981.  
  982.     E10.3 ÆàÉîêìÇï£ì¢à äÉÇëéàÉ¢F
  983.  
  984.     ÆÑନ¡á½∞¡δÑ ñαá⌐óÑαδ óδ»«½¡∩εΓ Γπ ªÑ Σπ¡¬µ¿ε, τΓ« ¿ «ßΓá½∞¡δÑ ñαá⌐óÑαδ:
  985. π»αáó½Ñ¡¿Ñ »ÑαÑñáτÑ⌐ ñá¡¡δσ «Γ ¿ ¡á ΓÑନ¡á½δ. Äñ¡á¬«, ΓÑନ¡á½δ ¿¼ÑεΓ  «ñ¡π
  986. «ß«íÑ¡¡«ßΓ∞,  ßó∩ºá¡¡πε ß ΓѼ, τΓ« «¡¿ «íÑß»Ñτ¿óáεΓ ¿¡ΓÑαΣÑ⌐ß »«½∞º«óáΓѽ∩ ß
  987. ß¿ßΓѼ«⌐. ÄíÑß»Ñτ¿óá∩ ¿¡ΓÑαá¬Γ¿ó¡«Ñ ¿ß»«½∞º«óá¡¿Ñ ß¿ßΓѼδ UNIX, ΓÑନ¡á½∞¡δÑ
  988. ñαá⌐óÑαδ ¿¼ÑεΓ ßó«⌐ ó¡πΓαÑ¡¡¿⌐ ¿¡ΓÑαΣÑ⌐ß ß ¼«ñπ½∩¼¿, ¿¡ΓÑα»αÑΓ¿απεΘ¿¼¿  óó«ñ
  989. ¿  óδó«ñ ßΓ᫬. é ¬á¡«¡¿τÑ߬«¼ αѪ¿¼Ñ ¿¡ΓÑα»αÑΓáΓ«αδ ßΓ᫬ »αÑ«íαáºπεΓ ¡ÑßΓ-
  990. απ¬Γπα¿α«óá¡¡δÑ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ñá¡¡δσ, óóÑñÑ¡¡δÑ ß ¬½áó¿áΓπαδ, ó ¬á¡«¡¿-
  991. τÑ߬πε Σ«α¼π (Γ« ÑßΓ∞ ó Σ«α¼π, ß««ΓóÑΓßΓóπεΘπε Γ«¼π, τΓ« »«½∞º«óáΓѽ∞ ¿¼Ñ½ ó
  992.  
  993.                                     305
  994.  
  995. ó¿ñπ ¡á ßἫ¼ ñѽÑ) »αѪñÑ, τѼ »«ß½áΓ∞ φΓ¿  ñá¡¡δÑ  »α¿¡¿¼áεΘÑ¼π  »α«µÑßßπ;
  996. ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß ΓᬪѠ»αÑ«íαáºπÑΓ ¡ÑßΓαπ¬Γπα¿α«óá¡¡δÑ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿
  997. óδσ«ñ¡δσ  ñá¡¡δσ, ß«ºñá¡¡δσ »α«µÑßß«¼, ó Σ«α¼áΓ, ¡Ñ«íσ«ñ¿¼δ⌐ »«½∞º«óáΓѽε. é
  998. αѪ¿¼Ñ íѺ «íαáí«Γ¬¿ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß »ÑαÑñáÑΓ ñá¡¡δÑ ¼Ñªñπ »α«µÑßßἿ  ¿
  999. ΓÑନ¡á½«¼ íѺ ¬á¬¿σ-½¿í« »αÑ«íαẫóá¡¿⌐.
  1000.     Åα«úαá¼¼¿ßΓδ,  ¡á»α¿¼Ñα, αáí«ΓáεΓ ¡á ¬½áó¿áΓπαÑ ΓÑନ¡á½á ñ«ó«½∞¡« íδßΓ-
  1001. α«, ¡« ß «Φ¿í¬á¼¿. ìá φΓ«Γ ß½πτá⌐ ΓÑନ¡á½δ ¿¼ÑεΓ ¬½áó¿Φπ ßΓ¿αá¡¿∩ ("erase";
  1002. ¬½áó¿Φá ¼«ªÑΓ íδΓ∞ «í«º¡áτÑ¡á Γᬿ¼ «íαẫ¼), τΓ«íδ »«½∞º«óáΓѽ∞  ¿¼Ñ½  ó«º-
  1003. ¼«ª¡«ßΓ∞  ßΓ¿αáΓ∞ τáßΓ∞ óóÑñÑ¡¡«⌐ ßΓ᫬¿ ¿ óó«ñ¿Γ∞ ¬«ααÑ¬Γ¿óδ. ÆÑନ¡á½δ »Ñ-
  1004. αÑßδ½áεΓ ¼áΦ¿¡Ñ óßε óóÑñÑ¡¡πε »«ß½Ññ«óáΓѽ∞¡«ßΓ∞, ó¬½ετá∩ ¿ ß¿¼ó«½δ ßΓ¿αá¡¿∩
  1005. (*** *). é ¬á¡«¡¿τÑ߬«¼ αѪ¿¼Ñ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß íπΣÑਧπÑΓ  ¿¡Σ«α¼áµ¿ε  ó
  1006. ßΓ᫬¿ (¡áí«α ß¿¼ó«½«ó, ºá¬á¡τ¿óáεΘ¿⌐ß∩ ß¿¼ó«½«¼ ó«ºóαáΓá ¬áαÑΓ¬¿ (*****)) ¿
  1007. »α«µÑßßδ  ßΓ¿αáεΓ ß¿¼ó«½δ π ßÑí∩, »αѪñÑ τѼ »ÑαÑß½áΓ∞ ¿ß»αáó½Ñ¡¡πε »«ß½Ññ«-
  1008. óáΓѽ∞¡«ßΓ∞ ßτ¿ΓδóáεΘѼπ »α«µÑßßπ.
  1009.     é Σπ¡¬µ¿¿ ßΓ᫬«ó«ú« ¿¡ΓÑαΣÑ⌐ßá óσ«ñ∩Γ:
  1010.   * »«ßΓα«τ¡δ⌐ αáºí«α óóÑñÑ¡¡δσ »«ß½Ññ«óáΓѽ∞¡«ßΓÑ⌐;
  1011.   * «íαáí«Γ¬á ß¿¼ó«½«ó ßΓ¿αá¡¿∩;
  1012.   * «íαáí«Γ¬á ß¿¼ó«½«ó "πñá½Ñ¡¿∩", «Γ¼Ñ¡∩εΘ¿σ óßÑ «ßΓá½∞¡δÑ ß¿¼ó«½δ, óóÑñÑ¡-
  1013.     ¡δÑ ñ« Γ«ú« ó ΓѬπΘÑ⌐ ßΓ᫬Ñ;
  1014.   * «Γ«íαáªÑ¡¿Ñ ß¿¼ó«½«ó, »«½πτÑ¡¡δσ ΓÑନ¡á½«¼;
  1015.   * αáßΦ¿αÑ¡¿Ñ óδσ«ñ¡δσ ñá¡¡δσ, ¡á»α¿¼Ñα, »αÑ«íαẫóá¡¿Ñ ß¿¼ó«½«ó  Γáíπ½∩µ¿¿
  1016.     ó »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ »α«íѽ«ó;
  1017.   * ß¿ú¡á½¿º¿α«óá¡¿Ñ »α«µÑßßá¼ « ºáó¿ßá¡¿¿ ΓÑନ¡á½«ó ¿ »αÑαδóá¡¿¿ ßΓ᫬ ¿½¿
  1018.     ó «ΓóÑΓ ¡á ¡áªáΓ¿Ñ »«½∞º«óáΓѽѼ ¬½áó¿Φ¿ πñá½Ñ¡¿∩;
  1019.   *  »αÑñ«ßΓáó½Ñ¡¿Ñ  ó«º¼«ª¡«ßΓ¿  ¡Ñ «íαáíáΓδóáΓ∞ ß»Ñµ¿á½∞¡δÑ ß¿¼ó«½δ, ΓᬿÑ
  1020.     ¬á¬ ß¿¼ó«½δ ßΓ¿αá¡¿∩, πñá½Ñ¡¿∩ ¿ ó«ºóαáΓá ¬áαÑΓ¬¿.
  1021.  
  1022.     öπ¡¬µ¿«¡¿α«óá¡¿Ñ íѺ «íαáí«Γ¬¿ »«ñαáºπ¼ÑóáÑΓ ¿ß»«½∞º«óá¡¿Ñ  áß¿¡σα«¡¡«ú«
  1023. ΓÑନ¡á½á,  »«ß¬«½∞¬π  »α«µÑßßδ  ¼«úπΓ ßτ¿ΓδóáΓ∞ ß¿¼ó«½δ ó Γ«¼ ó¿ñÑ, ó ¬á¬«¼
  1024. «¡¿ í뫨 óóÑñÑ¡δ, ó¼ÑßΓ« Γ«ú«, τΓ«íδ ªñáΓ∞, ¬«úñá »«½∞º«óáΓѽ∞ ¡áª¼ÑΓ ¬½áó¿-
  1025. Φπ óó«ñá ¿½¿ ó«ºóαáΓá ¬áαÑΓ¬¿.
  1026.     É¿τ¿ «Γ¼ÑΓ¿½, τΓ« »ÑαóδÑ ßΓ᫬«óδÑ ¿¡ΓÑαΣÑ⌐ßδ, ¿ß»«½∞ºπѼδÑ ÑΘÑ »α¿ αáº-
  1027. αáí«Γ¬Ñ ß¿ßΓѼδ ó ¡áτá½Ñ 70-σ ú«ñ«ó, αáí«Γ὿ ó ß«ßΓáóÑ »α«úαá¼¼  ¬«¼á¡ñ¡«ú«
  1028. »α«µÑßß«αá  ¿  αÑñá¬Γ«αá, ¡« ¡Ñ ó ∩ñαÑ (ß¼. [Ritchie 84], ßΓα.1580). Äñ¡á¬«,
  1029. »«ß¬«½∞¬π ó ¿σ Σπ¡¬µ¿∩σ ¡πªñáÑΓß∩ ¼¡«ªÑßΓó« »α«úαá¼¼, ¿σ ¼ÑßΓ« ó ß«ßΓáóÑ ∩ñ-
  1030. αá. ìÑß¼«Γα∩ ¡á Γ«, τΓ« ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß óδ»«½¡∩ÑΓ ΓᬿѠΣπ¡¬µ¿¿, ¿º  ¬«-
  1031. Γ«αδσ  ½«ú¿τÑ߬¿ óδΓѬáÑΓ Ñú« ¼ÑßΓ« ¼Ñªñπ ΓÑନ¡á½∞¡δ¼ ñαá⌐óÑα«¼ ¿ «ßΓá½∞¡«⌐
  1032. τáßΓ∞ε ∩ñαá, ∩ñα« ¡Ñ ºá»π߬áÑΓ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß ¿¡áτÑ, τѼ  τÑαѺ  ΓÑନ-
  1033. ¡á½∞¡δ⌐  ñαá⌐óÑα.  ìá  É¿ßπ¡¬Ñ  10.9 »«¬áºá¡δ »«Γ«¬ ñá¡¡δσ, »α«σ«ñ∩Θ¿⌐ τÑαѺ
  1034. ΓÑନ¡á½∞¡δ⌐ ñαá⌐óÑα ¿ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß, ¿ ß««ΓóÑΓßΓóπεΘ¿Ñ Ñ¼π  π»αáó½∩ε-
  1035. Θ¿Ñ  ó«ºñÑ⌐ßΓó¿∩,  »α«σ«ñ∩Θ¿Ñ τÑαѺ ΓÑନ¡á½∞¡δ⌐ ñαá⌐óÑα. Å«½∞º«óáΓѽ¿ ¼«úπΓ
  1036. π¬áºáΓ∞, ¬á¬«⌐ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß ¿ß»«½∞ºπÑΓß∩ »«ßαÑñßΓó«¼ ó맮óá ß¿ßΓѼ¡«⌐
  1037. Σπ¡¬µ¿¿ ioctl, ¡« αÑ὿º«óáΓ∞ ßσѼπ, »« ¬«Γ«α«⌐ «ñ¡« πßΓα«⌐ßΓó« ¿ß»«½∞º«óὫ
  1038. íδ ¡Ñ߬«½∞¬« ßΓ᫬«óδσ ¿¡ΓÑαΣÑ⌐ß«ó «ñ¡«óαѼѡ¡«, »α¿ τѼ ¬áªñδ⌐ ¿¡ΓÑαΣÑ⌐ß¡δ⌐
  1039. ¼«ñπ½∞, ó ßó«ε «τÑαÑñ∞, πß»ÑΦ¡« óδºδóá½ íδ ß½ÑñπεΘ¿⌐  ¼«ñπ½∞  ñ½∩  «íαáí«Γ¬¿
  1040. ñá¡¡δσ, ñ«ó«½∞¡« Γαπñ¡«.
  1041.  
  1042.     E10.3.1 æ¿¼ó«½∞¡δÑ ß»¿ß¬¿F
  1043.  
  1044.     æΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß «íαáíáΓδóáÑΓ ñá¡¡δÑ ó ß¿¼ó«½∞¡δσ ß»¿ß¬áσ. æ¿¼ó«½∞¡δ⌐
  1045. ß»¿ß«¬  (clist) »αÑñßΓáó½∩ÑΓ ß«í«⌐ »ÑαѼѡ¡«⌐ ñ½¿¡δ ß»¿ß«¬ ß¿¼ó«½∞¡δσ í½«¬«ó
  1046. ß ¿ß»«½∞º«ó᡿Ѽ π¬áºáΓѽÑ⌐ ¿ ß »«ñßτÑΓ«¼ ¬«½¿τÑßΓóá ß¿¼ó«½«ó ó ß»¿ß¬Ñ. æ¿¼-
  1047.  
  1048. ───────────────────────────────────────
  1049. (****) é φΓ«¼ αáºñѽѠαáßß¼áΓα¿óáÑΓß∩ ¿ß»«½∞º«óá¡¿Ñ ΓÑନ¡á½«ó óó«ñá-óδó«ñá,
  1050.        ¬«Γ«αδÑ »ÑαÑñáεΓ óßÑ ß¿¼ó«½δ, óóÑñÑ¡¡δÑ »«½∞º«óáΓѽѼ, íѺ «íαáí«Γ¬¿.
  1051. (*****) é ñá¡¡«⌐ ú½áóÑ ¿ß»«½∞ºπÑΓß∩ «íΘ¿⌐ ΓÑନ¡ "ó«ºóαáΓ ¬áαÑΓ¬¿" ñ½∩ «í«º-
  1052.         ¡áτÑ¡¿∩ ß¿¼ó«½«ó ó«ºóαáΓá ¬áαÑΓ¬¿ ¿ »ÑαÑó«ñá ßΓ᫬¿.
  1053.  
  1054.  
  1055.                                     306
  1056.  
  1057.             Å«Γ«¬ ñá¡¡δσ                  Å«Γ«¬ π»αáó½∩εΘ¿σ
  1058.                                              ó«ºñÑ⌐ßΓó¿⌐
  1059.       ┌───────────────────────┐       ┌───────────────────────┐
  1060.       │ Åα«µÑßß τΓÑ¡¿∩/ºá»¿ß¿ │       │ Åα«µÑßß τΓÑ¡¿∩/ºá»¿ß¿ │
  1061.       └───────────────────────┘       └───────────────────────┘
  1062.  
  1063.          ∙  │          ^   ∙                 │         ^
  1064.        ∙    v          │     ∙               v         │
  1065.      ∙ ┌─────────────────────┐ ∙      ┌───────────────────────┐
  1066.  óδó«ñ │ æΓ᫬«óδ⌐  ¿¡ΓÑαΣÑ⌐ß│ óó«ñ   │ ÆÑନ¡á½∞¡δ⌐ ñαá⌐óÑα  │
  1067.      ∙ └─────────────────────┘ ∙      └───────────────────────┘
  1068.        ∙    │          ^     ∙               │         ^
  1069.          ∙  v          │   ∙                 v         │
  1070.       ┌───────────────────────┐        ┌─────────────────────┐
  1071.       │ ÆÑନ¡á½∞¡δ⌐ ñαá⌐óÑα  │        │ æΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß │
  1072.       └───────────────────────┘        └─────────────────────┘
  1073.                                              │         ^
  1074.                                              v         │
  1075.                                       ┌───────────────────────┐
  1076.                                       │ äαá⌐óÑα óó«ñá-óδó«ñá  │
  1077.                                       └───────────────────────┘
  1078.                                              │         ^
  1079.                                              v         │
  1080.                                      ┌─────────────────────────┐
  1081.                                      │ ôßΓα«⌐ßΓó« óó«ñá-óδó«ñá │
  1082.                                      └─────────────────────────┘
  1083.  
  1084.     É¿ßπ¡«¬ 10.9. Å«ß½Ññ«óáΓѽ∞¡«ßΓ∞ «íαáΘÑ¡¿⌐ ¿ »«Γ«¬ ñá¡¡δσ τÑ-
  1085.                   αѺ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß
  1086.  
  1087. ô¬áºáΓѽ∞   æ¼ÑΘÑ¡¿Ñ  æ¼ÑΘÑ¡¿Ñ
  1088.    ¡á          ñ«        ñ«
  1089. ß½ÑñπεΘ¿⌐    ¡áτá½á    ¬«¡µá           îáßß¿ó ß¿¼ó«½«ó
  1090.   í½«¬                          0 1 2 3 4 5 6 7 8 9        14
  1091. ──────────┬─────────┬─────────┬┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬───
  1092.           │    7    │    14   ││g│a│r│b│a│g│e│││ │e│q│n│ │││ │...
  1093. ────┼─────┴─────────┴─────────┴┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴───
  1094.     │
  1095.     v
  1096.  
  1097.                 É¿ßπ¡«¬ 10.10. æ¿¼ó«½∞¡δ⌐ í½«¬
  1098.  
  1099.  
  1100. ó«½∞¡δ⌐ í½«¬ (cblock) ß«ñÑαª¿Γ π¬áºáΓѽ∞ ¡á ß½ÑñπεΘ¿⌐ í½«¬ ó ß»¿ß¬Ñ, ¡Ñí«½∞-
  1101. Φ«⌐ ¼áßß¿ó σαá¡¿¼«⌐ ó ß¿¼ó«½∞¡«¼ ó¿ñÑ ¿¡Σ«α¼áµ¿¿ ¿ áñαÑßá ß¼ÑΘÑ¡¿⌐,  »«¬áºδ-
  1102. óáεΘ¿Ñ  ¼ÑßΓ«  αáß»«½«ªÑ¡¿∩  ó¡πΓα¿  í½«¬á  ¬«ααÑ¬Γ¡«⌐  ¿¡Σ«α¼áµ¿¿  (É¿ßπ¡«¬
  1103. 10.10). æ¼ÑΘÑ¡¿Ñ ñ« ¡áτá½á »«¬áºδóáÑΓ »Ñαóπε »«º¿µ¿ε αáß»«½«ªÑ¡¿∩ ¬«ααÑ¬Γ¡«⌐
  1104. ¿¡Σ«α¼áµ¿¿ ó ¼áßß¿óÑ, ß¼ÑΘÑ¡¿Ñ ñ« ¬«¡µá »«¬áºδóáÑΓ »Ñαóπε »«º¿µ¿ε αáß»«½«ªÑ-
  1105. ¡¿∩ ¡Ñ¬«ααÑ¬Γ¡«⌐ ¿¡Σ«α¼áµ¿¿.
  1106.     ƒñα« «íÑß»Ñτ¿óáÑΓ óÑñÑ¡¿Ñ ß»¿ß¬á ßó«í«ñ¡δσ ß¿¼ó«½∞¡δσ í½«¬«ó ¿ óδ»«½¡∩ÑΓ
  1107. ¡áñ ß¿¼ó«½∞¡δ¼¿ ß»¿ß¬á¼¿ ¿ ß¿¼ó«½∞¡δ¼¿ í½«¬á¼¿ ΦÑßΓ∞ «»Ñαᵿ⌐.
  1108.  1. ƒñα« ¡áº¡áτáÑΓ ñαá⌐óÑαπ ß¿¼ó«½∞¡δ⌐ í½«¬ ¿º ß»¿ß¬á  ßó«í«ñ¡δσ  ß¿¼ó«½∞¡δσ
  1109.     í½«¬«ó.
  1110.  2.  Ä¡« ΓᬪѠó«ºóαáΘáÑΓ ß¿¼ó«½∞¡δ⌐ í½«¬ ó ß»¿ß«¬ ßó«í«ñ¡δσ ß¿¼ó«½∞¡δσ í½«-
  1111.     ¬«ó.
  1112.  3. ƒñα« ¼«ªÑΓ óδí¿αáΓ∞ »Ñαóδ⌐ ß¿¼ó«½ ¿º  ß¿¼ó«½∞¡«ú«  ß»¿ß¬á:  «¡«  πñá½∩ÑΓ
  1113.     »Ñαóδ⌐ ß¿¼ó«½ ¿º »Ñαó«ú« ß¿¼ó«½∞¡«ú« í½«¬á ó ß»¿ß¬Ñ ¿ πßΓá¡áó½¿óáÑΓ º¡á-
  1114.     τÑ¡¿∩  ßτÑΓτ¿¬á  ß¿¼ó«½«ó  ó  ß»¿ß¬Ñ ¿ π¬áºáΓѽÑ⌐ ó í½«¬Ñ Γᬿ¼ «íαẫ¼,
  1115.     τΓ«íδ »«ß½ÑñπεΘ¿Ñ «»Ñαᵿ¿ ¡Ñ óδí¿α὿ «ñ¿¡ ¿ Γ«Γ ªÑ ß¿¼ó«½. àß½¿ ó  αÑ-
  1116.  
  1117.                                     307
  1118.  
  1119.     ºπ½∞ΓáΓÑ  «»Ñαᵿ¿ óδíαá¡ »«ß½Ññ¡¿⌐ ß¿¼ó«½ í½«¬á, ∩ñα« »«¼ÑΘáÑΓ ó ß»¿ß«¬
  1120.     ßó«í«ñ¡δσ ß¿¼ó«½∞¡δσ í½«¬«ó »πßΓ«⌐ í½«¬ ¿ »ÑαÑπßΓá¡áó½¿óáÑΓ π¬áºáΓѽ¿  ó
  1121.     ß¿¼ó«½∞¡«¼  ß»¿ß¬Ñ.  àß½¿  ó ß¿¼ó«½∞¡«¼ ß»¿ß¬Ñ «ΓßπΓßΓóπεΓ ß¿¼ó«½δ, ∩ñα«
  1122.     ó«ºóαáΘáÑΓ »πßΓ«⌐ ß¿¼ó«½.
  1123.  4. ƒñα« ¼«ªÑΓ »«¼ÑßΓ¿Γ∞ ß¿¼ó«½ ó ¬«¡Ñµ ß¿¼ó«½∞¡«ú« ß»¿ß¬á »πΓѼ »«¿ß¬á »«ß-
  1124.     ½Ññ¡Ñú« ß¿¼ó«½∞¡«ú« í½«¬á ó ß»¿ß¬Ñ, ó¬½ετÑ¡¿∩ ß¿¼ó«½á ó ¡Ñú« ¿ »ÑαÑπßΓá-
  1125.     ¡«ó¬¿ áñαÑß«ó ß¼ÑΘÑ¡¿⌐. àß½¿ ß¿¼ó«½∞¡δ⌐ í½«¬ ºá»«½¡Ñ¡, ∩ñα« óδñѽ∩ÑΓ ¡«-
  1126.     óδ⌐ ß¿¼ó«½∞¡δ⌐ í½«¬, ó¬½ετáÑΓ Ñú« ó ¬«¡Ñµ ß¿¼ó«½∞¡«ú« ß»¿ß¬á ¿  »«¼ÑΘáÑΓ
  1127.     ß¿¼ó«½ ó ¡«óδ⌐ í½«¬.
  1128.  5.  ƒñα«  ¼«ªÑΓ πñá½∩Γ∞ «Γ ¡áτá½á ß»¿ß¬á úαπ»»π ß¿¼ó«½«ó »« «ñ¡«¼π í½«¬π ºá
  1129.     «ñ¡π «»Ñαᵿε, τΓ« φ¬ó¿óá½Ñ¡Γ¡« πñá½Ñ¡¿ε óßÑσ ß¿¼ó«½«ó ó í½«¬Ñ  ºá  «ñ¿¡
  1130.     αáº.
  1131.  6.  ƒñα«  ¼«ªÑΓ »«¼ÑßΓ¿Γ∞ í½«¬ ß ß¿¼ó«½á¼¿ ó ¬«¡Ñµ ß¿¼ó«½∞¡«ú« ß»¿ß¬á.
  1132.  
  1133.     æ¿¼ó«½∞¡δÑ ß»¿ß¬¿ »«ºó«½∩εΓ ß«ºñáΓ∞ ¡Ñß½«ª¡δ⌐ ¼Ñσá¡¿º¼ íπΣÑα¿ºáµ¿¿,  »«-
  1134. ½Ñº¡δ⌐ »α¿ ¡Ñí«½∞Φ«¼ «íΩѼѠ»ÑαÑñáóáѼδσ ñá¡¡δσ, Γ¿»¿τ¡«¼ ñ½∩ ¼Ññ½Ñ¡¡δσ πßΓ-
  1135. α«⌐ßΓó, Γᬿσ ¬á¬ ΓÑନ¡á½δ. Ä¡¿ ñáεΓ ó«º¼«ª¡«ßΓ∞ ¼á¡¿»π½¿α«óáΓ∞ ß ñá¡¡δ¼¿ ß
  1136. ¬áªñδ¼ ß¿¼ó«½«¼ ó «Γñѽ∞¡«ßΓ¿ ¿ ß úαπ»»«⌐ ß¿¼ó«½∞¡δσ í½«¬«ó. ìá»α¿¼Ñα, É¿ßπ-
  1137. ¡«¬ 10.11 ¿½½εßΓα¿απÑΓ πñá½Ñ¡¿Ñ ß¿¼ó«½«ó ¿º ß¿¼ó«½∞¡«ú« ß»¿ß¬á; ∩ñα« πñá½∩ÑΓ
  1138. »«  «ñ¡«¼π  ß¿¼ó«½π ¿º »Ñαó«ú« í½«¬á ó ß»¿ß¬Ñ (É¿ßπ¡«¬ 10.11á-ó) ñ« ΓÑσ »«α,
  1139. »«¬á ó í½«¬Ñ ¡Ñ «ßΓá¡ÑΓß∩ ¡¿ «ñ¡«ú« ß¿¼ó«½á (É¿ßπ¡«¬
  1140.  
  1141.     ß¿¼ó«½∞¡δ⌐                               ß¿¼ó«½∞¡δÑ
  1142.       ß»¿ß«¬                                   í½«¬¿
  1143.  
  1144.                        ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1145.                 ┌─────>│  0 8  │ │ p │ i │ c │   │ f │ i │ l │ e │
  1146.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1147.                 │       v
  1148.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1149. ┌──────────┬─┐  │      │  0 8  │ │ * │   │ │ │   │ t │ b │ l │   │
  1150. │    27    │ ┼──┘      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1151. │ ß¿¼ó«½«ó │ ┼──┐       v
  1152. └──────────┴─┘  │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1153.                 │      │  0 8  │ │ │ │   │ t │ r │ o │ f │ f │   │
  1154.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1155.                 │       v
  1156.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1157.                 └─────>│  0 3  │ │ - │ m │ m │   │   │   │   │   │
  1158.                        └───────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1159.                    (á)
  1160.  
  1161.                        ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1162.                 ┌─────>│  1 8  │ │   │ i │ c │   │ f │ i │ l │ e │
  1163.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1164.                 │       v
  1165.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1166. ┌──────────┬─┐  │      │  0 8  │ │ * │   │ │ │   │ t │ b │ l │   │
  1167. │    26    │ ┼──┘      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1168. │ ß¿¼ó«½«ó │ ┼──┐       v
  1169. └──────────┴─┘  │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1170.                 │      │  0 8  │ │ │ │   │ t │ r │ o │ f │ f │   │
  1171.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1172.                 │       v
  1173.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1174.                 └─────>│  0 3  │ │ - │ m │ m │   │   │   │   │   │
  1175.                        └───────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1176.                    (í)
  1177.  
  1178.  
  1179.                                     308
  1180.  
  1181.                        ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1182.                 ┌─────>│  2 8  │ │   │   │ c │   │ f │ i │ l │ e │
  1183.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1184.                 │       v
  1185.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1186. ┌──────────┬─┐  │      │  0 8  │ │ * │   │ │ │   │ t │ b │ l │   │
  1187. │    25    │ ┼──┘      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1188. │ ß¿¼ó«½«ó │ ┼──┐       v
  1189. └──────────┴─┘  │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1190.                 │      │  0 8  │ │ │ │   │ t │ r │ o │ f │ f │   │
  1191.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1192.                 │       v
  1193.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1194.                 └─────>│  0 3  │ │ - │ m │ m │   │   │   │   │   │
  1195.                        └───────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1196.                    (ó)
  1197.  
  1198.                        ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1199.                 ┌─────>│  0 8  │ │ * │   │ │ │   │ t │ b │ l │   │
  1200.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1201. ┌──────────┬─┐  │       v
  1202. │    19    │ ┼──┘      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1203. │ ß¿¼ó«½«ó │ ┼──┐      │  0 8  │ │ │ │   │ t │ r │ o │ f │ f │   │
  1204. └──────────┴─┘  │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1205.                 │       v
  1206.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1207.                 └─────>│  0 3  │ │ - │ m │ m │   │   │   │   │   │
  1208.                        └───────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1209.                    (ú)
  1210.  
  1211.        É¿ßπ¡«¬ 10.11. ôñá½Ñ¡¿Ñ ß¿¼ó«½«ó ¿º ß¿¼ó«½∞¡«ú« ß»¿ß¬á
  1212.  
  1213.  
  1214.     ß¿¼ó«½∞¡δ⌐                               ß¿¼ó«½∞¡δÑ
  1215.       ß»¿ß«¬                                   í½«¬¿
  1216.  
  1217.                        ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1218.                 ┌─────>│  0 8  │ │ p │ i │ c │   │ f │ i │ l │ e │
  1219.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1220. ┌──────────┬─┐  │       v
  1221. │    22    │ ┼──┘      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1222. │ ß¿¼ó«½á  │ ┼──┐      │  0 8  │ │ * │   │ │ │   │ t │ b │ l │   │
  1223. └──────────┴─┘  │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1224.                 │       v
  1225.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1226.                 └─────>│  0 6  │ │ │ │   │ t │ r │ o │ f │   │   │
  1227.                        └───────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1228.                    (á)
  1229.                        ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1230.                 ┌─────>│  0 8  │ │ p │ i │ c │   │ f │ i │ l │ e │
  1231.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1232. ┌──────────┬─┐  │       v
  1233. │    23    │ ┼──┘      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1234. │ ß¿¼ó«½á  │ ┼──┐      │  0 8  │ │ * │   │ │ │   │ t │ b │ l │   │
  1235. └──────────┴─┘  │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1236.                 │       v
  1237.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1238.                 └─────>│  0 7  │ │ │ │   │ t │ r │ o │ f │ f │   │
  1239.                        └───────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1240.  
  1241.                                     309
  1242.  
  1243.                    (í)
  1244.                        ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1245.                 ┌─────>│  0 8  │ │ p │ i │ c │   │ f │ i │ l │ e │
  1246.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1247. ┌──────────┬─┐  │       v
  1248. │    24    │ ┼──┘      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1249. │ ß¿¼ó«½á  │ ┼──┐      │  0 8  │ │ * │   │ │ │   │ t │ b │ l │   │
  1250. └──────────┴─┘  │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1251.                 │       v
  1252.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1253.                 └─────>│  0 8  │ │ │ │   │ t │ r │ o │ f │ f │   │
  1254.                        └───────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1255.                    (ó)
  1256.                        ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1257.                 ┌─────>│  0 8  │ │ p │ i │ c │   │ f │ i │ l │ e │
  1258.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1259.                 │       v
  1260.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1261. ┌──────────┬─┐  │      │  0 8  │ │ * │   │ │ │   │ t │ b │ l │   │
  1262. │    25    │ ┼──┘      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1263. │ ß¿¼ó«½«ó │ ┼──┐       v
  1264. └──────────┴─┘  │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1265.                 │      │  0 8  │ │ │ │   │ t │ r │ o │ f │ f │   │
  1266.                 │      └┬──────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1267.                 │       v
  1268.                 │      ┌───────┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐
  1269.                 └─────>│  0 1  │ │ - │   │   │   │   │   │   │   │
  1270.                        └───────┘ └───┴───┴───┴───┴───┴───┴───┴───┘
  1271.                    (ú)
  1272.  
  1273.        É¿ßπ¡«¬ 10.12. é¬½ετÑ¡¿Ñ ß¿¼ó«½«ó ó ß¿¼ó«½∞¡δ⌐ ß»¿ß«¬
  1274.  
  1275. 10.11ú); ºáΓѼ «¡« πßΓá¡áó½¿óáÑΓ π¬áºáΓѽ∞ ß»¿ß¬á ¡á ß½ÑñπεΘ¿⌐ í½«¬, ¬«Γ«αδ⌐
  1276. ßΓá¡«ó¿Γß∩ »Ñαóδ¼ í½«¬«¼ ó ß»¿ß¬Ñ. Å«ñ«í¡« φΓ«¼π ¡á É¿ßπ¡¬Ñ 10.12  »«¬áºá¡«,
  1277. ¬á¬  ∩ñα« ó¬½ετáÑΓ ß¿¼ó«½δ ó ß¿¼ó«½∞¡δ⌐ ß»¿ß«¬; »α¿ φΓ«¼ »αÑñ»«½áúáÑΓß∩, τΓ«
  1278. ó «ñ¡«¼ í½«¬Ñ »«¼ÑΘáÑΓß∩ ñ« 8 ß¿¼ó«½«ó ¿ τΓ« ∩ñα«  αẼÑΘáÑΓ  ¡«óδ⌐  í½«¬  ó
  1279. ¬«¡µÑ ß»¿ß¬á (É¿ßπ¡«¬ 10.12ú).
  1280.  
  1281.  
  1282.     E10.3.2 ÆÑନ¡á½∞¡δ⌐ ñαá⌐óÑα ó ¬á¡«¡¿τÑ߬«¼ αѪ¿¼ÑF
  1283.  
  1284.     æΓαπ¬Γπαδ  ñá¡¡δσ,  ß ¬«Γ«α묨 αáí«ΓáεΓ ΓÑନ¡á½∞¡δÑ ñαá⌐óÑαδ, ßó∩ºá¡δ ß
  1285. ΓαѼ∩ ß¿¼ó«½∞¡δ¼¿ ß»¿ß¬á¼¿: ß»¿ß¬«¼ ñ½∩ σαá¡Ñ¡¿∩ ñá¡¡δσ, óδó«ñ¿¼δσ ¡á ΓÑନ-
  1286. ¡á½, ß»¿ß¬«¼ ñ½∩ σαá¡Ñ¡¿∩ ¡ÑßΓαπ¬Γπα¿α«óá¡¡δσ óó«ñ¡δσ ñá¡¡δσ, »«ßΓπ»¿óΦ¿σ  ó
  1287. αѺπ½∞ΓáΓÑ óδ»«½¡Ñ¡¿∩ »α«úαá¼¼δ «íαáí«Γ¬¿ »αÑαδóá¡¿∩ «Γ ΓÑନ¡á½á, óδºóá¡¡«-
  1288. ú«  »«»δΓ¬«⌐ »«½∞º«óáΓѽ∩ óóÑßΓ¿ ñá¡¡δÑ ß ¬½áó¿áΓπαδ, ¿ ß»¿ß¬«¼ ñ½∩ σαá¡Ñ¡¿∩
  1289. «íαáí«Γá¡¡δσ óσ«ñ¡δσ ñá¡¡δσ, »«ßΓπ»¿óΦ¿σ ó αѺπ½∞ΓáΓÑ »αÑ«íαẫóá¡¿∩ ßΓ᫬«-
  1290. óδ¼ ¿¡ΓÑαΣÑ⌐ß«¼ ß»Ñµ¿á½∞¡δσ ß¿¼ó«½«ó (Γᬿσ ¬á¬ ß¿¼ó«½δ ßΓ¿αá¡¿∩ ¿ πñá½Ñ¡¿∩)
  1291. ó ¡ÑßΓαπ¬Γπα¿α«óá¡¡«¼ ß»¿ß¬Ñ.
  1292.     è«úñá »α«µÑßß óÑñÑΓ ºá»¿ß∞ ¡á  ΓÑନ¡á½  (É¿ßπ¡«¬  10.13),  ΓÑନ¡á½∞¡δ⌐
  1293. ñαá⌐óÑα ºá»π߬áÑΓ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß. æΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ߠ󠵿¬½Ñ ßτ¿ΓδóáÑΓ
  1294. ß¿¼ó«½δ ¿º áñαÑß¡«ú« »α«ßΓαá¡ßΓóá »α«µÑßßá ¿ »«¼ÑΘáÑΓ ¿σ ó ß¿¼ó«½∞¡δ⌐ ß»¿ß«¬
  1295. ñ½∩  σαá¡Ñ¡¿∩  óδó«ñ¡δσ ñá¡¡δσ ñ« ΓÑσ »«α, »«¬á »«Γ«¬ ñá¡¡δσ ¡Ñ íπñÑΓ ¿ßτÑα-
  1296. »á¡. æΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß «íαáíáΓδóáÑΓ óδó«ñ¿¼δÑ ß¿¼ó«½δ,  ¡á»α¿¼Ñα,  ºá¼Ñ¡∩∩
  1297. ß¿¼ó«½δ Γáíπ½∩µ¿¿ ¡á »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ »α«íѽ«ó. àß½¿ ¬«½¿τÑßΓó« ß¿¼ó«½«ó ó
  1298. ß»¿ß¬Ñ  ñ½∩ σαá¡Ñ¡¿∩ óδó«ñ¡δσ ñá¡¡δσ »αÑóδß¿Γ óÑασ¡εε «Γ¼ÑΓ¬π, ßΓ᫬«óδ⌐ ¿¡-
  1299. ΓÑαΣÑ⌐ß óδºδóáÑΓ »α«µÑñπαδ  ñαá⌐óÑαá,  »ÑαÑßδ½áεΘ¿Ñ  ñá¡¡δÑ  ¿º  ß¿¼ó«½∞¡«ú«
  1300. ß»¿ß¬á ¡á ΓÑନ¡á½ ¿ »«ß½Ñ φΓ«ú« »α¿«ßΓá¡áó½¿óáεΘ¿Ñ óδ»«½¡Ñ¡¿Ñ »α«µÑßßá, óÑ-
  1301.  
  1302.  
  1303.                                     310
  1304.  
  1305.     ┌────────────────────────────────────────────────────────────┐
  1306.     │ á½ú«α¿Γ¼ terminal_write                                    │
  1307.     │ {                                                          │
  1308.     │     óδ»«½¡¿Γ∞ (»«¬á ¿º »α«ßΓαá¡ßΓóá ºáñáτ¿ ÑΘÑ »«ßΓπ»áεΓ   │
  1309.     │      ñá¡¡δÑ)                                               │
  1310.     │     {                                                      │
  1311.     │         Ñß½¿ (¡á ΓÑନ¡á½ »«ßΓπ»áÑΓ ¿¡Σ«α¼áµ¿∩)            │
  1312.     │         {                                                  │
  1313.     │             »α¿ßΓπ»¿Γ∞ ¬ óδ»«½¡Ñ¡¿ε «»Ñαᵿ¿ ºá»¿ß¿ ñá¡¡δσ │
  1314.     │              ¿º ß»¿ß¬á, σαá¡∩ΘÑú« óδó«ñ¡δÑ ñá¡¡δÑ;         │
  1315.     │             »α¿«ßΓá¡«ó¿Γ∞ß∩ (ñ« Γ«ú« ¼«¼Ñ¡Γá, ¬«úñá ΓÑନ- │
  1316.     │              ¡á½ íπñÑΓ ú«Γ«ó »α¿¡∩Γ∞ ß½ÑñπεΘπε »«αµ¿ε ñá¡- │
  1317.     │              ¡δσ);                                         │
  1318.     │             »α«ñ«½ª¿Γ∞;   /* ó«ºóαáΓ ¬ ¡áτá½π µ¿¬½á */     │
  1319.     │         }                                                  │
  1320.     │         ß¬«»¿α«óáΓ∞ ñá¡¡δÑ ó «íΩѼѠ߿¼ó«½∞¡«ú« í½«¬á ¿º   │
  1321.     │          »α«ßΓαá¡ßΓóá ºáñáτ¿ ó ß»¿ß«¬, σαá¡∩Θ¿⌐ óδó«ñ¡δÑ   │
  1322.     │          ñá¡¡δÑ: ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß »αÑ«íαáºπÑΓ ß¿¼ó«½δ   │
  1323.     │          Γáíπ½∩µ¿¿ ¿ Γ.ñ.;                                 │
  1324.     │     }                                                      │
  1325.     │                                                            │
  1326.     │     »α¿ßΓπ»¿Γ∞ ¬ óδ»«½¡Ñ¡¿ε «»Ñαᵿ¿ ºá»¿ß¿ ñá¡¡δσ ¿º ß»¿ß-│
  1327.     │      ¬á, σαá¡∩ΘÑú« óδó«ñ¡δÑ ñá¡¡δÑ;                        │
  1328.     │ }                                                          │
  1329.     └────────────────────────────────────────────────────────────┘
  1330.  
  1331.          É¿ßπ¡«¬ 10.13. Ç½ú«α¿Γ¼ »ÑαÑ»¿ß¿ ñá¡¡δσ ¡á ΓÑନ¡á½
  1332.  
  1333.  
  1334. ñπΘÑú«  ºá»¿ß∞. è«úñá «íΩѼ ¿¡Σ«α¼áµ¿¿ ó ß»¿ß¬Ñ ñ½∩ σαá¡Ñ¡¿∩ óδó«ñ¡δσ ñá¡¡δσ
  1335. »áñáÑΓ ºá ¡¿ª¡εε «Γ¼ÑΓ¬π, »α«úαἼᠫíαáí«Γ¬¿ »αÑαδóá¡¿⌐ ó«º«í¡«ó½∩ÑΓ óδ»«½-
  1336. ¡Ñ¡¿Ñ óßÑσ »α«µÑßß«ó, »α¿«ßΓá¡«ó½Ñ¡¡δσ ñ« Γ«ú« ¼«¼Ñ¡Γá, ¬«úñá ΓÑନ¡á½  ß¼«-
  1337. ªÑΓ  »α¿¡∩Γ∞ ß½ÑñπεΘπε »«αµ¿ε ñá¡¡δσ. æΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß ºáóÑαΦáÑΓ µ¿¬½ «í-
  1338. αáí«Γ¬¿, ß¬«»¿α«óáó óßε óδó«ñ¿¼πε ¿¡Σ«α¼áµ¿ε ¿º áñαÑß¡«ú« »α«ßΓαá¡ßΓóá ºáñá-
  1339. τ¿ ó ß««ΓóÑΓßΓóπεΘ¿⌐ ß¿¼ó«½∞¡δ⌐ ß»¿ß«¬, ¿ óδºδóáÑΓ óδ»«½¡Ñ¡¿Ñ »α«µÑñπα ñαá⌐-
  1340. óÑαá, »ÑαÑßδ½áεΘ¿σ ñá¡¡δÑ ¡á ΓÑନ¡á½, « ¬«Γ«αδσ πªÑ í佫 ß¬áºá¡« óδΦÑ.
  1341.     àß½¿ ¡á ΓÑନ¡á½ óÑñπΓ ºá»¿ß∞ ¡Ñ߬«½∞¬« »α«µÑßß«ó, «¡¿  ¡Ñºáó¿ß¿¼«  ñαπú
  1342. «Γ  ñαπúá ß½ÑñπεΓ π¬áºá¡¡«⌐ »α«µÑñπαÑ. éδó«ñ¿¼á∩ ¿¡Σ«α¼áµ¿∩ ¼«ªÑΓ íδΓ∞ ¿ß¬á-
  1343. ªÑ¡á; Γ« ÑßΓ∞ ¡á ΓÑନ¡á½Ñ ñá¡¡δÑ, ºá»¿ßδóáѼδÑ  »α«µÑßßἿ,  ¼«úπΓ  »ÑαÑßÑ-
  1344. ¬áΓ∞ß∩.  ¥Γ« ¼«ªÑΓ »α«¿º«⌐Γ¿ ¿º-ºá Γ«ú«, τΓ« »α«µÑßßδ óÑñπΓ ºá»¿ß∞ ¡á ΓÑନ-
  1345. ¡á½, ¿ß»«½∞ºπ∩ ¡Ñ߬«½∞¬« ó맮ó«ó ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ write. ƒñα« ¼«ªÑΓ  »ÑαѬ-
  1346. ½ετáΓ∞  ¬«¡ΓѬßΓ, »«¬á »α«µÑßß óδ»«½¡∩ÑΓß∩ ó αѪ¿¼Ñ ºáñáτ¿, ¼Ñªñπ »«ß½Ññ«óá-
  1347. Γѽ∞¡δ¼¿ ó맮óἿ Σπ¡¬µ¿¿ write, ¿ ó¡«ó∞ ºá»πΘÑ¡¡δÑ »α«µÑßßδ ¼«úπΓ óÑßΓ¿ ºá-
  1348. »¿ß∞ ¡á ΓÑନ¡á½, »«¬á »Ñαóδ⌐ ¿º »α«µÑßß«ó »α¿«ßΓá¡«ó½Ñ¡.  éδó«ñ¿¼δÑ  ñá¡¡δÑ
  1349. ¼«úπΓ íδΓ∞ ΓᬪѠ¿ß¬áªÑ¡δ ¿ ¡á ΓÑନ¡á½Ñ, »«ß¬«½∞¬π »α«µÑßß ¼«ªÑΓ »α¿«ßΓá¡«-
  1350. ó¿Γ∞ß∩ ¡á ßÑαÑñ¿¡Ñ óδ»«½¡Ñ¡¿∩ ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ write, «ª¿ñá∩ ºáóÑαΦÑ¡¿∩ óδ-
  1351. ó«ñá  ¡á  ΓÑନ¡á½ ¿º ß¿ßΓÑ¼δ »αÑñδñπΘÑ⌐ »«αµ¿¿ ñá¡¡δσ. ƒñα« ¼«ªÑΓ ºá»πßΓ¿Γ∞
  1352. ñαπú¿Ñ »α«µÑßßδ, ¬«Γ«αδÑ óѽ¿ ºá»¿ß∞ ¡á ΓÑନ¡á½ ñ« Γ«ú«, ¬á¬ »Ñαóδ⌐ »α«µÑßß
  1353. íδ½ »«óΓ«α¡« ºá»πΘÑ¡. Å« φΓ«⌐ »α¿τ¿¡Ñ, ∩ñα« ¡Ñ úáαá¡Γ¿απÑΓ,  τΓ«  ß«ñÑন¼«Ñ
  1354. íπΣÑαá  ñá¡¡δσ,  óδó«ñ¿¼«Ñ ó αѺπ½∞ΓáΓÑ ó맮óá ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ write, »«∩-
  1355. ó¿Γß∩ ¡á φ¬αá¡Ñ ΓÑନ¡á½á ó ¡Ñ»αÑαδó¡«¼ ó¿ñÑ.
  1356.     Éáßß¼«Γα¿¼ »α«úαá¼¼π, »α¿óÑñÑ¡¡πε ¡á É¿ßπ¡¬Ñ 10.14. É«ñ¿Γѽ∞߬¿⌐ »α«µÑßß
  1357. ß«ºñáÑΓ ñ« 18 »«α«ªñÑ¡¡δσ »α«µÑßß«ó; ¬áªñδ⌐ ¿º »«α«ªñÑ¡¡δσ »α«µÑßß«ó ºá»¿ßδ-
  1358. óáÑΓ ßΓ᫬π (ß »«¼«Θ∞ε í¿í½¿«ΓÑτ¡«⌐ Σπ¡¬µ¿¿ sprintf) ó ¼áßß¿ó output,  ¬«Γ«-
  1359. αδ⌐  ó¬½ετáÑΓ  ß««íΘÑ¡¿Ñ  ¿  º¡áτÑ¡¿Ñ ßτÑΓτ¿¬á i ó ¼«¼Ñ¡Γ óδ»«½¡Ñ¡¿∩ Σπ¡¬µ¿¿
  1360. fork, ¿ ºáΓѼ óσ«ñ¿Γ ó µ¿¬½ »«Φáú«ó«⌐ »ÑαÑ»¿ß¿ ßΓ᫬¿  ó  Σá⌐½  ßΓá¡ñáαΓ¡«ú«
  1361. óδó«ñá. àß½¿ ßΓá¡ñáαΓ¡δ¼ óδó«ñ«¼ ∩ó½∩ÑΓß∩ ΓÑନ¡á½, ΓÑନ¡á½∞¡δ⌐ ñαá⌐óÑα αÑ-
  1362. úπ½¿απÑΓ  »«Γ«¬ »«ßΓπ»áεΘ¿σ ñá¡¡δσ. éδó«ñ¿¼á∩ ßΓα«¬á ¿¼ÑÑΓ í«½ÑÑ 64 ß¿¼ó«½«ó
  1363.  
  1364.  
  1365.                                     311
  1366.  
  1367. ┌────────────────────────────────────────────────────────────────┐
  1368. │ char form[]="φΓ« »α¿¼Ñα óδó«ñá ßΓ᫬¿ ¿º »«α«ªñÑ¡¡«ú« »α«µÑßßá"│                                                            │
  1369. │ main()                                                         │
  1370. │ {                                                              │
  1371. │     char output[128];                                          │
  1372. │     int i;                                                     │
  1373. │                                                                │
  1374. │     for (i = 0; i < 18; i++)                                   │
  1375. │     {                                                          │
  1376. │           switch (fork())                                      │
  1377. │           {                                                    │
  1378. │           case -1:    /* «Φ¿í¬á --- »αÑóδΦÑ¡« ¼á¬ß¿¼á½∞¡«Ñ τ¿ß-│
  1379. │                          ½« »α«µÑßß«ó */                       │
  1380. │                exit();                                         │
  1381. │                                                                │
  1382. │           default:    /* α«ñ¿Γѽ∞߬¿⌐ »α«µÑßß */               │
  1383. │                break;                                          │
  1384. │                                                                │
  1385. │           case 0:     /* »«α«ªñÑ¡¡δ⌐ »α«µÑßß */                │
  1386. │                /* Σ«α¼áΓ óδó«ñá ßΓ᫬¿ ó »ÑαѼѡ¡«⌐ output */  │
  1387. │                sprintf(output,"%%d\n%s%d\n",form,i,form,i);    │
  1388. │                for (;;)                                        │
  1389. │                       write(1,output,sizeof(output));          │
  1390. │           }                                                    │
  1391. │     }                                                          │
  1392. │ }                                                              │
  1393. └────────────────────────────────────────────────────────────────┘
  1394.  
  1395.       É¿ßπ¡«¬ 10.14. ÅÑαÑñáτá ñá¡¡δσ τÑαѺ ßΓá¡ñáαΓ¡δ⌐ óδó«ñ
  1396.  
  1397.  
  1398. ó ñ½¿¡π, Γ« ÑßΓ∞ ß½¿Φ¬«¼ óѽ¿¬á ñ½∩ Γ«ú«,  τΓ«íδ  »«¼ÑßΓ¿Γ∞ß∩  ó  ß¿¼ó«½∞¡«¼
  1399. í½«¬Ñ  (ñ½¿¡«⌐  64  íá⌐Γá)  ó óÑαß¿¿ V ß¿ßΓѼδ. æ½Ññ«óáΓѽ∞¡«, ΓÑନ¡á½∞¡«¼π
  1400. ñαá⌐óÑαπ ΓαÑíπÑΓß∩ í«½ÑÑ «ñ¡«ú« ß¿¼ó«½∞¡«ú« í½«¬á ñ½∩ ¬áªñ«ú« ó맮óá Σπ¡¬µ¿¿
  1401. write, ¿¡áτÑ óδó«ñ¡«⌐ »«Γ«¬  ¼«ªÑΓ  ßΓáΓ∞  ¿ß¬áªÑ¡¡δ¼.  ìá»α¿¼Ñα,  ß½ÑñπεΘ¿Ñ
  1402. ßΓ᫬¿  í뫨  τáßΓ∞ε  óδó«ñ¡«ú«  »«Γ«¬á, »«½πτÑ¡¡«ú« ó αѺπ½∞ΓáΓÑ óδ»«½¡Ñ¡¿∩
  1403. »α«úαá¼¼δ ¡á ¼áΦ¿¡Ñ AT&T 3B20:
  1404.  
  1405.   this is a sample output string from child 1
  1406.   this is a sample outthis is a sample output string from child 0
  1407.  
  1408.     ùΓÑ¡¿Ñ ñá¡¡δσ ß ΓÑନ¡á½á ó ¬á¡«¡¿τÑ߬«¼ αѪ¿¼Ñ í«½ÑÑ ß½«ª¡á∩  «»Ñαᵿ∩.
  1409. é ó맮óÑ ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ read π¬áºδóáÑΓß∩ ¬«½¿τÑßΓó« íá⌐Γ, ¬«Γ«αδÑ »α«µÑßß
  1410. σ«τÑΓ  ßτ¿ΓáΓ∞, ¡« ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß óδ»«½¡∩ÑΓ τΓÑ¡¿Ñ »« »«½πτÑ¡¿¿ ß¿¼ó«½á
  1411. »ÑαÑó«ñá ¬áαÑΓ¬¿, ñáªÑ Ñß½¿ ¬«½¿τÑßΓó« ß¿¼ó«½«ó ¡Ñ  π¬áºá¡«.  ¥Γ«  πñ«í¡«  ß
  1412. »αá¬Γ¿τÑ߬«⌐  Γ«τ¬¿  ºαÑ¡¿∩,  Γᬠ ¬á¬  »α«µÑßß  ¡Ñ ó ß«ßΓ«∩¡¿¿ »αÑñπúáñáΓ∞,
  1413. ߬«½∞¬« ß¿¼ó«½«ó »«½∞º«óáΓѽ∞ óóÑñÑΓ ß ¬½áó¿áΓπαδ, ¿, ß ñαπú«⌐  ßΓ«α«¡δ,  ¡Ñ
  1414. ¿¼ÑÑΓ ß¼δ߽ᠪñáΓ∞, ¬«úñá »«½∞º«óáΓѽ∞ óóÑñÑΓ í«½∞Φ«Ñ τ¿ß½« ß¿¼ó«½«ó. ìá»α¿-
  1415. ¼Ñα,  »«½∞º«óáΓѽ¿ óó«ñ∩Γ ¬«¼á¡ñ¡δÑ ßΓ᫬¿ ñ½∩ ¬«¼á¡ñ¡«ú« »α«µÑßß«αá shell ¿
  1416. «ª¿ñáεΓ «ΓóÑΓá shell'á ¡á ¬«¼á¡ñπ »« »«½πτÑ¡¿¿ ß¿¼ó«½á ó«ºóαáΓá ¬áαÑΓ¬¿. Åα¿
  1417. φΓ«¼ ¡ÑΓ ¡¿¬á¬«⌐ αạ¿µδ, ∩ó½∩εΓß∩ ½¿ óóÑñÑ¡¡δÑ ßΓ᫬¿  »α«ßΓ묨  ¬«¼á¡ñἿ,
  1418. Γᬿ¼¿ ¬á¬ "date" ¿½¿ "who", ¿½¿ ªÑ φΓ« í«½ÑÑ ß½«ª¡δÑ »«ß½Ññ«óáΓѽ∞¡«ßΓ¿ ¬«-
  1419. ¼á¡ñ, »«ñ«í¡δÑ ß½ÑñπεΘÑ⌐:
  1420.  
  1421.     pic file* │ tbl │ eqn │ troff -mm -Taps │ apsend
  1422.  
  1423.     ÆÑନ¡á½∞¡δ⌐  ñαá⌐óÑα ¿ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß ¡¿τÑú« ¡Ñ º¡áεΓ « ß¿¡Γá¬ß¿ßÑ
  1424. ¬«¼á¡ñ¡«ú« »α«µÑßß«αá shell, ¿ φΓ« »αáó¿½∞¡«,  »«ß¬«½∞¬π  ñαπú¿Ñ  »α«úαá¼¼δ,
  1425. ¬«Γ«αδÑ  ßτ¿ΓδóáεΓ ¿¡Σ«α¼áµ¿ε ß ΓÑନ¡á½«ó (¡á»α¿¼Ñα, αÑñá¬Γ«αδ), ¿¼ÑεΓ αáº-
  1426.  
  1427.                                     312
  1428.  
  1429. ½¿τ¡δ⌐ ß¿¡Γá¬ß¿ß ¬«¼á¡ñ. Å«φΓ«¼π ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß óδ»«½¡∩ÑΓ τΓÑ¡¿Ñ »« »«-
  1430. ½πτÑ¡¿¿ ß¿¼ó«½á ó«ºóαáΓá ¬áαÑΓ¬¿.
  1431.     ìá É¿ßπ¡¬Ñ 10.15 »«¬áºá¡ á½ú«α¿Γ¼ τΓÑ¡¿∩ ß ΓÑନ¡á½á.  ÅαÑñ»«½«ª¿¼,  τΓ«
  1432. ΓÑନ¡á½  αáí«ΓáÑΓ ó ¬á¡«¡¿τÑ߬«¼ αѪ¿¼Ñ; ó αáºñѽѠ10.3.3 íπñÑΓ αáßß¼«ΓαÑ¡á
  1433. αáí«Γá ó αѪ¿¼Ñ íѺ «íαáí«Γ¬¿. àß½¿ ó ¡áßΓ«∩Θ¿⌐ ¼«¼Ñ¡Γ ó ½εí«¼ ¿º ß¿¼ó«½∞¡δσ
  1434. ß»¿ß¬«ó ñ½∩ σαá¡Ñ¡¿∩ óó«ñ¡«⌐ ¿¡Σ«α¼áµ¿¿ «ΓßπΓßΓóπεΓ ñá¡¡δÑ, »α«µÑßß,  óδ»«½-
  1435.  
  1436.     ┌────────────────────────────────────────────────────────────┐
  1437.     │ á½ú«α¿Γ¼ terminal_read                                     │
  1438.     │ {                                                          │
  1439.     │    Ñß½¿ (ó ¬á¡«¡¿τÑ߬«¼ ß¿¼ó«½∞¡«¼ ß»¿ß¬Ñ «ΓßπΓßΓóπεΓ ñá¡- │
  1440.     │     ¡δÑ)                                                   │
  1441.     │    {                                                       │
  1442.     │       óδ»«½¡¿Γ∞ (»«¬á ó ß»¿ß¬Ñ ñ½∩ ¡ÑßΓαπ¬Γπα¿α«óá¡¡δσ     │
  1443.     │        óó«ñ¡δσ ñá¡¡δσ «ΓßπΓßΓóπÑΓ ¿¡Σ«α¼áµ¿∩)              │
  1444.     │       {                                                    │
  1445.     │           Ñß½¿ (ΓÑନ¡á½ «Γ¬αδΓ ß »áαá¼ÑΓα«¼ "no delay"    │
  1446.     │            (íѺ ºáñÑ᪬¿))                                 │
  1447.     │               ó«ºóαáΓ¿Γ∞ π»αáó½Ñ¡¿Ñ;                       │
  1448.     │           Ñß½¿ (ΓÑନ¡á½ ó αѪ¿¼Ñ íѺ «íαáí«Γ¬¿ ß ¿ß»«½∞º«-│
  1449.     │            ó᡿Ѽ Γá⌐¼Ñαá ¿ Γá⌐¼Ñα ¡Ñ á¬Γ¿óÑ¡)             │
  1450.     │               »αÑñ»α¿¡∩Γ∞ ñÑ⌐ßΓó¿∩ ¬ á¬Γ¿ó¿ºáµ¿¿ Γá⌐¼Ñαá   │
  1451.     │                (Γáí½¿µá «ΓóÑΓ¡δσ ß¿ú¡á½«ó);                │
  1452.     │           »α¿«ßΓá¡«ó¿Γ∞ß∩ (ñ« »«ßΓπ»½Ñ¡¿∩ ñá¡¡δσ ß ΓÑନ¡á-│
  1453.     │            ½á);                                            │
  1454.     │       }                                                    │
  1455.     │                                                            │
  1456.     │       /* ó ß»¿ß¬Ñ ñ½∩ ¡ÑßΓαπ¬Γπα¿α«óá¡¡δσ óó«ñ¡δσ ñá¡¡δσ   │
  1457.     │          ÑßΓ∞ ¿¡Σ«α¼áµ¿∩ */                                │
  1458.     │       Ñß½¿ (ΓÑନ¡á½ ó αѪ¿¼Ñ íѺ «íαáí«Γ¬¿)               │
  1459.     │           ß¬«»¿α«óáΓ∞ óßÑ ñá¡¡δÑ ¿º ß»¿ß¬á ñ½∩ ¡ÑßΓαπ¬Γπα¿-│
  1460.     │            α«óá¡¡δσ óó«ñ¡δσ ñá¡¡δσ ó ¬á¡«¡¿τÑ߬¿⌐ ß»¿ß«¬;  │
  1461.     │       ó »α«Γ¿ó¡«¼ ß½πτáÑ    /* ΓÑନ¡á½ ó ¬á¡«¡¿τÑ߬«¼ αÑ- │
  1462.     │                                ª¿¼Ñ */                     │
  1463.     │       {                                                    │
  1464.     │           óδ»«½¡¿Γ∞ (»«¬á ó ß»¿ß¬Ñ ñ½∩ ¡ÑßΓαπ¬Γπα¿α«óá¡¡δσ │
  1465.     │            óó«ñ¡δσ ñá¡¡δσ ÑßΓ∞ ß¿¼ó«½δ)                    │
  1466.     │           {                                                │
  1467.     │               ¬«»¿α«óáΓ∞ »« «ñ¡«¼π ß¿¼ó«½π ¿º ß»¿ß¬á ñ½∩   │
  1468.     │                ¡ÑßΓαπ¬Γπα¿α«óá¡¡δσ óó«ñ¡δσ ñá¡¡δσ ó ¬á¡«-  │
  1469.     │                ¡¿τÑ߬¿⌐ ß»¿ß«¬:                            │
  1470.     │                óδ»«½¡¿Γ∞ «íαáí«Γ¬π ß¿¼ó«½«ó ßΓ¿αá¡¿∩ ¿ πñá-│
  1471.     │                ½Ñ¡¿∩;                                      │
  1472.     │               Ñß½¿ (ß¿¼ó«½ - "ó«ºóαáΓ ¬áαÑΓ¬¿" ¿½¿ "¬«¡Ñµ  │
  1473.     │                Σá⌐½á")                                     │
  1474.     │                   »αÑαóáΓ∞ß∩;    /* óδσ«ñ ¿º µ¿¬½á */      │
  1475.     │           }                                                │
  1476.     │       }                                                    │
  1477.     │    }                                                       │
  1478.     │                                                            │
  1479.     │    óδ»«½¡¿Γ∞ (»«¬á ó ¬á¡«¡¿τÑ߬«¼ ß»¿ß¬Ñ ÑΘÑ ÑßΓ∞ ß¿¼ó«½δ  │
  1480.     │     ¿ ¡Ñ ¿ßτÑα»á¡« ¬«½¿τÑßΓó« ß¿¼ó«½«ó, π¬áºá¡¡«Ñ ó ó맮óÑ │
  1481.     │     Σπ¡¬µ¿¿ read)                                          │
  1482.     │       ¬«»¿α«óáΓ∞ ß¿¼ó«½δ ¿º ß¿¼ó«½∞¡δσ í½«¬«ó ¬á¡«¡¿τÑ߬«ú«│
  1483.     │        ß»¿ß¬á ó áñαÑß¡«Ñ »α«ßΓαá¡ßΓó« ºáñáτ¿;              │
  1484.     │ }                                                          │
  1485.     └────────────────────────────────────────────────────────────┘
  1486.  
  1487.               É¿ßπ¡«¬ 10.15. Ç½ú«α¿Γ¼ τΓÑ¡¿∩ ß ΓÑନ¡á½á
  1488.  
  1489.                                     313
  1490.  
  1491.  
  1492.  
  1493. ¡∩εΘ¿⌐ τΓÑ¡¿Ñ, »α¿«ßΓá¡áó½¿óáÑΓß∩ ñ« »«ßΓπ»½Ñ¡¿∩ »Ñαó«⌐ ßΓ᫬¿ ñá¡¡δσ. è«úñá
  1494. ñá¡¡δÑ  »«ßΓπ»áεΓ,  »α«úαἼᠠ«íαáí«Γ¬¿  »αÑαδóá¡¿∩  «Γ ΓÑନ¡á½á ºá»π߬áÑΓ
  1495. "»α«úαá¼¼π «íαáí«Γ¬¿ »αÑαδóá¡¿∩"  ßΓ᫬«ó«ú«  ¿¡ΓÑαΣÑ⌐ßá,  ¬«Γ«αá∩  »«¼ÑΘáÑΓ
  1496. ñá¡¡δÑ ó ß»¿ß«¬ ñ½∩ σαá¡Ñ¡¿∩ ¡ÑßΓαπ¬Γπα¿α«óá¡¡δσ óó«ñ¡δσ ñá¡¡δσ ñ½∩ »ÑαÑñáτ¿
  1497. »α«µÑßßá¼,  «ßπΘÑßΓó½∩εΘ¿¼  τΓÑ¡¿Ñ, ¿ ó ß»¿ß«¬ ñ½∩ σαá¡Ñ¡¿∩ óδó«ñ¡δσ ñá¡¡δσ,
  1498. »ÑαÑñáóáѼδσ ó ¬áτÑßΓóÑ φσ«ß«»α«ó«ªñÑ¡¿∩ ¡á ΓÑନ¡á½. àß½¿ óóÑñÑ¡¡á∩  ßΓ᫬á
  1499. ß«ñÑαª¿Γ ß¿¼ó«½ ó«ºóαáΓá ¬áαÑΓ¬¿, »α«úαἼᠫíαáí«Γ¬¿ »αÑαδóá¡¿∩ ó«º«í¡«ó½∩-
  1500. ÑΓ óδ»«½¡Ñ¡¿Ñ óßÑσ »α¿«ßΓá¡«ó½Ñ¡¡δσ »α«µÑßß«ó τΓÑ¡¿∩. è«úñá »α«µÑßß, «ßπΘÑß-
  1501. Γó½∩εΘ¿⌐  τΓÑ¡¿Ñ, óδ»«½¡∩ÑΓß∩, ñαá⌐óÑα óδí¿αáÑΓ ß¿¼ó«½δ ¿º ß»¿ß¬á ñ½∩ σαá¡Ñ-
  1502. ¡¿∩ ¡ÑßΓαπ¬Γπα¿α«óá¡¡δσ óó«ñ¡δσ ñá¡¡δσ, «íαáíáΓδóáÑΓ ß¿¼ó«½δ ßΓ¿αá¡¿∩ ¿ πñá-
  1503. ½Ñ¡¿∩ ¿ »«¼ÑΘáÑΓ ß¿¼ó«½δ ó ¬á¡«¡¿τÑ߬¿⌐ ß¿¼ó«½∞¡δ⌐ ß»¿ß«¬. çáΓѼ «¡ ¬«»¿απÑΓ
  1504. ßΓ᫬π ß¿¼ó«½«ó ó áñαÑß¡«Ñ »α«ßΓαá¡ßΓó« ºáñáτ¿ ñ« ß¿¼ó«½á  ó«ºóαáΓá  ¬áαÑΓ¬¿
  1505. ¿½¿  ñ«  ¿ßτÑα»á¡¿∩  τ¿ß½á  ß¿¼ó«½«ó,  π¬áºá¡¡«ú« ó ó맮óÑ ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿
  1506. read, τΓ« óßΓαÑΓ¿Γß∩ αá¡∞ΦÑ. Äñ¡á¬«, »α«µÑßß ¼«ªÑΓ «í¡áαπª¿Γ∞,  τΓ«  ñá¡¡δσ,
  1507. αáñ¿  ¬«Γ«αδσ  «¡  ó«º«í¡«ó¿½  ßó«Ñ óδ»«½¡Ñ¡¿Ñ, í«½∞ΦÑ ¡Ñ ßπΘÑßΓóπÑΓ: ñαπú¿Ñ
  1508. »α«µÑßßδ ßτ¿Γ὿ ñá¡¡δÑ ß ΓÑନ¡á½á ¿ πñ὿½¿ ¿σ ¿º ß»¿ß¬á ñ½∩  ¡ÑßΓαπ¬Γπα¿-
  1509. α«óá¡¡δσ óó«ñ¡δσ ñá¡¡δσ ñ« Γ«ú«, ¬á¬ »Ñαóδ⌐ »α«µÑßß íδ½ ºá»πΘÑ¡ ó¡«ó∞. Æá¬á∩
  1510. ß¿Γπᵿ∩ »«σ«ªá ¡á Γπ, ¬«Γ«αá∩ ¿¼ÑÑΓ ¼ÑßΓ«, ¬«úñá ¿º ¬á¡á½á ßτ¿ΓδóáεΓ ñá¡¡δÑ
  1511. ¡Ñ߬«½∞¬« »α«µÑßß«ó.
  1512.     Äíαáí«Γ¬á  ß¿¼ó«½«ó  ó ¡á»αáó½Ñ¡¿¿ óó«ñá ¿ ó ¡á»αáó½Ñ¡¿¿ óδó«ñá áß¿¼¼ÑΓ-
  1513. α¿τ¡á, τΓ« ó¿ñ¡« ¿º ¡á½¿τ¿∩ ñóπσ ß¿¼ó«½∞¡δσ ß»¿ß¬«ó ñ½∩ óó«ñá ¿ «ñ¡«ú« - ñ½∩
  1514. óδó«ñá. æΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß óδó«ñ¿Γ ñá¡¡δÑ ¿º »α«ßΓαá¡ßΓóá ºáñáτ¿, «íαáíáΓδ-
  1515. óáÑΓ ¿σ ¿ »«¼ÑΘáÑΓ ¿σ ó ß»¿ß«¬ ñ½∩ σαá¡Ñ¡¿∩ óδó«ñ¡δσ ñá¡¡δσ.  ä½∩  ß¿¼¼ÑΓα¿¿
  1516. ß½Ññ«óὫ íδ ¿¼ÑΓ∞
  1517. Γ«½∞¬«  «ñ¿¡ ß»¿ß«¬ ñ½∩ óó«ñ¡δσ ñá¡¡δσ. Äñ¡á¬«, ó Γᬫ¼ ß½πτáÑ »«ΓαÑí«óὫß∞
  1518. íδ ¿ß»«½∞º«óá¡¿Ñ »α«úαá¼¼δ «íαáí«Γ¬¿ »αÑαδóá¡¿⌐ ñ½∩  ¿¡ΓÑα»αÑΓᵿ¿  ß¿¼ó«½«ó
  1519.  
  1520.   ┌──────────────────────────────────────────────────────────────┐
  1521.   │ char input[256];                                             │
  1522.   │                                                              │
  1523.   │ main()                                                       │
  1524.   │ {                                                            │
  1525.   │    register int i;                                           │
  1526.   │                                                              │
  1527.   │    for (i = 0; i < 18; i++)                                  │
  1528.   │    {                                                         │
  1529.   │       switch (fork())                                        │
  1530.   │       {                                                      │
  1531.   │       case -1:       /* «Φ¿í¬á */                            │
  1532.   │          printf("«»Ñαᵿ∩ fork ¡Ñ óδ»«½¡Ñ¡á ¿º-ºá «Φ¿í¬¿\n");│
  1533.   │          exit();                                             │
  1534.   │                                                              │
  1535.   │       default:       /* α«ñ¿Γѽ∞߬¿⌐ »α«µÑßß */              │
  1536.   │          break;                                              │
  1537.   │                                                              │
  1538.   │       case 0:        /* »«α«ªñÑ¡¡δ⌐ »α«µÑßß */               │
  1539.   │          for (;;)                                            │
  1540.   │          {                                                   │
  1541.   │              read(0,input,256);     /* τΓÑ¡¿Ñ ßΓ᫬¿ */      │
  1542.   │              printf("%d τΓÑ¡¿Ñ %s\n",i,input);               │
  1543.   │          }                                                   │
  1544.   │       }                                                      │
  1545.   │    }                                                         │
  1546.   │ }                                                            │
  1547.   └──────────────────────────────────────────────────────────────┘
  1548.  
  1549.      É¿ßπ¡«¬ 10.16. è«¡¬παÑ¡µ¿∩ ºá ñá¡¡δÑ, óó«ñ¿¼δÑ ß ΓÑନ¡á½á
  1550.  
  1551.                                     314
  1552.  
  1553.  
  1554.  
  1555. ßΓ¿αá¡¿∩  ¿  πñá½Ñ¡¿∩, τΓ« ßñѽὫ íδ »α«µÑñπαπ í«½ÑÑ ß½«ª¡«⌐ ¿ ñ½¿Γѽ∞¡«⌐ ¿
  1556. ºá»αÑΓ¿½« íδ ó«º¡¿¬¡«óÑ¡¿Ñ ñαπú¿σ »αÑαδóá¡¿⌐ ¡á óßÑ ¬α¿Γ¿τÑ߬«Ñ  óαѼ∩.  êß-
  1557. »«½∞º«óá¡¿Ñ  ñóπσ  ß¿¼ó«½∞¡δσ ß»¿ß¬«ó ñ½∩ óó«ñá »«ñαáºπ¼ÑóáÑΓ, τΓ« »α«úαá¼¼á
  1558. «íαáí«Γ¬¿ »αÑαδóá¡¿⌐ ¼«ªÑΓ »α«ßΓ« ßíα«ß¿Γ∞ ß¿¼ó«½δ ó ß»¿ß«¬ ñ½∩ ¡ÑßΓαπ¬Γπα¿-
  1559. α«óá¡¡δσ óó«ñ¡δσ ñá¡¡δσ ¿ ó«º«í¡«ó¿Γ∞ óδ»«½¡Ñ¡¿Ñ  »α«µÑßßá,  «ßπΘÑßΓó½∩εΘÑú«
  1560. τΓÑ¡¿Ñ, ¬«Γ«αδ⌐ ß«íßΓóÑ¡¡« ¿ ó«º∞¼ÑΓ ¡á ßÑí∩ αáí«Γπ »« ¿¡ΓÑα»αÑΓᵿ¿ óó«ñ¡δσ
  1561. ñá¡¡δσ.  Åα¿ φΓ«¼ »α«úαἼᠫíαáí«Γ¬¿ »αÑαδóá¡¿⌐ ¡Ñ¼Ññ½Ñ¡¡« »«¼ÑΘáÑΓ óóÑñÑ¡-
  1562. ¡δÑ ß¿¼ó«½δ ó ß»¿ß«¬ ñ½∩ σαá¡Ñ¡¿∩ óδó«ñ¡δσ ñá¡¡δσ, ΓᬠτΓ« »«½∞º«óáΓѽ∞  ¿ß-
  1563. »δΓδóáÑΓ  ½¿Φ∞ ¼¿¡¿¼á½∞¡πε ºáñÑ᪬π »α¿ »α«ß¼«ΓαÑ óóÑñÑ¡¡δσ ß¿¼ó«½«ó ¡á ΓÑα-
  1564. ¼¿¡á½Ñ.
  1565.     ìá É¿ßπ¡¬Ñ 10.16 »α¿óÑñѡᠻα«úαá¼¼á, ó ¬«Γ«α«⌐ α«ñ¿Γѽ∞߬¿⌐ »α«µÑßß »«-
  1566. ᫪ñáÑΓ ¡Ñ߬«½∞¬« »α«µÑßß«ó, «ßπΘÑßΓó½∩εΘ¿σ  τΓÑ¡¿Ñ  ¿º  Σá⌐½á  ßΓá¡ñáαΓ¡«ú«
  1567. óó«ñá, ¬«¡¬πα¿απ∩ ºá »«½πτÑ¡¿Ñ ñá¡¡δσ, óó«ñ¿¼δσ ß ΓÑନ¡á½á. éó«ñ ß ΓÑନ¡á-
  1568. ½á  «íδτ¡« «ßπΘÑßΓó½∩ÑΓß∩ ß½¿Φ¬«¼ ¼Ññ½Ñ¡¡« ñ½∩ Γ«ú«, τΓ«íδ πñ«ó½ÑΓó«α¿Γ∞ óßÑ
  1569. »α«µÑßßδ, óÑñπΘ¿Ñ τΓÑ¡¿Ñ, »«φΓ«¼π »α«µÑßßδ í«½∞Φπε τáßΓ∞ óαѼѡ¿ ¡áσ«ñ∩Γß∩ ó
  1570. »α¿«ßΓá¡«ó½Ñ¡¡«¼ ß«ßΓ«∩¡¿¿ ó ß««ΓóÑΓßΓó¿¿ ß á½ú«α¿Γ¼«¼ terminal_read, «ª¿ñá∩
  1571. óó«ñá ñá¡¡δσ. è«úñá »«½∞º«óáΓѽ∞ óó«ñ¿Γ ßΓ᫬π ñá¡¡δσ,  »α«úαἼᠠ«íαáí«Γ¬¿
  1572. »αÑαδóá¡¿⌐ «Γ ΓÑନ¡á½á ó«º«í¡«ó½∩ÑΓ óδ»«½¡Ñ¡¿Ñ óßÑσ »α«µÑßß«ó, óÑñπΘ¿σ τΓÑ-
  1573. ¡¿Ñ;  »«ß¬«½∞¬π «¡¿ í뫨 »α¿«ßΓá¡«ó½Ñ¡δ ß «ñ¡¿¼ ¿ ΓѼ ªÑ πα«ó¡Ñ¼ »α¿«α¿ΓÑΓá,
  1574. «¡¿ óδí¿αáεΓß∩ ñ½∩ ºá»π߬á ß «ñ¿¡á¬«óδ¼ πα«ó¡Ñ¼ »α¿«α¿ΓÑΓá. Å«½∞º«óáΓѽ∞  ¡Ñ
  1575. ó  ß«ßΓ«∩¡¿¿  »αÑñπúáñáΓ∞, ¬á¬«⌐ ¿º »α«µÑßß«ó óδ»«½¡∩ÑΓß∩ ¿ ßτ¿ΓδóáÑΓ ßΓ᫬π
  1576. ñá¡¡δσ; πß»ÑΦ¡« ß«ºñá¡¡δ⌐ »α«µÑßß »ÑτáΓáÑΓ º¡áτÑ¡¿Ñ »ÑαѼѡ¡«⌐  i  ó  ¼«¼Ñ¡Γ
  1577. Ñú«  ß«ºñá¡¿∩.  éßÑ ñαπú¿Ñ »α«µÑßßδ ó ¬«¡µÑ ¬«¡µ«ó íπñπΓ ºá»πΘÑ¡δ, ¡« ó»«½¡Ñ
  1578. 󫺼«ª¡«, τΓ« «¡¿ ¡Ñ «í¡áαπªáΓ óóÑñÑ¡¡«⌐ ¿¡Σ«α¼áµ¿¿ ó ß»¿ß¬áσ  ñ½∩  σαá¡Ñ¡¿∩
  1579. óó«ñ¡δσ  ñá¡¡δσ  ¿  ¿σ  óδ»«½¡Ñ¡¿Ñ ß¡«óá íπñÑΓ »α¿«ßΓá¡«ó½Ñ¡«. éß∩ »α«µÑñπαá
  1580. »«óΓ«α∩ÑΓß∩ ñ½∩ ¬áªñ«⌐ óóÑñÑ¡¡«⌐ ßΓ᫬¿; ¡Ñ½∞º∩ ñáΓ∞ úáαá¡Γ¿ε, τΓ«  ¡¿  «ñ¿¡
  1581. ¿º »α«µÑßß«ó ¡Ñ ºáσóáΓ¿Γ óßÑ óóÑñÑ¡¡δÑ ñá¡¡δÑ.
  1582.     Äñ¡«óαѼѡ¡«¼π  τΓÑ¡¿ε  ß ΓÑନ¡á½á ¡Ñ߬«½∞¬¿¼¿ »α«µÑßßἿ »α¿ßπΘá ¡Ñ«ñ-
  1583. ¡«º¡áτ¡«ßΓ∞, ¡« ∩ñα« ß»αáó½∩ÑΓß∩ ß ß¿ΓπᵿÑ⌐  ¡á¿½πτΦ¿¼  «íαẫ¼.  æ  ñαπú«⌐
  1584. ßΓ«α«¡δ,  ∩ñα«  «í∩ºá¡«  »«ºó«½∩Γ∞ »α«µÑßßá¼ «ñ¡«óαѼѡ¡« ßτ¿ΓδóáΓ∞ ñá¡¡δÑ ß
  1585. ΓÑନ¡á½á, ¿¡áτÑ »«α«ªñÑ¡¡δÑ ¬«¼á¡ñ¡δ¼ »α«µÑßß«α«¼ shell »α«µÑßßδ,  τ¿ΓáεΘ¿Ñ
  1586. ¿º ßΓá¡ñáαΓ¡«ú« óó«ñá, ¡¿¬«úñá ¡Ñ íπñπΓ αáí«ΓáΓ∞, »«ß¬«½∞¬π shell Γ«ªÑ «íαá-
  1587. ΘáÑΓß∩ ¬ ßΓá¡ñáαΓ¡«¼π óó«ñπ. è«α«τÑ ú«ó«α∩, »α«µÑßßδ ñ«½ª¡δ ß¿¡σα«¡¿º¿α«óáΓ∞
  1588. ßó«¿ «íαáΘÑ¡¿∩ ¬ ΓÑନ¡á½π ¡á »«½∞º«óáΓѽ∞߬«¼ πα«ó¡Ñ.
  1589.     è«úñá »«½∞º«óáΓѽ∞ óó«ñ¿Γ ß¿¼ó«½ "¬«¡Ñµ Σá⌐½á" (Ctrl-d ó ASCII), ßΓ᫬«-
  1590. óδ⌐ ¿¡ΓÑαΣÑ⌐ß »ÑαÑñáÑΓ Σπ¡¬µ¿¿ read óóÑñÑ¡¡πε ßΓ᫬π ñ« ß¿¼ó«½á ¬«¡µá Σá⌐½á,
  1591. ¡« ¡Ñ ó¬½ετá∩ Ñú«. Ä¡ ¡Ñ »ÑαÑñáÑΓ ñá¡¡δÑ (¬«ñ ó«ºóαáΓá 0) Σπ¡¬µ¿¿ read, Ñß½¿
  1592. ó  ß¿¼ó«½∞¡«¼ ß»¿ß¬Ñ óßΓαÑΓ¿½ß∩ Γ«½∞¬« ß¿¼ó«½ "¬«¡Ñµ Σá⌐½á"; óδºδóáεΘ¿⌐ »α«-
  1593. µÑßß ßá¼ αáß»«º¡áÑΓ, τΓ« «í¡áαπªÑ¡ ¬«¡Ñµ Σá⌐½á ¿ í«½∞ΦÑ ¡Ñ ß½ÑñπÑΓ ßτ¿ΓδóáΓ∞
  1594. ñá¡¡δÑ ß ΓÑନ¡á½á. àß½¿ ÑΘÑ αẠ«íαáΓ¿Γ∞ß∩ ¬ »α¿¼Ñαá¼ »α«úαá¼¼ »«  shell'π,
  1595. »α¿óÑñÑ¡¡δ¼  ó ú½áóÑ 7, ¼«ª¡« «Γ¼ÑΓ¿Γ∞, τΓ« µ¿¬½ αáí«Γδ shell'á ºáóÑαΦáÑΓß∩,
  1596. ¬«úñá »«½∞º«óáΓѽ∞ ¡áª¿¼áÑΓ <Ctrl-d>: Σπ¡¬µ¿∩ read ó«ºóαáΘáÑΓ 0  ¿  »α«¿ºó«-
  1597. ñ¿Γß∩ óδσ«ñ ¿º shell'á.
  1598.     é φΓ«¼ αáºñѽѠαáßß¼«ΓαÑ¡á αáí«Γá ΓÑନ¡á½«ó óó«ñá-óδó«ñá, ¬«Γ«αδÑ »ÑαÑ-
  1599. ñáεΓ  ñá¡¡δÑ  ¡á  ¼áΦ¿¡π  »« «ñ¡«¼π ß¿¼ó«½π ºá «ñ¡π «»Ñαᵿε, ó Γ«τ¡«ßΓ¿ ¬á¬
  1600. »«½∞º«óáΓѽ∞ ¿σ óó«ñ¿Γ ß ¬½áó¿áΓπαδ. ê¡Γѽ½Ñ¬Γπá½∞¡δÑ ΓÑନ¡á½δ  »«ñú«Γáó½¿-
  1601. óáεΓ  ßó«⌐  óó«ñ¡«⌐ »«Γ«¬ ¡á ó¡ÑΦ¡Ñ¼ πßΓα«⌐ßΓóÑ, «ßó«í«ªñá∩ µÑ¡Γαá½∞¡δ⌐ »α«-
  1602. µÑßß«α ñ½∩ ñαπú«⌐ αáí«Γδ. æΓαπ¬Γπαá ñαá⌐óÑα«ó ñ½∩ Γᬿσ  ΓÑନ¡á½«ó  »«σ«ñ¿Γ
  1603. ¡á ßΓαπ¬Γπαπ ñαá⌐óÑα«ó ñ½∩ ΓÑନ¡á½«ó óó«ñá-óδó«ñá, ¡Ñß¼«Γα∩ ¡á Γ«, τΓ« Σπ¡-
  1604. ¬µ¿¿ ßΓ᫬«ó«ú« ¿¡ΓÑαΣÑ⌐ßá αẽ¿τáεΓß∩ ó ºáó¿ß¿¼«ßΓ¿ «Γ ó«º¼«ª¡«ßΓÑ⌐ ó¡ÑΦ¡¿σ
  1605. πßΓα«⌐ßΓó.
  1606.  
  1607.  
  1608.     E10.3.3 ÆÑନ¡á½∞¡δ⌐ ñαá⌐óÑα ó αѪ¿¼Ñ íѺ «íαáí«Γ¬¿ ß¿¼ó«½«óF
  1609.  
  1610.     Å«½∞º«óáΓѽ¿ πßΓá¡áó½¿óáεΓ »áαá¼ÑΓαδ ΓÑନ¡á½á, ΓᬿѠ¬á¬ ß¿¼ó«½δ ßΓ¿αá-
  1611. ¡¿∩  ¿  πñá½Ñ¡¿∩, ¿ ¿ºó½Ñ¬áεΓ º¡áτÑ¡¿∩ ΓѬπΘ¿σ πßΓᡫ󫬠ߠ»«¼«Θ∞ε ß¿ßΓѼ¡«⌐
  1612.  
  1613.                                     315
  1614.  
  1615. Σπ¡¬µ¿¿ ioctl. æσ«ñ¡δ¼ «íαẫ¼ «¡¿ πßΓá¡áó½¿óáεΓ ¡Ñ«íσ«ñ¿¼«ßΓ∞ φσ«-ß«»α«ó«ª-
  1616. ñÑ¡¿∩ óó«ñá ñá¡¡δσ ß ΓÑନ¡á½á, ºáñáεΓ ß¬«α«ßΓ∞ »ÑαÑñáτ¿ ¿¡Σ«α¼áµ¿¿ ó í«ñáσ,
  1617. ºá»«½¡∩εΓ «τÑαÑñ¿ ß¿¼ó«½«ó óó«ñá ¿ óδó«ñá ¿½¿ óαπτ¡πε ºá»π߬áεΓ ¿ «ßΓá¡áó½¿-
  1618. óáεΓ óδó«ñ¡«⌐ »«Γ«¬ ß¿¼ó«½«ó. é ¿¡Σ«α¼áµ¿«¡¡«⌐ ßΓαπ¬ΓπαÑ ΓÑନ¡á½∞¡«ú« ñαá⌐-
  1619. óÑαá σαá¡∩Γß∩ αẽ¿τ¡δÑ π»αáó½∩εΘ¿Ñ πßΓᡫ󬿠(ß¼. [SVID  85],  ßΓα.281),  ¿
  1620. ßΓ᫬«óδ⌐  ¿¡ΓÑαΣÑ⌐ß  »«½πτáÑΓ  »áαá¼ÑΓαδ  Σπ¡¬µ¿¿ ioctl ¿ πßΓá¡áó½¿óáÑΓ ¿½¿
  1621. ßτ¿ΓδóáÑΓ º¡áτÑ¡¿∩ ß««ΓóÑΓßΓóπεΘ¿σ »«½Ñ⌐ ßΓαπ¬Γπαδ ñá¡¡δσ. è«úñá »α«µÑßß πß-
  1622. Γá¡áó½¿óáÑΓ º¡áτÑ¡¿∩ »áαá¼ÑΓα«ó ΓÑନ¡á½á, «¡ ñѽáÑΓ φΓ« ñ½∩ óßÑσ »α«µÑßß«ó,
  1623. ¿ß»«½∞ºπεΘ¿σ ΓÑନ¡á½. ôßΓᡫ󬿠ΓÑନ¡á½á ¡Ñ ßíαáßδóáεΓß∩ áóΓ«¼áΓ¿τÑ߬¿ »α¿
  1624. óδσ«ñÑ ¿º »α«µÑßßá, ßñѽáóΦÑú« ¿º¼Ñ¡Ñ¡¿∩ ó πßΓá¡«ó¬áσ.
  1625.     Åα«µÑßßδ ¼«úπΓ ΓᬪѠ»ÑαÑóÑßΓ¿ ΓÑନ¡á½ ó αѪ¿¼ íѺ «íαáí«Γ¬¿  ß¿¼ó«½«ó,
  1626. ó  ¬«Γ«α«¼ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß »ÑαÑñáÑΓ ß¿¼ó«½δ ó Γ«τ¡«¼ ß««ΓóÑΓßΓó¿¿ ß ΓѼ,
  1627. ¬á¬ »«½∞º«óáΓѽ∞ óóѽ ¿σ: «íαáí«Γ¬á óó«ñ¡«ú« »«Γ«¬á  »«½¡«ßΓ∞ε  «ΓßπΓßΓóπÑΓ.
  1628. Äñ¡á¬«, ∩ñα« ñ«½ª¡« º¡áΓ∞, ¬«úñá óδ»«½¡¿Γ∞ óδºóá¡¡πε »«½∞º«óáΓѽѼ ß¿ßΓѼ¡πε
  1629. Σπ¡¬µ¿ε  read, »«ß¬«½∞¬π ß¿¼ó«½ ó«ºóαáΓá ¬áαÑΓ¬¿ Γαá¬ΓπÑΓß∩ ¬á¬ «íδτ¡δ⌐ óóÑ-
  1630. ñÑ¡¡δ⌐ ß¿¼ó«½. Ä¡« óδ»«½¡∩ÑΓ Σπ¡¬µ¿ε read »«ß½Ñ Γ«ú«, ¬á¬ ß ΓÑନ¡á½á  íπñÑΓ
  1631. óóÑñÑ¡«  ¼¿¡¿¼á½∞¡«Ñ τ¿ß½« ß¿¼ó«½«ó ¿½¿ »« »α«σ«ªñÑ¡¿¿ Σ¿¬ß¿α«óá¡¡«ú« »α«¼Ñ-
  1632. ªπΓ¬á óαѼѡ¿ «Γ ¼«¼Ñ¡Γá »«½πτÑ¡¿∩ ß ΓÑନ¡á½á  ½εí«ú«  ¡áí«αá  ß¿¼ó«½«ó.  é
  1633. »«ß½Ññ¡Ñ¼  ß½πτáÑ ∩ñα« σα«¡«¼ÑΓα¿απÑΓ óó«ñ ß¿¼ó«½«ó ß ΓÑନ¡á½á, »«¼ÑΘá∩ ºá-
  1634. »¿ß¿ ó Γáí½¿µπ «ΓóÑΓ¡δσ ß¿ú¡á½«ó (ú½áóá 8). Äíá ¬α¿ΓÑα¿∩ (¼¿¡¿¼á½∞¡«Ñ  τ¿ß½«
  1635. ß¿¼ó«½«ó  ¿  Σ¿¬ß¿α«óá¡¡δ⌐  »α«¼ÑªπΓ«¬  óαѼѡ¿)  ºáñáεΓß∩  ó ó맮óÑ Σπ¡¬µ¿¿
  1636. ioctl. è«úñá ß««ΓóÑΓßΓóπεΘ¿Ñ  ¬α¿ΓÑα¿¿  πñ«ó½ÑΓó«αÑ¡δ,  »α«úαἼᠠ«íαáí«Γ¬¿
  1637. »αÑαδóá¡¿⌐ ßΓ᫬«ó«ú« ¿¡ΓÑαΣÑ⌐ßá ó«º«í¡«ó½∩ÑΓ óδ»«½¡Ñ¡¿Ñ óßÑσ »α¿«ßΓá¡«ó½Ñ¡-
  1638. ¡δσ  »α«µÑßß«ó.  äαá⌐óÑα »ÑαÑßδ½áÑΓ óßÑ ß¿¼ó«½δ ¿º ß»¿ß¬á ñ½∩ σαá¡Ñ¡¿∩ ¡ÑßΓ-
  1639. απ¬Γπα¿α«óá¡¡δσ óó«ñ¡δσ ñá¡¡δσ ó ¬á¡«¡¿τÑ߬¿⌐ ß»¿ß«¬ ¿ óδ»«½¡∩ÑΓ ºá»α«ß »α«-
  1640. µÑßßá ¡á τΓÑ¡¿Ñ, ß½Ññπ∩ Γ«¼π ªÑ ßἫ¼π á½ú«α¿Γ¼π, τΓ« ¿ ó  ß½πτáÑ  αáí«Γδ  ó
  1641. ¬á¡«¡¿τÑ߬«¼  αѪ¿¼Ñ.  ÉѪ¿¼  íѺ «íαáí«Γ¬¿ ß¿¼ó«½«ó «ß«íÑ¡¡« óáªÑ¡ ó φ¬αá¡-
  1642. ¡«-«α¿Ñ¡Γ¿α«óá¡¡δσ »α¿½«ªÑ¡¿∩σ, Γᬿσ ¬á¬ φ¬αá¡¡δ⌐ αÑñá¬Γ«α  vi,  ¼¡«ú¿Ñ  ¿º
  1643. ¬«¼á¡ñ ¬«Γ«α«ú« ¡Ñ ºá¬á¡τ¿óáεΓß∩ ß¿¼ó«½«¼ ó«ºóαáΓá ¬áαÑΓ¬¿. ìá»α¿¼Ñα, ¬«¼á¡-
  1644. ñá dw πñá½∩ÑΓ ß½«ó« ó ΓѬπΘÑ⌐ »«º¿µ¿¿ ¬παß«αá.
  1645.     ìá  É¿ßπ¡¬Ñ  10.17  »α¿óÑñѡᠠ»α«úαá¼¼á, ¿ß»«½∞ºπεΘá∩ Σπ¡¬µ¿ε ioctl ñ½∩
  1646. ß«σαá¡Ñ¡¿∩ ΓѬπΘ¿σ πßΓᡫ󫬠ΓÑନ¡á½á ñ½∩ Σá⌐½á ß ñÑß¬α¿»Γ«α«¼ 0, τΓ« ß««Γ-
  1647. óÑΓßΓóπÑΓ º¡áτÑ¡¿ε ñÑß¬α¿»Γ«αá Σá⌐½á ßΓá¡ñáαΓ¡«ú« óó«ñá. öπ¡¬µ¿∩ ioctl ß ¬«-
  1648. ¼á¡ñ«⌐ TCGETA »α¿¬áºδóáÑΓ
  1649. ñαá⌐óÑαπ ¿ºó½Ñτ∞ πßΓᡫ󬿠¿ ß«σαá¡¿Γ∞ ¿σ ó ßΓαπ¬ΓπαÑ ß ¿¼Ñ¡Ñ¼ savetty ó áñ-
  1650. αÑß¡«¼ »α«ßΓαá¡ßΓóÑ ºáñáτ¿. ¥Γá ¬«¼á¡ñá τáßΓ« ¿ß»«½∞ºπÑΓß∩ ñ½∩  Γ«ú«,  τΓ«íδ
  1651. «»αÑñѽ¿Γ∞, ∩ó½∩ÑΓß∩ ½¿ Σá⌐½ ΓÑନ¡á½«¼ ¿½¿ ¡ÑΓ, »«ß¬«½∞¬π «¡á ¡¿τÑú« ¡Ñ ¿º-
  1652. ¼Ñ¡∩ÑΓ  ó ß¿ßΓѼÑ: Ñß½¿ «¡á ºáóÑαΦáÑΓß∩ ¡Ñπñáτ¡«, »α«µÑßßδ »αÑñ»«½áúáεΓ, τΓ«
  1653. Σá⌐½ ¡Ñ ∩ó½∩ÑΓß∩ ΓÑନ¡á½«¼. çñÑß∞ ªÑ,  »α«µÑßß  óΓ«α¿τ¡«  óδºδóáÑΓ  Σπ¡¬µ¿ε
  1654. ioctl ñ½∩ Γ«ú«, τΓ«íδ »ÑαÑóÑßΓ¿ ΓÑନ¡á½ ó αѪ¿¼ íѺ «íαáí«Γ¬¿: «¡ «Γ¬½ετáÑΓ
  1655. φσ«-ß«»α«ó«ªñÑ¡¿Ñ  óó«ñá ß¿¼ó«½«ó ¿ ú«Γ«ó¿Γß∩ ¬ óδ»«½¡Ñ¡¿ε «»Ñαᵿ⌐ τΓÑ¡¿∩ ß
  1656.  
  1657. ┌────────────────────────────────────────────────────────────────┐
  1658. │ #include      <signal.h>                                       │
  1659. │ #include      <termio.h>                                       │
  1660. │ struct termio savetty;                                         │
  1661. │ main()                                                         │
  1662. │ {                                                              │
  1663. │   extern sigcatch();                                           │
  1664. │   struct termio newtty;                                        │
  1665. │   int nrd;                                                     │
  1666. │   char buf[32];                                                │
  1667. │   signal(SIGINT,sigcatch);                                     │
  1668. │   if (ioctl(0,TCGETA,&savetty) == -1)                          │
  1669. │   {                                                            │
  1670. │      printf("ioctl ºáóÑαΦ¿½áß∞ ¡Ñπñáτ¡«: ¡ÑΓ ΓÑନ¡á½á\n");    │
  1671. │      exit();                                                   │
  1672. │   }                                                            │
  1673. │   newtty = savetty;                                            │
  1674.  
  1675.                                     316
  1676.  
  1677. │   newtty.c_lflag &= ~ICANON;/* óδσ«ñ ¿º ¬á¡«¡¿τÑ߬«ú« αѪ¿¼á */│
  1678. │   newtty.c_lflag &= ~ECHO;  /* «Γ¬½ετÑ¡¿Ñ φσ«-ß«»α«ó«ªñÑ¡¿∩*/  │
  1679. │   newtty.c_cc[VMIN] = 5;    /* ¼¿¡¿¼π¼ 5 ß¿¼ó«½«ó */           │
  1680. │   newtty.c_cc[VTIME] = 100; /* ¿¡ΓÑαóá½ 10 ßѬπ¡ñ */           │
  1681. │   if (ioctl(0,TCSETAF,&newtty) == -1)                          │
  1682. │   {                                                            │
  1683. │      printf("¡Ñ ¼«úπ »ÑαÑóÑßΓ¿ ΓÑα-½ ó αѪ¿¼ íѺ «íαáí«Γ¬¿\n");│
  1684. │      exit();                                                   │
  1685. │   }                                                            │
  1686. │   for(;;)                                                      │
  1687. │   {                                                            │
  1688. │      nrd = read(0,buf,sizeof(buf));                            │
  1689. │      buf[nrd] = 0;                                             │
  1690. │      printf("τΓÑ¡¿Ñ %d ß¿¼ó«½«ó '%s'\n",nrd,buf);              │
  1691. │   }                                                            │
  1692. │ }                                                              │
  1693. │ sigcatch()                                                     │
  1694. │ {                                                              │
  1695. │   ioctl(0,TCSETAF,&savetty);                                   │
  1696. │   exit();                                                      │
  1697. │ }                                                              │
  1698. └────────────────────────────────────────────────────────────────┘
  1699.  
  1700.   É¿ßπ¡«¬ 10.17. ÉѪ¿¼ íѺ «íαáí«Γ¬¿ - τΓÑ¡¿Ñ 5-ß¿¼ó«½∞¡δσ í½«¬«ó
  1701.  
  1702.  
  1703.  
  1704. ┌────────────────────────────────────────────────────────────────┐
  1705. │ #include <fcntl.h>                                             │
  1706. │                                                                │
  1707. │ main()                                                         │
  1708. │ {                                                              │
  1709. │    register int i,n;                                           │
  1710. │    int fd;                                                     │
  1711. │    char buf[256];                                              │
  1712. │                                                                │
  1713. │ /* «Γ¬αδΓ¿Ñ ΓÑନ¡á½á Γ«½∞¬« ñ½∩ τΓÑ¡¿∩ ß «»µ¿Ñ⌐ "no delay" */ │
  1714. │    if((fd = open("/dev/tty",O_RDONLY│O_NDELAY)) == -1)         │
  1715. │       exit();                                                  │
  1716. │                                                                │
  1717. │    n = 1;                                                      │
  1718. │    for(;;)       /* óßÑúñá */                                  │
  1719. │    {                                                           │
  1720. │       for(i = 0; i < n; i++)                                   │
  1721. │           ;                                                    │
  1722. │                                                                │
  1723. │       if(read(fd,buf,sizeof(buf)) > 0)                         │
  1724. │       {                                                        │
  1725. │           printf("τΓÑ¡¿Ñ ß ¡«¼Ñαá %d\n",n);                    │
  1726. │              n--;                                              │
  1727. │       }                                                        │
  1728. │       else                                                     │
  1729. │       /* ¡¿τÑú« ¡Ñ »α«τ¿Γá¡«; ó«ºóαáΓ óß½ÑñßΓó¿Ñ "no delay" */ │
  1730. │              n++;                                              │
  1731. │    }                                                           │
  1732. │ }                                                              │
  1733. └────────────────────────────────────────────────────────────────┘
  1734.  
  1735.                  É¿ßπ¡«¬ 10.18. Ä»α«ß ΓÑନ¡á½á
  1736.  
  1737.                                     317
  1738.  
  1739.  
  1740. ΓÑନ¡á½á »« »«½πτÑ¡¿¿ ß ΓÑନ¡á½á 5 ß¿¼ó«½«ó, ¬á¬ ¼¿¡¿¼π¼, ¿½¿ »« »α«σ«ªñÑ-
  1741. ¡¿¿ 10 ßѬπ¡ñ ß ¼«¼Ñ¡Γá óó«ñá »Ñαó«⌐ »«αµ¿¿ ß¿¼ó«½«ó. è«úñá »α«µÑßß »«½πτáÑΓ
  1742. ß¿ú¡á½ « »αÑαδóá¡¿¿, «¡ ßíαáßδóáÑΓ »Ñαó«¡áτá½∞¡δÑ »áαá¼ÑΓαδ ΓÑନ¡á½á ¿  ºá-
  1743. óÑαΦáÑΓß∩.
  1744.  
  1745.  
  1746.     E10.3.4 Ä»α«ß ΓÑନ¡á½áF
  1747.  
  1748.     ê¡«úñá  πñ«í¡«  »α«¿ºó«ñ¿Γ∞  «»α«ß  πßΓα«⌐ßΓóá, Γ« ÑßΓ∞ ßτ¿ΓδóáΓ∞ ß ¡Ñú«
  1749. ñá¡¡δÑ, Ñß½¿ «¡¿ ÑßΓ∞, ¿½¿ »α«ñ«½ªáΓ∞ óδ»«½¡∩Γ∞ «íδτ¡πε αáí«Γπ - ó »α«Γ¿ó¡«¼
  1750. ß½πτáÑ. Åα«úαἼᠡá É¿ßπ¡¬Ñ 10.18 ¿½½εßΓα¿απÑΓ φΓ«Γ ß½πτá⌐: »«ß½Ñ  «Γ¬αδΓ¿∩
  1751. ΓÑନ¡á½á  ß »áαá¼ÑΓα«¼ "no delay" (íѺ ºáñÑ᪬¿) »α«µÑßßδ, óÑñπΘ¿Ñ τΓÑ¡¿Ñ ß
  1752. ¡Ñú«, ¡Ñ »α¿«ßΓá¡«ó∩Γ ßó«Ñ óδ»«½¡Ñ¡¿Ñ ó ß½πτáÑ «ΓßπΓßΓó¿∩ ñá¡¡δσ,  á  óÑα¡πΓ
  1753. π»αáó½Ñ¡¿Ñ  ¡Ñ¼Ññ½Ñ¡¡« (ß¼. á½ú«α¿Γ¼ terminal_read, É¿ßπ¡«¬ 10.15). ¥Γ«Γ ¼Ñ-
  1754. Γ«ñ αáí«ΓáÑΓ ΓᬪÑ, Ñß½¿ »α«µÑßß ß½Ññ¿Γ ºá ¼¡«ªÑßΓó«¼  πßΓα«⌐ßΓó:  «¡  ¼«ªÑΓ
  1755. «Γ¬αδΓ∞  ¬áªñ«Ñ  πßΓα«⌐ßΓó«  ß »áαá¼ÑΓα«¼ "no delay" ¿ «»α«ß¿Γ∞ óßÑσ ¿º ¡¿σ,
  1756. «ª¿ñá∩ »«ßΓπ»½Ñ¡¿∩ ¿¡Σ«α¼áµ¿¿ ß ¬áªñ«ú«. Äñ¡á¬«, φëà¼ÑΓ«ñ αáßΓαáτ¿óáÑΓ óδ-
  1757. τ¿ß½¿Γѽ∞¡δÑ ¼«Θ¡«ßΓ¿ ß¿ßΓѼδ.
  1758.     é ß¿ßΓѼѠBSD ÑßΓ∞ ß¿ßΓѼ¡á∩ Σπ¡¬µ¿∩ select, »«ºó«½∩εΘá∩ »α«¿ºó«ñ¿Γ∞ «»-
  1759. α«ß πßΓα«⌐ßΓóá. æ¿¡Γá¬ß¿ß ó맮óá φΓ«⌐ Σπ¡¬µ¿¿:
  1760.  
  1761.     select(nfds,rfds,wfds,efds,timeout)
  1762.  
  1763. úñÑ nfds - ¬«½¿τÑßΓó« óδí¿αáѼδσ ñÑß¬α¿»Γ«α«ó Σá⌐½«ó, á rfds,  wfds  ¿  efds
  1764. π¬áºδóáεΓ  ¡á  ñó«¿τ¡δÑ ¼á߬¿, ¬«Γ«α묨 "óδí¿αáεΓ" ñÑß¬α¿»Γ«αδ «Γ¬αδΓδσ Σá⌐-
  1765. ½«ó. Æ« ÑßΓ∞, í¿Γ 1 << fd (ßñó¿ú ¡á 1 αáºα∩ñ ó½Ñó« º¡áτÑ¡¿∩ ñÑß¬α¿»Γ«αá Σá⌐-
  1766. ½á) ß««ΓóÑΓßΓóπÑΓ πßΓá¡«ó¬Ñ ¡á Γ«Γ ß½πτá⌐, Ñß½¿ »«½∞º«óáΓÑ½ε  ¡πª¡«  óδíαáΓ∞
  1767. φëàñÑß¬α¿»Γ«α Σá⌐½á. Åáαá¼ÑΓα timeout (Γá⌐¼-áπΓ) π¬áºδóáÑΓ, ¡á ¬á¬«Ñ óαѼ∩
  1768. ß½ÑñπÑΓ  »α¿«ßΓá¡«ó¿Γ∞ óδ»«½¡Ñ¡¿Ñ Σπ¡¬µ¿¿ select, «ª¿ñá∩ »«ßΓπ»½Ñ¡¿∩ ñá¡¡δσ,
  1769. ¡á»α¿¼Ñα; Ñß½¿ ñá¡¡δÑ »«ßΓπ»áεΓ ñ½∩ ½εíδσ ñÑß¬α¿»Γ«α«ó ¿ Γá⌐¼-áπΓ ¡Ñ  ºá¬«¡-
  1770. τ¿½ß∩, select ó«ºóαáΘáÑΓ π»αáó½Ñ¡¿Ñ, π¬áºδóá∩ ó ñó«¿τ¡δσ ¼á߬áσ, ¬á¬¿Ñ ñÑ߬-
  1771. α¿»Γ«αδ í뫨 óδíαá¡δ. ìá»α¿¼Ñα, Ñß½¿ »«½∞º«óáΓѽ∞ »«ªÑ½á½ »α¿«ßΓá¡«ó¿Γ∞ß∩ ñ«
  1772. ¼«¼Ñ¡Γá »«½πτÑ¡¿∩ ñá¡¡δσ »« ñÑß¬α¿»Γ«αá¼ 0, 1 ¿½¿ 2, »áαá¼ÑΓα rfds π¬áªÑΓ ¡á
  1773. ñó«¿τ¡πε  ¼á߬π  7;  ¬«úñá select ó«ºóαáΓ¿Γ π»αáó½Ñ¡¿Ñ, ñó«¿τ¡á∩ ¼á߬á íπñÑΓ
  1774. ºá¼Ñ¡Ñ¡á ¼á߬«⌐, π¬áºδóáεΘÑ⌐, »« ¬á¬¿¼ ¿º ñÑß¬α¿»Γ«α«ó ¿¼ÑεΓß∩ ú«Γ«óδÑ  ñá¡-
  1775. ¡δÑ.  äó«¿τ¡á∩ ¼á߬á wfds óδ»«½¡∩ÑΓ »«σ«ªπε Σπ¡¬µ¿ε ó «Γ¡«ΦÑ¡¿¿ ºá»¿ß¿ ñÑ߬-
  1776. α¿»Γ«α«ó, á ñó«¿τ¡á∩ ¼á߬á efds π¬áºδóáÑΓ  ¡á  ßπΘÑßΓó«óá¡¿Ñ  ¿ß¬½ετ¿Γѽ∞¡δσ
  1777. πß½«ó¿⌐, ßó∩ºá¡¡δσ ß ¬«¡¬αÑΓ¡δ¼¿ ñÑß¬α¿»Γ«αἿ, τΓ« íδóáÑΓ »«½Ñº¡« »α¿ αáí«-
  1778. ΓÑ ó ßÑΓ¿.
  1779.  
  1780.  
  1781.     E10.3.5 ìạáτÑ¡¿Ñ «»ÑαáΓ«α߬«ú« ΓÑନ¡á½áF
  1782.  
  1783.     Ä»ÑαáΓ«α߬¿⌐  ΓÑନ¡á½ - φΓ« ΓÑନ¡á½, ß ¬«Γ«α«ú« »«½∞º«óáΓѽ∞ αÑú¿ßΓα¿-
  1784. απÑΓß∩ ó ß¿ßΓѼÑ, «¡ π»αáó½∩ÑΓ »α«µÑßßἿ, ºá»πΘÑ¡¡δ¼¿ »«½∞º«óáΓѽѼ ß  ΓÑα-
  1785. ¼¿¡á½á.  è«úñá »α«µÑßß «Γ¬αδóáÑΓ ΓÑନ¡á½, ñαá⌐óÑα ΓÑନ¡á½á «Γ¬αδóáÑΓ ßΓα«-
  1786. ¬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß. àß½¿ »α«µÑßß ó«ºú½áó½∩ÑΓ úαπ»»π »α«µÑßß«ó ¬á¬ αѺπ½∞ΓáΓ óδ-
  1787. »«½¡Ñ¡¿∩ ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ setpgrp ¿ Ñß½¿ »α«µÑßß ¡Ñ ßó∩ºá¡ ß «ñ¡¿¼ ¿º  «»Ñ-
  1788. αáΓ«α߬¿σ ΓÑନ¡á½«ó, ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß ñѽáÑΓ «Γ¬αδóáѼδ⌐ ΓÑନ¡á½ «»Ñαá-
  1789. Γ«α߬¿¼. Ä¡ ß«σαá¡∩ÑΓ ßΓáαΦ¿⌐ ¿ ¼½áñΦ¿⌐ ¡«¼Ñαá πßΓα«⌐ßΓóá ñ½∩ Σá⌐½á ΓÑନ¡á-
  1790. ½á  ó  áñαÑß¡«¼ »α«ßΓαá¡ßΓóÑ, óδñѽѡ¡«¼ »α«µÑßßπ, á ¡«¼Ñα úαπ»»δ »α«µÑßß«ó,
  1791. ßó∩ºá¡¡«⌐ ß «Γ¬αδóáÑ¼δ¼ »α«µÑßß«¼, ó ßΓαπ¬ΓπαÑ ñá¡¡δσ ΓÑନ¡á½∞¡«ú«  ñαá⌐óÑ-
  1792. αá.  ÄΓ¬αδóáѼδ⌐  »α«µÑßß  ßΓá¡«ó¿Γß∩  π»αáó½∩εΘ¿¼ »α«µÑßß«¼, «íδτ¡« óσ«ñ¡δ¼
  1793. (¡áτá½∞¡δ¼) ¬«¼á¡ñ¡δ¼ »α«µÑßß«α«¼, τΓ« ¼δ πó¿ñ¿¼ ñá½ÑÑ.
  1794.     Ä»ÑαáΓ«α߬¿⌐ ΓÑନ¡á½ ¿úαáÑΓ ó᪡πε α«½∞  ó  «íαáí«Γ¬Ñ  ß¿ú¡á½«ó.  è«úñá
  1795. »«½∞º«óáΓѽ∞  ¡áª¿¼áÑΓ  ¬½áó¿Φ¿  "delete"  (πñá½Ñ¡¿∩), "break" (»αÑαδóá¡¿∩),
  1796. ßΓ¿αá¡¿∩ ¿½¿ óδσ«ñá, »α«úαἼᠫíαáí«Γ¬¿ »αÑαδóá¡¿⌐ ºáúαπªáÑΓ ßΓ᫬«óδ⌐  ¿¡-
  1797. ΓÑαΣÑ⌐ß,  ¬«Γ«αδ⌐  »«ßδ½áÑΓ  ß««ΓóÑΓßΓóπεΘ¿⌐ ß¿ú¡á½ óßѼ »α«µÑßßá¼ ó úαπ»»Ñ.
  1798.  
  1799.                                     318
  1800.  
  1801. Å«ñ«í¡« φΓ«¼π, ¬«úñá »«½∞º«óáΓѽ∞ "ºáó¿ßáÑΓ", »α«úαἼᠫíαáí«Γ¬¿ »αÑαδóá¡¿⌐
  1802. «Γ ΓÑନ¡á½á »«½πτáÑΓ ¿¡Σ«α¼áµ¿ε « "ºáó¿ßá¡¿¿" «Γ  á»»áαáΓπαδ,  ¿  ßΓ᫬«óδ⌐
  1803. ¿¡ΓÑαΣÑ⌐ß »«ßδ½áÑΓ ß««ΓóÑΓßΓóπεΘ¿⌐ ß¿ú¡á½ óßѼ »α«µÑßßá¼ ó úαπ»»Ñ. Æá¬¿¼ «í-
  1804. αẫ¼,  óßÑ  »α«µÑßßδ, ºá»πΘÑ¡¡δÑ ß ¬«¡¬αÑΓ¡«ú« ΓÑନ¡á½á, »«½πτáεΓ ß¿ú¡á½ «
  1805. "ºáó¿ßá¡¿¿"; αÑᬵ¿Ñ⌐ »« π¼«½τá¡¿ε ñ½∩ í«½∞Φ¿¡ßΓóá »α«µÑßß«ó íπñÑΓ óδσ«ñ  ¿º
  1806. »α«úαá¼¼δ  »« »«½πτÑ¡¿¿ ß¿ú¡á½á; φΓ« »«σ«ªÑ ¡á Γ«, ¬á¬ »α¿ ºáóÑαΦÑ¡¿¿ αáí«Γδ
  1807. »«½∞º«óáΓѽ∩ ß ΓÑନ¡á½«¼ ¿º ß¿ßΓѼδ πñá½∩εΓß∩ »«í«τ¡δÑ »α«µÑßßδ. Å«ß½Ñ  »«-
  1808. ß佬¿ ß¿ú¡á½á « "ºáó¿ßá¡¿¿" »α«úαἼᠫíαáí«Γ¬¿ »αÑαδóá¡¿⌐ «Γ ΓÑନ¡á½á αáº-
  1809. ΩÑñ¿¡∩ÑΓ ΓÑନ¡á½ ß úαπ»»«⌐ »α«µÑßß«ó, τΓ«íδ »α«µÑßßδ ¿º φΓ«⌐ úαπ»»δ ¡Ñ ¼«ú-
  1810. ½¿ í«½∞ΦÑ »«½πτáΓ∞ ß¿ú¡á½δ, ó«º¡¿¬áεΘ¿Ñ ¡á ΓÑନ¡á½Ñ.
  1811.  
  1812.  
  1813.     E10.3.6 äαá⌐óÑα ¬«ßóÑ¡¡«ú« ΓÑନ¡á½áF
  1814.  
  1815.     çáτáßΓπε  »α«µÑßßá¼  ¡Ñ«íσ«ñ¿¼« »α«τ¿ΓáΓ∞ ¿½ ºá»¿ßáΓ∞ ñá¡¡δÑ ¡Ñ»«ßαÑñßΓ-
  1816. óÑ¡¡« ¡á «»ÑαáΓ«α߬¿⌐ ΓÑନ¡á½, σ«Γ∩ ßΓá¡ñáαΓ¡δ⌐ óó«ñ ¿ óδó«ñ ¼«úπΓ íδΓ∞ »Ñ-
  1817. αѡạáτÑ¡δ ó ñαπú¿Ñ Σá⌐½δ. ìá»α¿¼Ñα, shell ¼«ªÑΓ »«ßδ½áΓ∞ ßα«τ¡δÑ ß««íΘÑ¡¿∩
  1818. ¡Ñ»«ßαÑñßΓóÑ¡¡« ¡á ΓÑନ¡á½, ¡Ñß¼«Γα∩ ¡á Γ«, τΓ« Ñú« ßΓá¡ñáαΓ¡δ⌐ Σá⌐½ óδó«ñá
  1819. ¿ ßΓá¡ñáαΓ¡δ⌐ Σá⌐½ «Φ¿í«¬, ó«º¼«ª¡«, »ÑαѡạáτÑ¡δ ó ñαπú«Ñ ¼ÑßΓ«. é óÑαß¿∩σ
  1820. ß¿ßΓѼδ UNIX »«ññÑনóáÑΓß∩ "¬«ßóÑ¡¡δ⌐" ñ«ßΓπ» ¬ ΓÑନ¡á½π τÑαѺ  Σá⌐½  πßΓ-
  1821. α«⌐ßΓóá  "/dev/tty",  ó  ¬«Γ«α«¼  ñ½∩ ¬áªñ«ú« »α«µÑßßá «»αÑñѽѡ π»αáó½∩εΘ¿⌐
  1822. («»ÑαáΓ«α߬¿⌐) ΓÑନ¡á½. Å«½∞º«óáΓѽ¿, »α«ΦÑñΦ¿Ñ  αÑú¿ßΓαáµ¿ε  ¡á  «Γñѽ∞¡δσ
  1823. ΓÑନ¡á½áσ,  ¼«úπΓ  «íαáΘáΓ∞ß∩  ¬  Σá⌐½π "/dev/tty", ¡« «¡¿ »«½πτáΓ ñ«ßΓπ» ¬
  1824. αáº¡δ¼ ΓÑନ¡á½á¼.
  1825.     æπΘÑßΓóπÑΓ ñóá «ß¡«ó¡δσ ß»«ß«íá »«¿ß¬á ∩ñα«¼ «»ÑαáΓ«α߬«ú« ΓÑନ¡á½á  »«
  1826. ¿¼Ñ¡¿  Σá⌐½á "/dev/tty". é«-»Ñαóδσ, ∩ñα« ¼«ªÑΓ ß»Ñµ¿á½∞¡« π¬áºáΓ∞ ¡«¼Ñα πßΓ-
  1827. α«⌐ßΓóá ñ½∩ Σá⌐½á ¬«ßóÑ¡¡«ú« ΓÑନ¡á½á ß «Γñѽ∞¡«⌐ Γ«τ¬«⌐  óσ«ñá  ó  Γáí½¿µπ
  1828. ¬½ετÑ⌐ πßΓα«⌐ßΓó »«ß¿¼ó«½∞¡«ú« óó«ñá-óδó«ñá. Åα¿ ºá»π߬Ѡ¬«ßóÑ¡¡«ú« ΓÑନ¡á-
  1829. ½á  ñαá⌐óÑα  φΓ«ú« ΓÑନ¡á½á »«½πτáÑΓ ßΓáαΦ¿⌐ ¿ ¼½áñΦ¿⌐ ¡«¼Ñαá «»ÑαáΓ«α߬«ú«
  1830. ΓÑନ¡á½á ¿º áñαÑß¡«ú« »α«ßΓαá¡ßΓóá, óδñѽѡ¡«ú« »α«µÑßßπ, ¿ ºá»π߬áÑΓ ñαá⌐-
  1831. óÑα αÑá½∞¡«ú« ΓÑନ¡á½á, ¿ß»«½∞ºπ∩ ñá¡¡δÑ Γáí½¿µδ  ¬½ετÑ⌐  πßΓα«⌐ßΓó  »«ß¿¼-
  1832. ó«½∞¡«ú«  óó«ñá-óδó«ñá. éΓ«α«⌐ ß»«ß«í, «íδτ¡« ¿ß»«½∞ºπѼδ⌐ ñ½∩ »«¿ß¬á «»Ñαá-
  1833. Γ«α߬«ú« ΓÑନ¡á½á »« ¿¼Ñ¡¿  "/dev/tty",  ßó∩ºá¡  ß  »α«óÑᬫ⌐  ß««ΓóÑΓßΓó¿∩
  1834. ßΓáαΦÑú«  ¡«¼Ñαá πßΓα«⌐ßΓóá ¡«¼Ñα𠬫ßóÑ¡¡«ú« ΓÑନ¡á½á »ÑαÑñ óδº«ó«¼ »α«µÑ-
  1835. ñπαδ open, «»αÑñѽ∩Ѽ«⌐ Γ¿»«¼ ñá¡¡«ú« ñαá⌐óÑαá. é ß½πτáÑ ß«ó»áñÑ¡¿∩  ¡«¼Ñα«ó
  1836. «ßó«í«ªñáÑΓß∩  ¿¡ñѬߠΣá⌐½á "/dev/tty", óδñѽ∩ÑΓß∩ ¿¡ñѬߠ«»ÑαáΓ«α߬«¼π ΓÑα-
  1837. ¼¿¡á½π, Γ«τ¬á óσ«ñá ó Γáí½¿µπ Σá⌐½«ó »ÑαÑπßΓá¡áó½¿óáÑΓß∩ Γá¬,  τΓ«íδ  π¬áºδ-
  1838. óáΓ∞ ¡á ¿¡ñѬߠ«»ÑαáΓ«α߬«ú« ΓÑନ¡á½á, ¿ óδºδóáÑΓß∩ »α«µÑñπαá open, »α¿¡áñ-
  1839. ½ÑªáΘá∩  ΓÑନ¡á½∞¡«¼π ñαá⌐óÑαπ. äÑß¬α¿»Γ«α Σá⌐½á, ó«ºóαáΘÑ¡¡δ⌐ »«ß½Ñ «Γ¬αδ-
  1840. Γ¿∩ Σá⌐½á "/dev/tty", π¬áºδóáÑΓ ¡Ñ»«ßαÑñßΓóÑ¡¡« ¡á «»ÑαáΓ«α߬¿⌐  ΓÑନ¡á½  ¿
  1841. Ñú« ñαá⌐óÑα.
  1842.  
  1843.  
  1844.     E10.3.7 éσ«ñ ó ß¿ßΓѼπF
  1845.  
  1846.     èᬠ»«¬áºá¡« ó ú½áóÑ 7, »α«µÑßß ¡áτá½∞¡«⌐ ºáúαπº¬¿, ¿¼ÑεΘ¿⌐ ¡«¼Ñα 1, óδ-
  1847. »«½¡∩ÑΓ  íÑ߬«¡Ñτ¡δ⌐  µ¿¬½  τΓÑ¡¿∩ ¿º Σá⌐½á "/etc/inittab" ¿¡ßΓαπ¬µ¿⌐ « Γ«¼,
  1848. τΓ« ¡πª¡« ñѽáΓ∞, Ñß½¿ ºáúαπªáѼá∩ ß¿ßΓѼᠫ»αÑñѽѡᠬᬠ"«ñ¡«»«½∞º«óáΓѽ∞-
  1849. ߬á∩" ¿½¿ "¼¡«ú«»«½∞º«óáΓѽ∞߬á∩". é ¼¡«ú«»«½∞º«óáΓѽ∞߬«¼ αѪ¿¼Ñ ßἫ⌐ »Ñα-
  1850. ó«⌐ «í∩ºá¡¡«ßΓ∞ε »α«µÑßßá ¡áτá½∞¡«⌐ ºáúαπº¬¿ ∩ó½∩ÑΓß∩ »αÑñ«ßΓáó½Ñ¡¿Ñ »«½∞º«-
  1851. óáΓѽ∩¼ ó«º¼«ª¡«ßΓ¿ αÑú¿ßΓα¿α«óáΓ∞ß∩ ó ß¿ßΓѼѠߠΓÑନ¡á½«ó (É¿ßπ¡«¬ 10.19).
  1852. Ä¡ »«α«ªñáÑΓ »α«µÑßßδ, ¿¼Ñ¡πѼδÑ getty-»α«µÑßßἿ («Γ "get tty"  -  »«½πτ¿Γ∞
  1853. ΓÑନ¡á½),  ¿  ß½Ññ¿Γ  ºá  ΓѼ, ¬á¬«⌐ ¿º »α«µÑßß«ó «Γ¬αδóáÑΓ ¬á¬«⌐ ΓÑନ¡á½;
  1854. ¬áªñδ⌐ getty-»α«µÑßß πßΓá¡áó½¿óáÑΓ ßó«ε úαπ»»π  »α«µÑßß«ó,  ¿ß»«½∞ºπ∩  ó맮ó
  1855. ß¿ßΓѼ¡«⌐  Σπ¡¬µ¿¿  setpgrp, «Γ¬αδóáÑΓ «Γñѽ∞¡πε ΓÑନ¡á½∞¡πε ½¿¡¿ε ¿ «íδτ¡«
  1856. »α¿«ßΓá¡áó½¿óáÑΓß∩ ó« óαѼ∩ óδ»«½¡Ñ¡¿∩ Σπ¡¬µ¿¿ open ñ« ΓÑσ »«α, »«¬á  ¼áΦ¿¡á
  1857. ¡Ñ  »«½πτ¿Γ á»»áαáΓ¡πε ßó∩º∞ ß ΓÑନ¡á½«¼. è«úñá Σπ¡¬µ¿∩ open ó«ºóαáΘáÑΓ π»-
  1858. αáó½Ñ¡¿Ñ, getty-»α«µÑßß ¿ß»«½¡∩ÑΓ »α«úαá¼¼π login (αÑú¿ßΓαᵿ¿  ó  ß¿ßΓѼÑ),
  1859. ¬«Γ«αá∩  ΓαÑíπÑΓ «Γ »«½∞º«óáΓѽÑ⌐, τΓ«íδ «¡¿ ¿ñÑ¡Γ¿Σ¿µ¿α«ó὿ ßÑí∩ π¬áºá¡¿Ñ¼
  1860.  
  1861.                                     319
  1862.  
  1863. αÑú¿ßΓαᵿ«¡¡«ú« ¿¼Ñ¡¿ ¿ »áα«½∩. àß½¿ »«½∞º«óáΓѽ∞ ºáαÑú¿ßΓα¿α«óá½ß∩  πß»ÑΦ-
  1864. ¡«,  »α«úαá¼¼á login ¡á¬«¡Ñµ ºá»π߬áÑΓ ¬«¼á¡ñ¡δ⌐ »α«µÑßß«α shell ¿ »«½∞º«óá-
  1865. Γѽ∞ »α¿ßΓπ»áÑΓ ¬ αáí«ΓÑ. ¥Γ«Γ ó맮ó shell'á ¿¼Ñ¡πÑΓß∩ "login shell" (αÑú¿ß-
  1866. Γαᵿ«¡¡δ⌐ shell, αÑú¿ßΓαᵿ«¡¡δ⌐ ¿¡ΓÑα»αÑΓáΓ«α ¬«¼á¡ñ). Åα«µÑßß,  ßó∩ºá¡¡δ⌐
  1867. ß  shell'«¼, ¿¼ÑÑàëàªÑ ¿ñÑ¡Γ¿Σ¿¬áΓ«α, τΓ« ¿ ¡áτá½∞¡δ⌐ getty-»α«µÑßß, »«φ-
  1868. Γ«¼π login shell ∩ó½∩ÑΓß∩ »α«µÑßß«¼, ó«ºú½áó½∩εΘ¿¼  úαπ»»π  »α«µÑßß«ó.  àß½¿
  1869. »«½∞º«óáΓѽ∞  ¡Ñ  ß¼«ú πß»ÑΦ¡« ºáαÑú¿ßΓα¿α«óáΓ∞ß∩, »α«úαá¼¼á αÑú¿ßΓαᵿ¿ ºá-
  1870. óÑαΦáÑΓß∩ τÑαѺ «»αÑñѽѡ¡δ⌐ »α«¼ÑªπΓ«¬ óαѼѡ¿,  ºá¬αδóá∩  «Γ¬αδΓπε  ΓÑନ-
  1871. ¡á½∞¡πε ½¿¡¿ε, á »α«µÑßß ¡áτá½∞¡«⌐ ºáúαπº¬¿ »«α«ªñáÑΓ ñ½∩ φΓ«⌐ ½¿¡¿¿ ß½Ññπε-
  1872. Θ¿⌐ getty-»α«µÑßß. Åα«µÑßß ¡áτá½∞¡«⌐ ºáúαπº¬¿ ñѽáÑΓ »áπºπ ñ« »«½πτÑ¡¿∩ ß¿ú-
  1873. ¡á½á «í «¬«¡τá¡¿¿ »«α«ªñÑ¡¡«ú« αá¡ÑÑ »α«µÑßßá. Å«ß½Ñ ó«º«í¡«ó½Ñ¡¿∩ αáí«Γδ «¡
  1874. óδ∩ß¡∩ÑΓ, íδ½ ½¿ »αѬαáΓ¿óΦ¿⌐ ßπΘÑßΓó«óá¡¿Ñ »α«µÑßß αÑú¿ßΓαᵿ«¡¡δ¼ shell'«¼
  1875. ¿  Ñß½¿  φΓ«  Γá¬,  »«α«ªñáÑΓ  ÑΘÑ «ñ¿¡ getty-»α«µÑßß, «Γ¬αδóáεΘ¿⌐ ΓÑନ¡á½,
  1876. ó¼ÑßΓ« »αѬαáΓ¿óΦÑú« ßπΘÑßΓó«óá¡¿Ñ.
  1877.  
  1878.     ┌────────────────────────────────────────────────────────────┐
  1879.     │ á½ú«α¿Γ¼ login       /* »α«µÑñπαá αÑú¿ßΓαᵿ¿ */           │
  1880.     │ {                                                          │
  1881.     │     ¿ß»«½¡∩ÑΓß∩ getty-»α«µÑßß:                             │
  1882.     │     πßΓá¡«ó¿Γ∞ úαπ»»π »α«µÑßß«ó (ó맮ó Σπ¡¬µ¿¿ setpgrp);   │
  1883.     │     «Γ¬αδΓ∞ ΓÑନ¡á½∞¡πε ½¿¡¿ε; /* »α¿«ßΓá¡«ó ñ« ºáóÑαΦÑ¡¿∩│
  1884.     │                                    «Γ¬αδΓ¿∩ */             │
  1885.     │     Ñß½¿ («Γ¬αδΓ¿Ñ ºáóÑαΦ¿½«ß∞ πß»ÑΦ¡«)                    │
  1886.     │     {                                                      │
  1887.     │         ¿ß»«½¡¿Γ∞ »α«úαá¼¼π αÑú¿ßΓαᵿ¿:                   │
  1888.     │         ºá»α«ß¿Γ∞ ¿¼∩ »«½∞º«óáΓѽ∩;                        │
  1889.     │         «Γ¬½ετ¿Γ∞ φσ«-ß«»α«ó«ªñÑ¡¿Ñ, ºá»α«ß¿Γ∞ »áα«½∞;     │
  1890.     │         Ñß½¿ (αÑú¿ßΓαᵿ∩ »α«Φ½á πß»ÑΦ¡«)                  │
  1891.     │         /* ¡á⌐ñÑ¡ ß««ΓóÑΓßΓóπεΘ¿⌐ »áα«½∞ ó /etc/passwd */  │
  1892.     │         {                                                  │
  1893.     │            »ÑαÑóÑßΓ¿ ΓÑନ¡á½ ó ¬á¡«¡¿τÑ߬¿⌐ αѪ¿¼ (ioctl);│
  1894.     │            ¿ß»«½¡¿Γ∞ shell;                                │
  1895.     │         }                                                  │
  1896.     │         ó »α«Γ¿ó¡«¼ ß½πτáÑ                                 │
  1897.     │            ßτ¿ΓáΓ∞ ¬«½¿τÑßΓó« »«»δΓ«¬ αÑú¿ßΓαᵿ¿, »δΓáΓ∞ß∩│
  1898.     │             ºáαÑú¿ßΓα¿α«óáΓ∞ß∩ ß¡«óá ñ« ñ«ßΓ¿ªÑ¡¿∩ «»αÑñÑ- │
  1899.     │             ½Ñ¡¡«⌐ Γ«τ¬¿;                                  │
  1900.     │     }                                                      │
  1901.     │ }                                                          │
  1902.     └────────────────────────────────────────────────────────────┘
  1903.  
  1904.                  É¿ßπ¡«¬ 10.19. Ç½ú«α¿Γ¼ αÑú¿ßΓαᵿ¿
  1905.  
  1906.  
  1907.  
  1908.     E10.4 ÅÄÆÄèêF
  1909.  
  1910.     æσѼá αÑ὿ºáµ¿¿ ñαá⌐óÑα«ó πßΓα«⌐ßΓó, σ«Γ∩ ¿ «ΓóÑτáÑΓ ºá½«ªÑ¡¡δ¼  ΓαÑí«-
  1911. óá¡¿∩¼,  ßΓαáñáÑΓ  ¡Ñ¬«Γ«α묨 ¡Ññ«ßΓáΓ¬á¼¿, ¬«Γ«αδÑ ß ú«ñἿ ßΓ὿ ºá¼ÑΓ¡ÑÑ.
  1912. ÉạδÑ ñαá⌐óÑαδ ¿¼ÑεΓ ΓÑ¡ñÑ¡µ¿ε ñπí½¿α«óáΓ∞ ßó«¿ Σπ¡¬µ¿¿, ó τáßΓ¡«ßΓ¿  ñαá⌐-
  1913. óÑαδ,  ¬«Γ«αδÑ  αÑ὿ºπεΓ ßÑΓÑóδÑ »α«Γ«¬«½δ ¿ ¬«Γ«αδÑ «íδτ¡« ó¬½ετáεΓ ó ßÑí∩
  1914. ßѬµ¿ε π»αáó½Ñ¡¿∩ πßΓα«⌐ßΓó«¼ ¿ ßѬµ¿ε »α«Γ«¬«½á. ìÑß¼«Γα∩ ¡á Γ«, τΓ« ßѬµ¿∩
  1915. »α«Γ«¬«½á ñ«½ª¡á íδΓ∞ «íΘÑ⌐ ñ½∩ óßÑσ ßÑΓÑóδσ πßΓα«⌐ßΓó, ¡á »αá¬Γ¿¬Ñ  φΓ«  ¡Ñ
  1916. Γá¬, »«ß¬«½∞¬π ∩ñα« ¡Ñ ¿¼ÑÑΓ áñѬóáΓ¡δσ ¼Ñσá¡¿º¼«ó ñ½∩ «íΘÑú« ¿ß»«½∞º«óá¡¿∩.
  1917. ìá»α¿¼Ñα,  ß¿¼ó«½∞¡δÑ ß»¿ß¬¿ ¼«ú½¿ íδ íδΓ∞ »«½Ñº¡δ¼¿ í½áú«ñáα∩ ßó«¿¼ ó«º¼«ª-
  1918. ¡«ßΓ∩¼ ó íπΣÑα¿ºáµ¿¿, ¡« «¡¿ ΓαÑíπεΓ í«½∞Φ¿σ ºáΓαáΓ αÑßπαß«ó ¡á »«ß¿¼ó«½∞¡πε
  1919. «íαáí«Γ¬π. Å«»δΓ¬¿ «í«⌐Γ¿ φëà¼Ñσá¡¿º¼, τΓ«íδ  »«óδß¿Γ∞  »α«¿ºó«ñ¿Γѽ∞¡«ßΓ∞
  1920. ß¿ßΓѼδ,  »α¿óѽ¿ ¬ ¡áαπΦÑ¡¿ε ¼«ñπ½∞¡«ßΓ¿ »«ñß¿ßΓѼδ π»αáó½Ñ¡¿∩ óó«ñ«¼-óδó«-
  1921. ñ«¼. ÄΓßπΓßΓó¿Ñ «íΘ¡«ßΓ¿ ¡á  πα«ó¡Ñ  ñαá⌐óÑα«ó  αáß»α«ßΓαá¡∩ÑΓß∩  ó»½«Γ∞  ñ«
  1922.  
  1923.                                     320
  1924.  
  1925. πα«ó¡∩  ¬«¼á¡ñ »«½∞º«óáΓѽ∩, ¡á ¬«Γ«α«¼ ¡Ñ߬«½∞¬« ¬«¼á¡ñ ¼«úπΓ óδ»«½¡∩Γ∞ «í-
  1926. Θ¿Ñ ½«ú¿τÑ߬¿Ñ Σπ¡¬µ¿¿, ¡« αẽ¿τ¡δ¼¿ ßαÑñßΓóἿ. àΘÑ «ñ¿¡ ¡Ññ«ßΓáΓ«¬  »«ßΓ-
  1927. α«Ñ¡¿∩  ñαá⌐óÑα«ó ºá¬½ετáÑΓß∩ ó Γ«¼, τΓ« ßÑΓÑóδÑ »α«Γ«¬«½δ ΓαÑíπεΓ ¿ß»«½∞º«-
  1928. óá¡¿∩ ßαÑñßΓóá, »«ñ«í¡«ú« ßΓ᫬«ó«¼π ¿¡ΓÑαΣÑ⌐ßπ, ó ¬«Γ«α«¼ ¬áªñá∩ ñ¿ßµ¿»½¿¡á
  1929. αÑ὿ºπÑΓ «ñ¡π ¿º τáßΓÑ⌐ »α«Γ«¬«½á ¿ ß«ßΓáó¡δÑ τáßΓ¿ ß«Ññ¿¡∩εΓß∩ ú¿í¬¿¼  «í-
  1930. αẫ¼. Äñ¡á¬«, ß«Ññ¿¡¿Γ∞ Γαáñ¿µ¿«¡¡δÑ ßΓ᫬«óδÑ ¿¡ΓÑαΣÑ⌐ßδ ñ«ó«½∞¡« Γαπñ¡«.
  1931.     É¿τ¿  ¡Ññáó¡«  αáºαáí«Γá½ ßσѼπ, »«½πτ¿óΦπε ¡áºóá¡¿Ñ "»«Γ«¬¿" (streams),
  1932. ñ½∩ »«óδΦÑ¡¿∩ ¼«ñπ½∞¡«ßΓ¿ ¿ ú¿í¬«ßΓ¿ »«ñß¿ßΓÑ¼δ  π»αáó½Ñ¡¿∩  óó«ñ«¼-óδó«ñ«¼.
  1933. 쿪Ñß½ÑñπεΘÑÑ «»¿ßá¡¿Ñ «ß¡«óδóáÑΓß∩ ¡á Ñú« αáí«ΓÑ [Ritchie 84b], σ«Γ∩ αÑ὿-
  1934. ºáµ¿∩ φΓ«⌐ ßσѼδ ó óÑαß¿¿ V ß½Ñú¬á «Γ½¿τáÑΓß∩. Å«Γ«¬ »αÑñßΓáó½∩ÑΓ ß«í«⌐ »«½-
  1935. ¡«ñπ»½Ñ¬ß¡πε ßó∩º∞ ¼Ñªñπ »α«µÑßß«¼ ¿ ñαá⌐óÑα«¼ πßΓα«⌐ßΓóá. Ä¡ ß«ßΓ«¿Γ ¿º ß«-
  1936. ó«¬π»¡«ßΓ¿  ½¿¡Ñ⌐¡«  ßó∩ºá¡¡δσ  ¼Ñªñπ  ß«í«⌐ »áα «τÑαÑñÑ⌐, ¬áªñá∩ ¿º ¬«Γ«αδσ
  1937. (»áαá) ó¬½ετáÑΓ «ñ¡π «τÑαÑñ∞ ñ½∩ óó«ñá ¿ ñαπúπε - ñ½∩ óδó«ñá. è«úñá  »α«µÑßß
  1938. ºá»¿ßδóáÑΓ  ñá¡¡δÑ ó »«Γ«¬, ∩ñα« »«ßδ½áÑΓ ñá¡¡δÑ ó «τÑαÑñ¿ ñ½∩ óδó«ñá; ¬«úñá
  1939. ñαá⌐óÑα πßΓα«⌐ßΓóá »«½πτáÑΓ óσ«ñ¡δÑ ñá¡¡δÑ, «¡ »ÑαÑßδ½áÑΓ ¿σ ó  «τÑαÑñ¿  ñ½∩
  1940. óó«ñá  ¬  »α«µÑßßπ, »α«¿ºó«ñ∩ΘѼπ τΓÑ¡¿Ñ. ÄτÑαÑñ¿ «í¼Ñ¡¿óáεΓß∩ ß««íΘÑ¡¿∩¼¿ ß
  1941. ß«ßÑñ¡¿¼¿ «τÑαÑñ∩¼¿, ¿ß»«½∞ºπ∩ τÑΓ¬«  «»αÑñѽѡ¡δ⌐  ¿¡ΓÑαΣÑ⌐ß.  èáªñá∩  »áαá
  1942. «τÑαÑñÑ⌐  ßó∩ºá¡á  ß «ñ¡¿¼ ¿º ¼«ñπ½Ñ⌐ ∩ñαá, Γᬿ¼ ¬á¬ ñαá⌐óÑα, ßΓ᫬«óδ⌐ ¿¡-
  1943. ΓÑαΣÑ⌐ß ¿½¿ »α«Γ«¬«½, ¿ ¼«ñπ½¿ ∩ñαá αáí«ΓáεΓ ß ñá¡¡δ¼¿, »α«ΦÑñΦ¿¼¿ τÑαѺ ß«-
  1944. «ΓóÑΓßΓóπεΘ¿Ñ «τÑαÑñ¿.
  1945.     èáªñá∩ «τÑαÑñ∞ »αÑñßΓáó½∩ÑΓ ß«í«⌐ ßΓαπ¬Γπαπ ñá¡¡δσ, ß«ßΓ«∩Θπε ¿º ß½Ññπε-
  1946. Θ¿σ φ½Ñ¼Ñ¡Γ«ó:
  1947.   * »α«µÑñπαδ «Γ¬αδΓ¿∩, óδºδóáѼ«⌐ ó«  óαѼ∩  óδ»«½¡Ñ¡¿∩  ß¿ßΓѼ¡«⌐  Σπ¡¬µ¿¿
  1948.     open
  1949.   *  »α«µÑñπαδ  ºá¬αδΓ¿∩,  óδºδóáѼ«⌐  ó« óαѼ∩ óδ»«½¡Ñ¡¿∩ ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿
  1950.     close
  1951.   * »α«µÑñπαδ "óδó«ñá", óδºδóáѼ«⌐ ñ½∩ »ÑαÑñáτ¿ ß««íΘÑ¡¿∩ ó «τÑαÑñ∞
  1952.   * »α«µÑñπαδ "«íß½πª¿óá¡¿∩", óδºδóáѼ«⌐, ¬«úñá «τÑαÑñ∞ ºá»½á¡¿α«óá¡á ¬  ¿ß-
  1953.     »«½¡Ñ¡¿ε
  1954.   * π¬áºáΓѽ∩ ¡á ß½ÑñπεΘπε «τÑαÑñ∞ ó »«Γ«¬Ñ
  1955.   * π¬áºáΓѽ∩ ¡á ß»¿ß«¬ ß««íΘÑ¡¿⌐, «ª¿ñáεΘ¿σ «íß½πª¿óá¡¿∩
  1956.   *  π¬áºáΓѽ∩ ¡á ó¡πΓαÑ¡¡εε ßΓαπ¬Γπαπ ñá¡¡δσ, ß »«¼«Θ∞ε ¬«Γ«α«⌐ »«ññÑনóá-
  1957.     ÑΓß∩ αáí«τÑÑ ß«ßΓ«∩¡¿Ñ «τÑαÑñ¿
  1958.   * Σ½áú«ó, á ΓᬪѠóÑασ¡Ñ⌐ ¿ ¡¿ª¡Ñ⌐ «Γ¼ÑΓ«¬,  ¿ß»«½∞ºπѼδσ  ñ½∩  π»αáó½Ñ¡¿∩
  1959.     »«Γ«¬á¼¿ ñá¡¡δσ, ñ¿ß»ÑΓτÑα¿ºáµ¿¿ ¿ »«ññÑαªá¡¿∩ αáí«τÑú« ß«ßΓ«∩¡¿∩ «τÑαÑ-
  1960.     ñ¿.
  1961.     ƒñα« óδñѽ∩ÑΓ »áαδ «τÑαÑñÑ⌐, ß«ßÑñßΓóπεΘ¿Ñ ó »á¼∩Γ¿; ß½Ññ«óáΓѽ∞¡«, «τÑ-
  1962. αÑñ∞ ½Ñú¬« ¼«ªÑΓ «Γδ߬áΓ∞ ßó«Ñú« »áαΓ¡Ñαá »« »áαÑ.
  1963.  
  1964.                                                      ┌──────────┐
  1965.                                                      │ ê¡ñѬߠ  │
  1966.                              ┌───────────────────────┤  Σá⌐½á   │
  1967.                              │                       │πßΓα«⌐ßΓóá│
  1968.                              v                       └──────────┘
  1969.                 ┌────────────┬───────────┐
  1970.     çáú«½«ó«¬   │  ÄτÑαÑñ∞   │  ÄτÑαÑñ∞  │
  1971.      »«Γ«¬á     │ ñ½∩ óδó«ñá │ ñ½∩ óó«ñá │
  1972.                 └──────┬─────┴───────────┘
  1973.                        │           ^
  1974.                        v           │
  1975.                 ┌────────────┬─────┴─────┐
  1976.      äαá⌐óÑα    │  ÄτÑαÑñ∞   │  ÄτÑαÑñ∞  │∙∙∙∙∙∙∙ »áαá «τÑαÑñÑ⌐
  1977.                 │ ñ½∩ óδó«ñá │ ñ½∩ óó«ñá │
  1978.                 └────────────┴───────────┘
  1979.  
  1980.                 É¿ßπ¡«¬ 10.20. Å«Γ«¬ »«ß½Ñ «Γ¬αδΓ¿∩
  1981.  
  1982.  
  1983.     ôßΓα«⌐ßΓó« ß »«Γ«¬«óδ¼ ñαá⌐óÑα«¼ ∩ó½∩ÑΓß∩ πßΓα«⌐ßΓó«¼ »«ß¿¼ó«½∞¡«ú« óó«-
  1984.  
  1985.                                     321
  1986.  
  1987. ñá-óδó«ñá; «¡« ¿¼ÑÑΓ ó Γáí½¿µÑ ¬½ετÑ⌐ πßΓα«⌐ßΓó ß««ΓóÑΓßΓóπεΘÑú« Γ¿»á ß»Ñµ¿-
  1988. á½∞¡«Ñ »«½Ñ, ¬«Γ«α«Ñ π¬áºδóáÑΓ ¡á ßΓαπ¬Γπαπ ¿¡¿µ¿á½¿ºáµ¿¿ »«Γ«¬á, ß«ñÑαªáΘπε
  1989. áñαÑßá  »α«µÑñπα,  á  ΓᬪѠóÑασ¡εε ¿ ¡¿ª¡εε «Γ¼ÑΓ¬¿, π»«¼∩¡πΓδÑ óδΦÑ. è«úñá
  1990. ∩ñα« óδ»«½¡∩ÑΓ ß¿ßΓѼ¡πε Σπ¡¬µ¿ε open ¿ «í¡áαπª¿óáÑΓ,  τΓ«  Σá⌐½  πßΓα«⌐ßΓóá
  1991. ¿¼ÑÑΓ Γ¿» "߻ѵ¿á½∞¡δ⌐ ß¿¼ó«½∞¡δ⌐", «¡« »α«óÑα∩ÑΓ ¡á½¿τ¿Ñ ¡«ó«ú« »«½∩ ó Γáí-
  1992. ½¿µÑ ¬½ετÑ⌐ πßΓα«⌐ßΓó »«ß¿¼ó«½∞¡«ú« óó«ñá-óδó«ñá. àß½¿ ó Γáí½¿µÑ «ΓßπΓßΓóπÑΓ
  1993. ß««ΓóÑΓßΓóπεΘá∩ Γ«τ¬á óσ«ñá, Γ« ñαá⌐óÑα ¡Ñ ∩ó½∩ÑΓß∩ »«Γ«¬«óδ¼, ¿ ∩ñα« óδ»«½-
  1994. ¡∩ÑΓ  »α«µÑñπαπ,  «íδτ¡πε  ñ½∩ πßΓα«⌐ßΓó »«ß¿¼ó«½∞¡«ú« óó«ñá-óδó«ñá. Äñ¡á¬«,
  1995. »α¿ »Ñαó«¼ ªÑ «Γ¬αδΓ¿¿ »«Γ«¬«ó«ú« ñαá⌐óÑαá ∩ñα« óδñѽ∩ÑΓ ñóÑ »áαδ «τÑαÑñÑ⌐ -
  1996. «ñ¡π ñ½∩ ºáú«½«ó¬á »«Γ«¬á ¿ ñαπúπε ñ½∩ ñαá⌐óÑαá. ô óßÑσ «Γ¬αδΓδσ »«Γ«¬«ó ¼«-
  1997. ñπ½∞ ºáú«½«ó¬á ¿¼ÑÑΓ ¿ñÑ¡Γ¿τ¡πε ßΓαπ¬Γπαπ: «¡ ß«ñÑαª¿Γ «íΘπε »α«µÑñπαπ  "óδ-
  1998. ó«ñá" ¿ «íΘπε »α«µÑñπαπ "«íß½πª¿óá¡¿∩" ¿ ¿¼ÑÑΓ ¿¡ΓÑαΣÑ⌐ß ß ¼«ñπ½∩¼¿ ∩ñαá í«-
  1999. ½ÑÑ  óδß«¬«ú« πα«ó¡∩, óδ»«½¡∩εΘ¿¼¿ Σπ¡¬µ¿¿ read, write ¿ ioctl. ƒñα« ¿¡¿µ¿á-
  2000. ½¿º¿απÑΓ ßΓαπ¬Γπαπ «τÑαÑñÑ⌐ ñαá⌐óÑαá, ¡áº¡áτá∩  º¡áτÑ¡¿∩  π¬áºáΓѽ∩¼  ¬áªñ«⌐
  2001. «τÑαÑñ¿  ¿ ¬«»¿απ∩ áñαÑßá »α«µÑñπα ñαá⌐óÑαá ¿º ßΓαπ¬Γπαδ ¿¡¿µ¿á½¿ºáµ¿¿ ñαá⌐-
  2002. óÑαá, ¿ ºá»π߬áÑΓ »α«µÑñπαπ «Γ¬αδΓ¿∩. Åα«µÑñπαá «Γ¬αδΓ¿∩ ñαá⌐óÑαá  óδ»«½¡∩ÑΓ
  2003. «íδτ¡πε  ¿¡¿µ¿á½¿ºáµ¿ε,  ¡«  »α¿  φΓ«¼ ß«σαá¡∩ÑΓ ¿¡Σ«α¼áµ¿ε, ¡Ñ«íσ«ñ¿¼πε ñ½∩
  2004. »«óΓ«α¡«ú« «íαáΘÑ¡¿∩ ¬ áßß«µ¿¿α«óá¡¡«⌐ ß φΓ«⌐ »α«µÑñπα«⌐  «τÑαÑñ¿.  ìᬫ¡Ñµ,
  2005. ∩ñα«  «Γó«ñ¿Γ  ß»Ñµ¿á½∞¡δ⌐  π¬áºáΓѽ∞ ó ¬«»¿¿ ¿¡ñѬßá ó »á¼∩Γ¿ ñ½∩ ßß佬¿ ¡á
  2006. ºáú«½«ó«¬ »«Γ«¬á (É¿ßπ¡«¬ 10.20). è«úñá ÑΘÑ «ñ¿¡ »α«µÑßß «Γ¬αδóáÑΓ πßΓα«⌐ßΓ-
  2007. ó«, ∩ñα« «í¡áαπª¿óáÑΓ ¡áº¡áτÑ¡¡δ⌐ αá¡ÑÑ »«Γ«¬ ß »«¼«Θ∞ε  φΓ«ú«  π¬áºáΓѽ∩  ¿
  2008. ºá»π߬áÑΓ »α«µÑñπαπ «Γ¬αδΓ¿∩ ñ½∩ óßÑσ ¼«ñπ½Ñ⌐ »«Γ«¬á.
  2009.     î«ñπ½¿  »«ññÑনóáεΓ  ßó∩º∞  ß« ßó«¿¼¿ ß«ßÑñ∩¼¿ »« »«Γ«¬π »πΓѼ »ÑαÑñáτ¿
  2010. ß««íΘÑ¡¿⌐. æ««íΘÑ¡¿Ñ ß«ßΓ«¿Γ ¿º ß»¿ß¬á ºáú«½«ó¬«ó í½«¬«ó, ß«ñÑαªáΘ¿σ  ¿¡Σ«α-
  2011. ¼áµ¿ε  ß««íΘÑ¡¿∩; ¬áªñδ⌐ ºáú«½«ó«¬ í½«¬á ß«ñÑαª¿Γ ßß佬π ¡á ¼ÑßΓ« αáß»«½«ªÑ-
  2012. ¡¿∩ ¡áτá½á ¿ ¬«¡µá ¿¡Σ«α¼áµ¿¿ í½«¬á. æπΘÑßΓóπÑΓ ñóá Γ¿»á ß««íΘÑ¡¿⌐ -  π»αáó-
  2013. ½∩εΘÑÑ  ¿  ¿¡Σ«α¼áµ¿«¡¡«Ñ, ¬«Γ«αδÑ «»αÑñѽ∩εΓß∩ π¬áºáΓѽ∩¼¿ Γ¿»á ó ºáú«½«ó¬Ñ
  2014. ß««íΘÑ¡¿∩. ô»αáó½∩εΘ¿Ñ ß««íΘÑ¡¿∩ ¼«úπΓ íδΓ∞ αѺπ½∞ΓáΓ«¼ óδ»«½¡Ñ¡¿∩ ß¿ßΓѼ¡«⌐
  2015. Σπ¡¬µ¿¿ ioctl ¿½¿ αѺπ½∞ΓáΓ«¼ «ß«íδσ πß½«ó¿⌐, Γᬿσ ¬á¬ ºáó¿ßá¡¿Ñ ΓÑନ¡á½á,
  2016. á ¿¡Σ«α¼áµ¿«¡¡δÑ ß««íΘÑ¡¿∩ ¼«úπΓ ó«º¡¿¬áΓ∞ ó αѺπ½∞ΓáΓÑ óδ»«½¡Ñ¡¿∩ ß¿ßΓѼ¡«⌐
  2017. Σπ¡¬µ¿¿ write ¿½¿ ó αѺπ½∞ΓáΓÑ »«ßΓπ»½Ñ¡¿∩ ñá¡¡δσ «Γ πßΓα«⌐ßΓóá.
  2018.  
  2019.       æ««íΘÑ¡¿Ñ 1          æ««íΘÑ¡¿Ñ 2         æ««íΘÑ¡¿Ñ 3
  2020.       ┌─────────┐          ┌─────────┐         ┌─────────┐
  2021.       │  ü½«¬   ├─────────>│         ├────────>│         │
  2022.       └────┬────┘          └─────────┘         └────┬────┘
  2023.            v                                        v
  2024.       ┌─────────┐                              ┌─────────┐
  2025.       │         │                              │         │
  2026.       └────┬────┘                              └─────────┘
  2027.            v
  2028.       ┌─────────┐
  2029.       │         │
  2030.       └─────────┘
  2031.  
  2032.                  É¿ßπ¡«¬ 10.21. æ««íΘÑ¡¿∩ ó »«Γ«¬áσ
  2033.  
  2034.  
  2035.     è«úñá »α«µÑßß »α«¿ºó«ñ¿Γ ºá»¿ß∞ ó »«Γ«¬, ∩ñα« ¬«»¿απÑΓ ñá¡¡δÑ ¿º  áñαÑß-
  2036. ¡«ú« »α«ßΓαá¡ßΓóá ºáñáτ¿ ó í½«¬¿ ß««íΘÑ¡¿∩, ¬«Γ«αδÑ óδñѽ∩εΓß∩ ¼«ñπ½Ñ¼ ºáú«-
  2037. ½«ó¬á »«Γ«¬á. î«ñπ½∞ ºáú«½«ó¬á »«Γ«¬á ºá»π߬áÑΓ »α«µÑñπαπ "óδó«ñá" ñ½∩ ¼«ñπ-
  2038. ½∩  ß½ÑñπεΘÑ⌐ «τÑαÑñ¿, ¬«Γ«αá∩ «íαáíáΓδóáÑΓ ß««íΘÑ¡¿Ñ, ¡Ñºá¼Ññ½¿Γѽ∞¡« »ÑαÑ-
  2039. ñáÑΓ Ñú« ó ß½ÑñπεΘπε «τÑαÑñ∞ ¿½¿ ßΓáó¿Γ ó φΓπ ªÑ «τÑαÑñ∞ ñ½∩ »«ß½ÑñπεΘÑ⌐ «í-
  2040. αáí«Γ¬¿. é »«ß½Ññ¡Ñ¼ ß½πτáÑ ¼«ñπ½∞ ßó∩ºδóáÑΓ ºáú«½«ó¬¿  í½«¬«ó  ß««íΘÑ¡¿∩  ó
  2041. ß»¿ß«¬ ß π¬áºáΓѽ∩¼¿, Σ«α¼¿απ∩ ñóπ¡á»αáó½Ñ¡¡δ⌐ ß»¿ß«¬ (É¿ßπ¡«¬ 10.21). çáΓѼ
  2042. «¡  πßΓá¡áó½¿óáÑΓ  ó ßΓαπ¬ΓπαÑ ñá¡¡δσ «τÑαÑñ¿ Σ½áú, »«¬áºδóá∩ ΓѼ ßá¼δ¼, τΓ«
  2043. ¿¼ÑεΓß∩ ñá¡¡δÑ ñ½∩ «íαáí«Γ¬¿, ¿ »½á¡¿απÑΓ ß«íßΓóÑ¡¡«Ñ  «íß½πª¿óá¡¿Ñ.  î«ñπ½∞
  2044. ó¬½ετáÑΓ «τÑαÑñ∞ ó ß»¿ß«¬ «τÑαÑñÑ⌐, ΓαÑíπεΘ¿σ «íß½πª¿óá¡¿∩ ¿ ºá»π߬áÑΓ ¼Ñσá-
  2045. ¡¿º¼  ñ¿ß»ÑΓτÑα¿ºáµ¿¿; »½á¡¿α«óΘ¿¬ (ñ¿ß»ÑΓτÑα) óδºδóáÑΓ »α«µÑñπαδ «íß½πª¿óá-
  2046.  
  2047.                                     322
  2048.  
  2049. ¡¿∩ ñ½∩ ¬áªñ«⌐ «τÑαÑñ¿ ó ß»¿ß¬Ñ. ƒñα« ¼«ªÑΓ »½á¡¿α«óáΓ∞ «íß½πª¿óá¡¿Ñ ¼«ñπ½Ñ⌐
  2050. »« »α«úαá¼¼¡«¼π »αÑαδóá¡¿ε, »«ñ«í¡« Γ«¼π, ¬á¬ «¡« óδºδóáÑΓ Σπ¡¬µ¿¿ ó Γáí½¿µÑ
  2051. «ΓóÑΓ¡δσ ß¿ú¡á½«ó (ß¼. ú½áóπ 8); «íαáí«Γτ¿¬ »α«úαá¼¼¡δσ »αÑαδóá¡¿⌐  óδºδóáÑΓ
  2052. ¿¡ñ¿ó¿ñπá½∞¡δÑ »α«µÑñπαδ «íß½πª¿óá¡¿∩.
  2053.                                                      ┌──────────┐
  2054.                                                      │ ê¡ñѬߠ  │
  2055.                              ┌───────────────────────┤  Σá⌐½á   │
  2056.                              │                       │πßΓα«⌐ßΓóá│
  2057.                              v                       └──────────┘
  2058.                 ┌────────────┬───────────┐
  2059.     çáú«½«ó«¬   │  ÄτÑαÑñ∞   │  ÄτÑαÑñ∞  │
  2060.      »«Γ«¬á     │ ñ½∩ óδó«ñá │ ñ½∩ óó«ñá │
  2061.                 └──────┬─────┴───────────┘
  2062.                        │           ^
  2063.                        │           │
  2064.                        v           │
  2065.                 ┌────────────┬───────────┐
  2066.     æΓ᫬«óδ⌐   │  ÄτÑαÑñ∞   │  ÄτÑαÑñ∞  │
  2067.     ¿¡ΓÑαΣÑ⌐ß   │ ñ½∩ óδó«ñá │ ñ½∩ óó«ñá │
  2068.                 └──────┬─────┴───────────┘
  2069.                        │           ^
  2070.                        │           │
  2071.                        v           │
  2072.                 ┌────────────┬─────┴─────┐
  2073.    ÆÑନ¡á½∞¡δ⌐ │  ÄτÑαÑñ∞   │  ÄτÑαÑñ∞  │
  2074.      ñαá⌐óÑα    │ ñ½∩ óδó«ñá │ ñ½∩ óó«ñá │
  2075.                 └────────────┴───────────┘
  2076.  
  2077.           É¿ßπ¡«¬ 10.22. Åα«ñó¿ªÑ¡¿Ñ ¼«ñπ½∩ ¬ »«Γ«¬π
  2078.  
  2079.  
  2080.     Åα«µÑßßδ  ¼«úπΓ  "»α«ñó¿úáΓ∞" ¼«ñπ½¿ ¬ «Γ¬αδΓ«¼π »«Γ«¬π, ¿ß»«½∞ºπ∩ ó맮ó
  2081. ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ ioctl. ƒñα« »«¼ÑΘáÑΓ óδñó¿¡πΓδ⌐ ¼«ñπ½∞ ßαáºπ »«ñ  ºáú«½«ó-
  2082. ¬«¼ »«Γ«¬á ¿ ßó∩ºδóáÑΓ π¬áºáΓѽ¿ «τÑαÑñ¿ Γᬿ¼ «íαẫ¼, τΓ«íδ ß«σαá¡¿Γ∞ ñóπ-
  2083. ¡á»αáó½Ñ¡¡πε  ßΓαπ¬Γπαπ ß»¿ß¬á. î«ñπ½¿, αáß»«½«ªÑ¡¡δÑ ó »«Γ«¬Ñ ¡¿ªÑ, ¡Ñ íÑß-
  2084. »«¬«∩Γß∩ « Γ«¼, ßó∩ºá¡δ ½¿ «¡¿ ß ºáú«½«ó¬«¼ »«Γ«¬á ¿½¿ ªÑ ß óδñó¿¡πΓδ¼ ¼«ñπ-
  2085. ½Ñ¼: ¿¡ΓÑαΣÑ⌐ß«¼ óδßΓπ»áÑΓ »α«µÑñπαá "óδó«ñá" ß½ÑñπεΘÑ⌐ «τÑαÑñ¿ ó »«Γ«¬Ñ;  á
  2086. ß½ÑñπεΘá∩  «τÑαÑñ∞ »α¿¡áñ½Ñª¿Γ Γ«½∞¬« τΓ« óδñó¿¡πΓ«¼π ¼«ñπ½ε. ìá»α¿¼Ñα, »α«-
  2087. µÑßß ¼«ªÑΓ óδñó¿¡πΓ∞ ¼«ñπ½∞  ßΓ᫬«ó«ú«  ¿¡ΓÑαΣÑ⌐ßá  ó  »«Γ«¬  ΓÑନ¡á½∞¡«ú«
  2088. ñαá⌐óÑαá ß µÑ½∞ε «íαáí«Γ¬¿ ß¿¼ó«½«ó ßΓ¿αá¡¿∩ ¿ πñá½Ñ¡¿∩ (É¿ßπ¡«¬ 10.22); ¼«-
  2089. ñπ½∞ ßΓ᫬«ó«ú« ¿¡ΓÑαΣÑ⌐ßá ¡Ñ ¿¼ÑÑΓ ΓÑσ ªÑ ß«ßΓáó½∩εΘ¿σ, τΓ« ¿ ßΓ᫬«óδÑ ¿¡-
  2090. ΓÑαΣÑ⌐ßδ,  αáßß¼«ΓαÑ¡¡δÑ ó αáºñѽѠ10.3, ¡« óδ»«½¡∩ÑΓ ΓÑ ªÑ Σπ¡¬µ¿¿. üѺ ¼«-
  2091. ñπ½∩ ßΓ᫬«ó«ú« ¿¡ΓÑαΣÑ⌐ßá ΓÑନ¡á½∞¡δ⌐ ñαá⌐óÑα ¡Ñ «íαáí«ΓáÑΓ óó«ñ¡δÑ ß¿¼ó«-
  2092. ½δ ¿ «¡¿ »«ßΓπ»∩Γ ó ºáú«½«ó«¬ »«Γ«¬á ó ¡Ñ¿º¼Ñ¡Ñ¡¡«¼ ó¿ñÑ. æÑú¼Ñ¡Γ »α«úαá¼¼δ,
  2093. «Γ¬αδóáεΘ¿⌐ ΓÑନ¡á½ ¿ óδñó¿úáεΘ¿⌐ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß, ¼«ªÑΓ óδú½∩ñÑΓ∞ ß½Ñ-
  2094. ñπεΘ¿¼ «íαẫ¼:
  2095.  
  2096.     fd = open("/dev/ttyxy",O_RDWR);
  2097.     ioctl(fd,PUSH,TTYLD);
  2098.  
  2099. úñÑ PUSH - ¿¼∩ ¬«¼á¡ñδ, á TTYLD - τ¿ß½«, ¿ñÑ¡Γ¿Σ¿µ¿απεΘÑÑ ¼«ñπ½∞  ßΓ᫬«ó«ú«
  2100. ¿¡ΓÑαΣÑ⌐ßá.  ìÑ  ßπΘÑßΓóπÑΓ  «úαá¡¿τÑ¡¿∩ ¡á ¬«½¿τÑßΓó« ¼«ñπ½Ñ⌐, ¼«úπΘ¿σ íδΓ∞
  2101. óδñó¿¡πΓ묨 ó »«Γ«¬. Åα«µÑßß ¼«ªÑΓ óδΓὬ¿óáΓ∞ ¼«ñπ½¿ ¿º  »«Γ«¬á  ó  »«α∩ñ¬Ñ
  2102. »«ßΓπ»½Ñ¡¿∩,  "»Ñαóδ¼  »α¿Φѽ - »Ñαóδ¼ óδΦѽ", ¿ß»«½∞ºπ∩ ÑΘÑ «ñ¿¡ ó맮ó ß¿ß-
  2103. ΓѼ¡«⌐ Σπ¡¬µ¿¿ ioctl
  2104.  
  2105.     ioctl(fd,POP,0);
  2106.  
  2107.     Åα¿ Γ«¼, τΓ« ¼«ñπ½∞ ßΓ᫬«ó«ú« ¿¡ΓÑαΣÑ⌐ßá óδ»«½¡∩ÑΓ «íδτ¡δÑ  Σπ¡¬µ¿¿  »«
  2108.  
  2109.                                     323
  2110.  
  2111. π»αáó½Ñ¡¿ε  ΓÑନ¡á½«¼,  ß««ΓóÑΓßΓóπεΘÑѠѼπ πßΓα«⌐ßΓó« ¼«ªÑΓ íδΓ∞ ßαÑñßΓó«¼
  2112. ßÑΓÑó«⌐ ßó∩º¿ ó¼ÑßΓ« Γ«ú«, τΓ«íδ  «íÑß»Ñτ¿óáΓ∞  ßó∩º∞  ß  «ñ¡¿¼-Ññ¿¡ßΓóÑ¡¡δ¼
  2113. ΓÑନ¡á½«¼.  î«ñπ½∞  ßΓ᫬«ó«ú« ¿¡ΓÑαΣÑ⌐ßá αáí«ΓáÑΓ «ñ¿¡á¬«ó«, ¡Ñºáó¿ß¿¼« «Γ
  2114. Γ«ú«, ¬á¬«ú« Γ¿»á ¼«ñπ½∞ αáß»«½«ªÑ¡ ¡¿ªÑ ¡Ñú«. ¥Γ«Γ »α¿¼Ñα ¡áú½∩ñ¡« ñѼ«¡ßΓ-
  2115. α¿απÑΓ »«óδΦÑ¡¿Ñ ú¿í¬«ßΓ¿ óß½ÑñßΓó¿Ñ ß«Ññ¿¡Ñ¡¿∩ ¼«ñπ½Ñ⌐ ∩ñαá.
  2116.  
  2117.  
  2118.     E10.4.1 ü«½ÑÑ ñÑΓá½∞¡«Ñ αáßß¼«ΓαÑ¡¿Ñ »«Γ«¬«óF
  2119.  
  2120.     Åá⌐¬ «»¿ßδóáÑΓ αÑ὿ºáµ¿ε ¼π½∞Γ¿»½Ñ¬ß¡δσ ó¿αΓπá½∞¡δσ ΓÑନ¡á½«ó, ¿ß»«½∞-
  2121. ºπεΘπε »«Γ«¬¿ (ß¼. [Pike 84]). Å«½∞º«óáΓѽ∞ ó¿ñ¿Γ ¡Ñ߬«½∞¬« ó¿αΓπá½∞¡δσ ΓÑα-
  2122. ¼¿¡á½«ó, ¬áªñδ⌐ ¿º ¬«Γ«αδσ ºá¡¿¼áÑΓ «Γñѽ∞¡«Ñ  «¬¡«  ¡á  φ¬αá¡Ñ  Σ¿º¿τÑ߬«ú«
  2123. ΓÑନ¡á½á.  ò«Γ∩  ó  ßΓáΓ∞Ñ Åá⌐¬á αáßß¼áΓα¿óáÑΓß∩ ßσѼá ñ½∩ ¿¡Γѽ½Ñ¬Γπá½∞¡δσ
  2124. úαáΣ¿τÑ߬¿σ ΓÑନ¡á½«ó, «¡á αáí«Γá½á íδ ¿ ñ½∩ ΓÑନ¡á½«ó óó«ñá-óδó«ñá  Γ«ªÑ;
  2125. ¬áªñ«Ñ  «¬¡«  ºá¡¿¼á½« íδ µÑ½δ⌐ φ¬αá¡ ¿ »«½∞º«óáΓѽ∞ ñ½∩ »ÑαѬ½ετÑ¡¿∩ ó¿αΓπ-
  2126. á½∞¡δ󠫬«¡ ¡áí¿αá½ íδ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ π»αáó½∩εΘ¿σ ¬½áó¿Φ.
  2127.  
  2128.                  ┌─────────┐    ┌─────────┐    ┌─────────────────┐
  2129.  ôα«óÑ¡∞         │ shell 1 │    │ shell 2 │    │       mpx       │
  2130.  »«½∞º«óáΓѽ∩    └─────────┘    └─────────┘    └─────────────────┘
  2131.       ───────────────┬───────────────┬───────────┬───┬───────┬────
  2132.  ôα«óÑ¡∞ ∩ñαá        │ ^             │ ^      ┌──┘ ^ │ ^     │ ^
  2133.                      │ │             │ │      │ ┌──┘ │ │     │ │
  2134.                      │ │             │ │      │ │    │ │     │ │
  2135.                      v │             v │  ß«- v │    v │ ß«- │ │
  2136.             ΓÑନ-  ┌─┬┴┐   ΓÑନ-  ┌─┬┴┐ «í-┌─┬┴┐  ┌─┬┴┐«í- │ │
  2137.             ¡á½∞¡á∩ │ │ │   ¡á½∞¡á∩ │ │ │ ΘÑ-│ │ │  │ │ │ΘÑ- │ │
  2138.             ½¿¡¿∩   └┬┴─┘   ½¿¡¿∩   └┬┴─┘ ¡¿∩└┬┴─┘  └┬┴─┘¡¿∩ │ │
  2139.                      │ ^ ┌───────────┼─^──────┘ ^    │ ^     │ │
  2140.                      │ │ │ ┌─────────┼─┼────────┘    │ │     │ │
  2141.                      │ │ │ │         │ │ ┌───────────┘ │     │ │
  2142.                      v │ v │         v │ v ┌───────────┘     v │
  2143.                     ┌─┬┴┬─┬┴┐       ┌─┬┴┬─┬┴┐               ┌─┬┴┐
  2144.             »ßÑóñ«- │ │ │ │ │       │ │ │ │ │ »ßÑóñ«-       │ │ │
  2145.             ΓÑନ-  └┼┴─┴┼┴─┘       └┼┴─┴┼┴─┘ ΓÑନ-        └─┴─┘
  2146.             ¡á½∞¡á∩  │ ^ │ ^         │ ^ │ ^  ¡á½∞¡á∩      ΓÑନ-
  2147.             »áαá 1   │ └─┘ │         │ └─┘ │  »áαá 2       ¡á½∞¡δ⌐
  2148.                      └─────┘         └─────┘               ñαá⌐óÑα
  2149.  
  2150.     É¿ßπ¡«¬ 10.23.  ÄΓ«íαáªÑ¡¿Ñ  ó¿αΓπá½∞¡δ󠫬«¡ ¡á φ¬αá¡Ñ Σ¿º¿-
  2151.                     τÑ߬«ú« ΓÑନ¡á½á
  2152.  
  2153.  
  2154.     ìá É¿ßπ¡¬Ñ 10.23 »«¬áºá¡á ßσѼá αáß»«½«ªÑ¡¿∩ »α«µÑß߫󠿠 ¼«ñπ½Ñ⌐  ∩ñαá.
  2155. Å«½∞º«óáΓѽ∞  óδºδóáÑΓ »α«µÑßß mpx, ¬«¡Γα«½¿απεΘ¿⌐ αáí«Γπ Σ¿º¿τÑ߬«ú« ΓÑନ-
  2156. ¡á½á. Mpx τ¿ΓáÑΓ ñá¡¡δÑ ¿º ½¿¡¿¿ Σ¿º¿τÑ߬«ú« ΓÑନ¡á½á ¿ ªñÑΓ «íΩ∩ó½Ñ¡¿∩  «í
  2157. π»αáó½∩εΘ¿σ  ß«íδΓ¿∩σ, Γᬿσ ¬á¬ ß«ºñá¡¿Ñ ¡«ó«ú« «¬¡á, »ÑαѬ½ετÑ¡¿Ñ π»αáó½Ñ-
  2158. ¡¿∩ ¡á ñαπú«Ñ «¬¡«, πñá½Ñ¡¿Ñ «¬¡á ¿ Γ.».
  2159.     è«úñá mpx »«½πτáÑΓ πóÑñ«¼½Ñ¡¿Ñ « Γ«¼, τΓ« »«½∞º«óáΓÑ½ε ¡πª¡« ß«ºñáΓ∞ ¡«-
  2160. ó«Ñ «¬¡«, «¡ ß«ºñáÑΓ »α«µÑßß, π»αáó½∩εΘ¿⌐ ¡«óδ¼ «¬¡«¼, ¿ »«ññÑনóáÑΓ  ßó∩º∞
  2161. ß ¡¿¼ τÑαѺ »ßÑóñ«ΓÑନ¡á½. ÅßÑóñ«ΓÑନ¡á½ - φΓ« »α«úαá¼¼¡«Ñ πßΓα«⌐ßΓó«, αá-
  2162. í«ΓáεΘÑÑ  »« »α¿¡µ¿»π »áαδ: óδσ«ñ¡δÑ ñá¡¡δÑ, ¡á»αáó½∩ѼδÑ ¬ «ñ¡«⌐ ß«ßΓáó½∩ε-
  2163. ΘÑ⌐ »áαδ, »«ßδ½áεΓß∩ ¡á óσ«ñ ñαπú«⌐ ß«ßΓáó½∩εΘÑ⌐; óσ«ñ¡δÑ ñá¡¡δÑ  »«ßδ½áεΓß∩
  2164. Γ«¼π ¼«ñπ½ε »«Γ«¬á, ¬«Γ«αδ⌐ αáß»«½«ªÑ¡ óδΦÑ »« ΓÑτÑ¡¿ε. ä½∩ Γ«ú«, τΓ«íδ «Γ¬-
  2165. αδΓ∞ «¬¡« (É¿ßπ¡«¬ 10.24), mpx ¡áº¡áτáÑΓ »ßÑóñ«ΓÑନ¡á½∞¡πε »áαπ ¿ «Γ¬αδóáÑΓ
  2166. «ñ¡π  ¿º  ß«ßΓáó½∩εΘ¿σ »áαδ, ¡á»αáó½∩∩ »«Γ«¬ ¬ ¡Ñ⌐ («Γ¬αδΓ¿Ñ ñαá⌐óÑαá ß½πª¿Γ
  2167. úáαá¡Γ¿Ñ⌐ Γ«ú«, τΓ« »ßÑóñ«ΓÑନ¡á½∞¡á∩ »áαá ¡Ñ  íδ½á  óδíαá¡á  αá¡∞ΦÑ).  Mpx
  2168. óÑΓó¿Γß∩  ¿  ¡«óδ⌐  »α«µÑßß «Γ¬αδóáÑΓ ñαπúπε ß«ßΓáó½∩εΘπε »ßÑóñ«ΓÑନ¡á½∞¡«⌐
  2169.  
  2170.  
  2171.                                     324
  2172.  
  2173. ┌────────────────────────────────────────────────────────────────┐
  2174. │ /* »αÑñ»«½«ª¿¼, τΓ« ñÑß¬α¿»Γ«αδ Σá⌐½«ó 0 ¿ 1 πªÑ «Γ¡«ß∩Γß∩ ¬   │
  2175. │    Σ¿º¿τÑ߬«¼π ΓÑନ¡á½π */                                    │
  2176. │ ñ½∩(;;)        /* µ¿¬½ */                                      │
  2177. │ {                                                              │
  2178. │    óδíαáΓ∞(óó«ñ);   /* ªñáΓ∞ óó«ñá ¿º ¬á¬«⌐-½¿í« ½¿¡¿¿ */      │
  2179. │    »α«τ¿ΓáΓ∞ ñá¡¡δÑ, óóÑñÑ¡¡δÑ ¿º ½¿¡¿¿;                       │
  2180. │    »ÑαѬ½ετ¿Γ∞(½¿¡¿ε ß óó«ñ¿¼δ¼¿ ñá¡¡δ¼¿)                      │
  2181. │    {                                                           │
  2182. │    Ñß½¿ óδíαá¡ Σ¿º¿τÑ߬¿⌐ ΓÑନ¡á½:  /* ñá¡¡δÑ óó«ñ∩Γß∩ »« ½¿- │
  2183. │                                         ¡¿¿ Σ¿º¿τÑ߬«ú« ΓÑନ- │
  2184. │                                         ¡á½á */                │
  2185. │       Ñß½¿(ßτ¿Γá¡á π»αáó½∩εΘá∩ ¬«¼á¡ñá)  /* ¡á»α¿¼Ñα, ß«ºñá¡¿Ñ │
  2186. │                                             ¡«ó«ú« «¬¡á */     │
  2187. │       {                                                        │
  2188. │          «Γ¬αδΓ∞ ßó«í«ñ¡δ⌐ »ßÑóñ«ΓÑନ¡á½;                     │
  2189. │          »«⌐Γ¿ »« óÑΓó¿ ¡«ó«ú« »α«µÑßßá:                       │
  2190. │          Ñß½¿(»α«µÑßß α«ñ¿Γѽ∞߬¿⌐)                            │
  2191. │          {                                                     │
  2192. │             óδñó¿¡πΓ∞ ¿¡ΓÑαΣÑ⌐ß ß««íΘÑ¡¿⌐ ó ßΓ«α«¡π mpx;       │
  2193. │             »α«ñ«½ª¿Γ∞;   /* ó«ºóαáΓ ó µ¿¬½ "ñ½∩" */           │
  2194. │          }                                                     │
  2195. │          /* »α«µÑßß-»«Γ«¼«¬ */                                 │
  2196. │          ºá¬αδΓ∞ ¡Ñ¡πª¡δÑ ñÑß¬α¿»Γ«αδ Σá⌐½«ó;                  │
  2197. │          «Γ¬αδΓ∞ ñαπú«⌐ »ßÑóñ«ΓÑନ¡á½ ¿º »áαδ, óδíαáΓ∞ stdin, │
  2198. │                                     stdout, stderr;            │
  2199. │          óδñó¿¡πΓ∞ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß ΓÑନ¡á½á;              │
  2200. │          ºá»πßΓ¿Γ∞ shell;  /* »«ñ«í¡« ó¿αΓπá½∞¡«¼π ΓÑନ¡á½π */│
  2201. │       }                                                        │
  2202. │ /* "«íδτ¡δÑ" ñá¡¡δÑ, »«∩ó¿óΦ¿Ñß∩ τÑαѺ ó¿αΓπá½∞¡δ⌐ ΓÑନ¡á½ */ │
  2203. │       ñѼπ½∞Γ¿»½Ñ¬ß¿α«óáΓ∞ ßτ¿Γδóá¡¿Ñ ñá¡¡δσ ß Σ¿º¿τÑ߬«ú« ΓÑα-│
  2204. │        ¼¿¡á½á, ß¡∩Γ∞ ºáú«½«ó¬¿ ¿ óÑßΓ¿ ºá»¿ß∞ ¡á ß««ΓóÑΓßΓóπε- │
  2205. │        Θ¿⌐ »ßÑóñ«ΓÑନ¡á½;                                     │
  2206. │       »α«ñ«½ª¿Γ∞;    /* ó«ºóαáΓ ó µ¿¬½ "ñ½∩" */                │
  2207. │                                                                │
  2208. │    Ñß½¿ óδíαá¡ ½«ú¿τÑ߬¿⌐ ΓÑନ¡á½:  /* ó¿αΓπá½∞¡δ⌐ ΓÑନ¡á½   │
  2209. │                                         ßó∩ºá¡ ß «¬¡«¼ */      │
  2210. │       ºá¬«ñ¿α«óáΓ∞ ºáú«½«ó«¬, π¬áºδóáεΘ¿⌐ ¡áº¡áτÑ¡¿Ñ ¿¡Σ«α¼áµ¿¿│
  2211. │        «¬¡á;                                                   │
  2212. │       »ÑαÑ»¿ßáΓ∞ ºáú«½«ó«¬ ¿ ¿¡Σ«α¼áµ¿ε ¡á Σ¿º¿τÑ߬¿⌐ ΓÑନ¡á½;│
  2213. │       »α«ñ«½ª¿Γ∞;    /* ó«ºóαáΓ ó µ¿¬½ "ñ½∩" */                │
  2214. │    }                                                           │
  2215. │ }                                                              │
  2216. └────────────────────────────────────────────────────────────────┘
  2217.  
  2218.       É¿ßπ¡«¬ 10.24. ÅßÑóñ«»α«úαἼᠼπ½∞Γ¿»½Ñ¬ß¿α«óá¡¿∩ «¬«¡
  2219.  
  2220.  
  2221. »áαδ. Mpx óδñó¿úáÑΓ ¼«ñπ½∞ π»αáó½Ñ¡¿∩ ß««íΘÑ¡¿∩¼¿ ó  »ßÑóñ«ΓÑନ¡á½∞¡δ⌐  »«-
  2222. Γ«¬, τΓ«íδ »αÑ«íαẫóδóáΓ∞ π»αáó½∩εΘ¿Ñ ß««íΘÑ¡¿∩ ó ¿¡Σ«α¼áµ¿«¡¡δÑ («í φΓ«¼ ó
  2223. ß½ÑñπεΘѼ  »áαáúαáΣÑ),  á  »«α«ªñÑ¡¡δ⌐ »α«µÑßß »«¼ÑΘáÑΓ ó »ßÑóñ«ΓÑନ¡á½∞¡δ⌐
  2224. »«Γ«¬ ¼«ñπ½∞ ßΓ᫬«ó«ú« ¿¡ΓÑαΣÑ⌐ßá »ÑαÑñ ºá»π߬«¼ shell'á. ¥Γ«Γ shell ΓÑ»Ñα∞
  2225. óδ»«½¡∩ÑΓß∩ ¡á ó¿αΓπá½∞¡«¼ ΓÑନ¡á½Ñ; ñ½∩ »«½∞º«óáΓѽ∩ ó¿αΓπá½∞¡δ⌐  ΓÑନ¡á½
  2226. ¡Ñ«Γ½¿τ¿¼ «Γ Σ¿º¿τÑ߬«ú«.
  2227.     Åα«µÑßß mpx ∩ó½∩ÑΓß∩ ¼π½∞Γ¿»½Ñ¬ß«α«¼, ¡á»αáó½∩εΘ¿¼ óδó«ñ ñá¡¡δσ ß ó¿αΓπ-
  2228. á½∞¡δσ  ΓÑନ¡á½«ó ¡á Σ¿º¿τÑ߬¿⌐ ΓÑନ¡á½ ¿ ñѼπ½∞Γ¿»½Ñ¬ß¿απεΘ¿¼ óó«ñ ñá¡¡δσ
  2229. ß Σ¿º¿τÑ߬«ú« ΓÑନ¡á½á ¡á »«ñσ«ñ∩Θ¿⌐ ó¿αΓπá½∞¡δ⌐. Mpx ªñÑΓ »«ßΓπ»½Ñ¡¿∩ ñá¡-
  2230. ¡δσ »« ½εí«⌐ ¿º ½¿¡¿⌐, ¿ß»«½∞ºπ∩ ß¿ßΓѼ¡πε Σπ¡¬µ¿ε select. è«úñá ñá¡¡δÑ »«ß-
  2231. Γπ»áεΓ «Γ Σ¿º¿τÑ߬«ú« ΓÑନ¡á½á, mpx αÑΦáÑΓ ó«»α«ß, ∩ó½∩εΓß∩ ½¿  »«ßΓπ»¿óΦ¿Ñ
  2232.  
  2233.                                     325
  2234.  
  2235. ñá¡¡δÑ  π»αáó½∩εΘ¿¼  ß««íΘÑ¡¿Ñ¼,  ¿ºóÑΘáεΘ¿¼ « ¡Ñ«íσ«ñ¿¼«ßΓ¿ ß«ºñá¡¿∩ ¡«ó«ú«
  2236. «¬¡á ¿½¿ πñá½Ñ¡¿∩ ßΓáα«ú«, ¿½¿ ªÑ φΓ« ¿¡Σ«α¼áµ¿«¡¡«Ñ ß««íΘÑ¡¿Ñ, ¬«Γ«α«Ñ  ¡Ñ-
  2237. «íσ«ñ¿¼« αẫ߽áΓ∞ »α«µÑßßá¼, ßτ¿ΓδóáεΘ¿¼ ¿¡Σ«α¼áµ¿ε ß ó¿αΓπá½∞¡«ú« ΓÑନ¡á-
  2238. ½á.  é  »«ß½Ññ¡Ñ¼ ß½πτáÑ ñá¡¡δÑ ¿¼ÑεΓ ºáú«½«ó«¬, ¿ñÑ¡Γ¿Σ¿µ¿απεΘ¿⌐ Γ«Γ ó¿αΓπ-
  2239. á½∞¡δ⌐ ΓÑନ¡á½, ¬ ¬«Γ«α«¼π «¡¿ «Γ¡«ß∩Γß∩; mpx ßΓ¿αáÑΓ ºáú«½«ó«¬ ß ß««íΘÑ¡¿∩
  2240. ¿ »ÑαÑ»¿ßδóáÑΓ ñá¡¡δÑ ó ß««ΓóÑΓßΓóπεΘ¿⌐  »ßÑóñ«ΓÑନ¡á½∞¡δ⌐  »«Γ«¬.  äαá⌐óÑα
  2241. »ßÑóñ«ΓÑନ¡á½á  «Γ»αáó½∩ÑΓ  ñá¡¡δÑ τÑαѺ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß ΓÑନ¡á½á »α«-
  2242. µÑßßá¼, «ßπΘÑßΓó½∩εΘ¿¼ τΓÑ¡¿Ñ. ÄíαáΓ¡á∩ »α«µÑñπαá ¿¼ÑÑΓ ¼ÑßΓ«, ¬«úñá »α«µÑßß
  2243. óÑñÑΓ ºá»¿ß∞ ¡á ó¿αΓπá½∞¡δ⌐ ΓÑନ¡á½; mpx »α¿ß«Ññ¿¡∩ÑΓ ºáú«½«ó«¬  ¬  ñá¡¡δ¼,
  2244. ¿¡Σ«α¼¿απ∩ Σ¿º¿τÑ߬¿⌐ ΓÑନ¡á½, ñ½∩ óδó«ñá ó ¬á¬«Ñ ¿º «¬«¡ »αÑñ¡áº¡áτÑ¡δ φΓ¿
  2245. ñá¡¡δÑ.
  2246.     àß½¿  »α«µÑßß óδºδóáÑΓ Σπ¡¬µ¿ε ioctl ß ó¿αΓπá½∞¡«ú« ΓÑନ¡á½á, ßΓ᫬«óδ⌐
  2247. ¿¡ΓÑαΣÑ⌐ß ΓÑନ¡á½á ºáñáÑΓ ¡Ñ«íσ«ñ¿¼δÑ πßΓᡫ󬿠ΓÑନ¡á½á ñ½∩ Ñú« ó¿αΓπá½∞-
  2248. ¡«⌐ ½¿¡¿¿; ñ½∩ ¬áªñ«ú« ¿º ó¿αΓπá½∞¡δσ ΓÑନ¡á½«ó πßΓᡫ󬿠¼«úπΓ  íδΓ∞  αáº-
  2249. ½¿τ¡δ¼¿.  Äñ¡á¬«, ¡á Σ¿º¿τÑ߬¿⌐ ΓÑନ¡á½ ñ«½ª¡á íδΓ∞ »«ß½á¡á ¿ ¬«Ñ-¬á¬á∩ ¿¡-
  2250. Σ«α¼áµ¿∩, ºáó¿ß∩Θá∩ «Γ Γ¿»á πßΓα«⌐ßΓóá. î«ñπ½∞ π»αáó½Ñ¡¿∩ ß««íΘÑ¡¿∩¼¿ »αÑ«í-
  2251. αáºπÑΓ π»αáó½∩εΘ¿Ñ ß««íΘÑ¡¿∩, úÑ¡Ñα¿απѼδÑ Σπ¡¬µ¿Ñ⌐ ioctl, ó  ¿¡Σ«α¼áµ¿«¡¡δÑ
  2252. ß««íΘÑ¡¿∩, »αÑñ¡áº¡áτÑ¡¡δÑ ñ½∩ τΓÑ¡¿∩ ¿ ºá»¿ß¿ ¿σ »α«µÑßß«¼ mpx, ¿ φΓ¿ ß««í-
  2253. ΘÑ¡¿∩ »ÑαÑñáεΓß∩ ¡á Σ¿º¿τÑ߬«Ñ πßΓα«⌐ßΓó«.
  2254.  
  2255.  
  2256.     E10.4.2 Ç¡á½¿º »«Γ«¬«óF
  2257.  
  2258.     É¿τ¿  π»«¼¿¡áÑΓ  « Γ«¼, τΓ« ¿¼ íδ½á »αÑñ»α¿¡∩Γá »«»δΓ¬á ß«ºñá¡¿∩ »«Γ«¬«ó
  2259. Γ«½∞¬« ß »α«µÑñπαἿ "óδó«ñá" ¿½¿ Γ«½∞¬« ß »α«µÑñπαἿ «íß½πª¿óá¡¿∩. Äñ¡á¬«,
  2260. »α«µÑñπαá «íß½πª¿óá¡¿∩ ¡Ñ«íσ«ñ¿¼á ñ½∩ π»αáó½Ñ¡¿∩ »«Γ«¬á¼¿  ñá¡¡δσ,  Γᬠ ¬á¬
  2261. ¼«ñπ½¿ ñ«½ª¡δ ¿¡«úñá ßΓáó¿Γ∞ ñá¡¡δÑ ó «τÑαÑñ∞, Ñß½¿ ß«ßÑñ¡¿Ñ ¼«ñπ½¿ ¡á óαѼ∩
  2262. ºá¬αδΓδ  ñ½∩  »α¿Ñ¼á ñá¡¡δσ. Åα«µÑñπαá "óδó«ñá" ΓᬠªÑ ¡Ñ«íσ«ñ¿¼á, »«ß¬«½∞¬π
  2263. ñá¡¡δÑ ñ«½ª¡δ ¿¡«úñá ñ«ßΓáó½∩Γ∞ß∩ ó ß«ßÑñ¡¿Ñ ¼«ñπ½¿ ¡Ñºá¼Ññ½¿Γѽ∞¡«.  ìá»α¿-
  2264. ¼Ñα,  ßΓ᫬«ó«¼π  ¿¡ΓÑαΣÑ⌐ßπ  ΓÑନ¡á½á  ¡πª¡« óÑßΓ¿ φσ«-ß«»α«ó«ªñÑ¡¿Ñ óó«ñá
  2265. ñá¡¡δσ ¡á ΓÑନ¡á½Ñ ó ΓѼ»Ñ ß »α«µÑßß«¼. æ¿ßΓѼ¡á∩ Σπ¡¬µ¿∩  write  ¼«ú½á  íδ
  2266. ºá»π߬áΓ∞  »α«µÑñπαπ  "óδó«ñá"  ñ½∩ ß½ÑñπεΘÑ⌐ «τÑαÑñ¿ ¡Ñ»«ßαÑñßΓóÑ¡¡«, Γá, ó
  2267. ßó«ε «τÑαÑñ∞, óδºδóá½á íδ »α«µÑñπαπ "óδó«ñá" ñ½∩ ß½ÑñπεΘÑ⌐ «τÑαÑñ¿ ¿ Γᬠñá-
  2268. ½ÑÑ, ¡Ñ ¡πªñá∩ß∞ ó ¼Ñσá¡¿º¼Ñ ñ¿ß»ÑΓτÑα¿ºáµ¿¿. Åα«µÑßß  »α¿«ßΓá¡«ó¿½ß∩  íδ  ó
  2269. ß½πτáÑ  »ÑαÑ»«½¡Ñ¡¿∩ «τÑαÑñÑ⌐ ñ½∩ óδó«ñá. Äñ¡á¬«, ß« ßΓ«α«¡δ óó«ñá ¼«ñπ½¿ ¡Ñ
  2270. ¼«úπΓ »α¿«ßΓá¡áó½¿óáΓ∞ß∩, »«ß¬«½∞¬π ¿σ óδ»«½¡Ñ¡¿Ñ óδºδóáÑΓß∩ »α«úαá¼¼«⌐  «í-
  2271. αáí«Γ¬¿  »αÑαδóá¡¿⌐,  ¿¡áτÑ  íδ½ íδ »α¿«ßΓá¡«ó½Ñ¡ ß«óÑαΦÑ¡¡« íѺ«í¿ñ¡δ⌐ »α«-
  2272. µÑßß. æó∩º∞ ¼Ñªñπ ¼«ñπ½∩¼¿ ¡Ñ ñ«½ª¡á íδΓ∞ ß¿¼¼ÑΓα¿τ¡«⌐ ó ¡á»αáó½Ñ¡¿∩σ  óó«ñá
  2273. ¿ óδó«ñá, σ«Γ∩ φΓ« ¿ ñѽáÑΓ ßσѼπ ¼Ñ¡ÑÑ ¿º∩Θ¡«⌐.
  2274.     Æá¬ªÑ  í佫  íδ  ªÑ½áΓѽ∞¡«  αÑ὿º«óáΓ∞ ¬áªñδ⌐ ¼«ñπ½∞ ó ó¿ñÑ «Γñѽ∞¡«ú«
  2275. »α«µÑßßá, ¡« ¿ß»«½∞º«óá¡¿Ñ í«½∞Φ«ú« ¬«½¿τÑßΓóá ¼«ñπ½Ñ⌐ »α¿óѽ« íδ ¬ »ÑαÑ»«½-
  2276. ¡Ñ¡¿ε Γáí½¿µδ »α«µÑßß«ó. î«ñπ½¿ ¡áñѽ∩εΓß∩ ß»Ñµ¿á½∞¡δ¼ ¼Ñσá¡¿º¼«¼  ñ¿ß»ÑΓτÑ-
  2277. α¿ºáµ¿¿ - »α«úαá¼¼¡δ¼ »αÑαδó᡿Ѽ, ¡Ñºáó¿ß¿¼δ¼ «Γ «íδτ¡«ú« »½á¡¿α«óΘ¿¬á »α«-
  2278. µÑßß«ó.  Å«  φΓ«⌐  »α¿τ¿¡Ñ ¼«ñπ½¿ ¡Ñ ¼«úπΓ »α¿«ßΓá¡áó½¿óáΓ∞ ßó«Ñ óδ»«½¡Ñ¡¿Ñ,
  2279. Γᬠ¬á¬ «¡¿ »α¿«ßΓá¡áó½¿ó὿ íδ ΓѼ ßá¼δ¼ »α«¿ºó«½∞¡δ⌐ »α«µÑßß (Γ«Γ, ¬«Γ«αδ⌐
  2280. »αÑαóá¡). î«ñπ½¿ ñ«½ª¡δ σαá¡¿Γ∞ ó¡πΓα¿ ßÑí∩ ¿¡Σ«α¼áµ¿ε  «  ßó«Ñ¼  ß«ßΓ«∩¡¿¿,
  2281. τΓ« ñѽáÑΓ ½ÑªáΘ¿Ñ ó ¿σ «ß¡«óÑ »α«úαá¼¼δ í«½ÑÑ úα«¼«ºñ¬¿¼¿, τѼ Ñß½¿ íδ »α¿-
  2282. «ßΓá¡«ó¬á óδ»«½¡Ñ¡¿∩ íδ½á αáºαÑΦÑ¡á.
  2283.     é αÑ὿ºáµ¿¿ »«Γ«¬«ó ¼«ª¡« óδñѽ¿Γ∞ ¡Ñ߬«½∞¬« «Γ¬½«¡Ñ¡¿⌐ ¿½¿ ¡Ñß««ΓóÑΓß-
  2284. Γó¿⌐:
  2285.   *  ôτÑΓ αÑßπαß«ó »α«µÑßßá ó »«Γ«¬áσ ºáΓαπñ¡∩ÑΓß∩, »«ß¬«½∞¬π ¼«ñπ½∩¼ ¡Ñ«í∩-
  2286.     ºáΓѽ∞¡« óδ»«½¡∩Γ∞ß∩ ó ¬«¡ΓѬßΓÑ »α«µÑßßá, ¿ß»«½∞ºπεΘÑú« »«Γ«¬. ÄΦ¿í«τ¡«
  2287.     »αÑñ»«½áúáΓ∞, τΓ« óßÑ »α«µÑßßδ «ñ¿¡á¬«ó« ¿ß»«½∞ºπεΓ ¼«ñπ½¿ »«Γ«¬«ó, »«ß-
  2288.     ¬«½∞¬π «ñ¡¿¼ »α«µÑßßá¼ ¼«ªÑΓ »«ΓαÑí«óáΓ∞ß∩ ¿ß»«½∞º«óá¡¿Ñ ß½«ª¡δσ ßÑΓÑóδσ
  2289.     »α«Γ«¬«½«ó, Γ«úñᠬᬠñαπú¿Ñ ¼«úπΓ ¿ß»«½∞º«óáΓ∞ »α«ßΓδÑ ßΓ᫬«óδÑ ¿¡ΓÑα-
  2290.     ΣÑ⌐ßδ.
  2291.   * Å«½∞º«óáΓѽ¿ ¿¼ÑεΓ ó«º¼«ª¡«ßΓ∞ »ÑαÑó«ñ¿Γ∞ ΓÑନ¡á½∞¡δ⌐ ñαá⌐óÑα  ó  αѪ¿¼
  2292.     íѺ «íαáí«Γ¬¿, ó ¬«Γ«α«¼ Σπ¡¬µ¿∩ read ó«ºóαáΘáÑΓ π»αáó½Ñ¡¿Ñ τÑαѺ ¬«α«Γ-
  2293.     ¬¿⌐  »α«¼ÑªπΓ«¬  óαѼѡ¿  ó  ß½πτáÑ  «ΓßπΓßΓó¿∩  ñá¡¡δσ  (¡á»α¿¼Ñα, Ñß½¿
  2294.  
  2295.                                     326
  2296.  
  2297.     newtty.c_cc[VMIN] = 0 ¡á É¿ßπ¡¬Ñ 10.17). ¥Γπ «ß«íÑ¡¡«ßΓ∞ ß½«ª¡« αÑ὿º«-
  2298.     óáΓ∞ ó »«Γ«¬«ó«⌐ ßαÑñÑ íѺ »«ñ¬½ετÑ¡¿∩ ß»Ñµ¿á½∞¡«⌐ »α«úαá¼¼δ  ¡á  πα«ó¡Ñ
  2299.     ºáú«½«ó¬á »«Γ«¬á.
  2300.   * Å«Γ«¬¿ óδßΓπ»áεΓ ßαÑñßΓóἿ ½¿¡Ñ⌐¡«⌐ ßó∩º¿ ¿ ¡Ñ ¼«úπΓ »«ºó«½¿Γ∞ »α«¿ºó«-
  2301.     ñ¿Γ∞ ß ½Ñú¬«ßΓ∞ε ¼π½∞Γ¿»½Ñ¬ß¿α«óá¡¿Ñ ¡á πα«ó¡Ñ ∩ñαá. é »α¿¼ÑαÑ ¿ß»«½∞º«-
  2302.     óá¡¿∩  «¬«¡, αáßß¼«ΓαÑ¡¡«¼ ó »αÑñδñπΘѼ αáºñѽÑ, óδ»«½¡∩½«ß∞ ¼π½∞Γ¿»½Ñ¬-
  2303.     ß¿α«óá¡¿Ñ ¡á πα«ó¡Ñ »«½∞º«óáΓѽ∞߬«ú« »α«µÑßßá.
  2304.     ìÑß¼«Γα∩ ¡á φΓ¿ ¡Ñß««ΓóÑΓßΓó¿∩, ß »«Γ«¬á¼¿ ßó∩ºδóáεΓß∩ í«½∞Φ¿Ñ ¡áñѪñδ ó
  2305. ß«óÑαΦÑ¡ßΓó«óá¡¿¿ αáºαáí«Γ¬¿ ¼«ñπ½Ñ⌐ ñαá⌐óÑαá.
  2306.  
  2307.  
  2308. .te1    E10.5 é¢éÄä¢F
  2309.  
  2310.     äá¡¡á∩ ú½áóá »αÑñßΓáó½∩ÑΓ ß«í«⌐  «íº«α  ñαá⌐óÑα«ó  πßΓα«⌐ßΓó  ó  ß¿ßΓѼÑ
  2311. UNIX.  ôßΓα«⌐ßΓóá ¼«úπΓ íδΓ∞ ½¿í« í½«τ¡«ú«, ½¿í« ß¿¼ó«½∞¡«ú« Γ¿»á; ¿¡ΓÑαΣÑ⌐ß
  2312. ¼Ñªñπ πßΓα«⌐ßΓóἿ ¿ «ßΓá½∞¡«⌐ τáßΓ∞ε ∩ñαá «»αÑñѽ∩ÑΓß∩ Γ¿»«¼ πßΓα«⌐ßΓó. ê¡-
  2313. ΓÑαΣÑ⌐ß«¼ ñ½∩ πßΓα«⌐ßΓó í½«τ¡«ú« Γ¿»á  óδßΓπ»áÑΓ  Γáí½¿µá  ¬½ετÑ⌐  πßΓα«⌐ßΓó
  2314. óó«ñá-óδó«ñá  í½«¬á¼¿,  ß«ßΓ«∩Θá∩ ¿º Γ«τѬ óσ«ñá, ß««ΓóÑΓßΓóπεΘ¿σ »α«µÑñπαá¼
  2315. «Γ¬αδΓ¿∩ ¿ ºá¬αδΓ¿∩ πßΓα«⌐ßΓó  ¿  ßΓαáΓÑú¿τÑ߬«⌐  »α«µÑñπαÑ.  æΓαáΓÑú¿τÑ߬á∩
  2316. »α«µÑñπαá π»αáó½∩ÑΓ »ÑαÑñáτÑ⌐ ñá¡¡δσ «Γ ¿ ¬ πßΓα«⌐ßΓóπ í½«τ¡«ú« Γ¿»á. ê¡ΓÑα-
  2317. ΣÑ⌐ß«¼ ñ½∩ πßΓα«⌐ßΓó ß¿¼ó«½∞¡«ú« Γ¿»á óδßΓπ»áÑΓ Γáí½¿µá ¬½ετÑ⌐ πßΓα«⌐ßΓó »«-
  2318. ß¿¼ó«½∞¡«ú«  óó«ñá-óδó«ñá,  ¬«Γ«αá∩  ß«ßΓ«¿Γ ¿º Γ«τѬ óσ«ñá, ß««ΓóÑΓßΓóπεΘ¿σ
  2319. »α«µÑñπαá¼ «Γ¬αδΓ¿∩ ¿ ºá¬αδΓ¿∩ πßΓα«⌐ßΓóá, τΓÑ¡¿∩, ºá»¿ß¿ ¿ »α«µÑñπαÑ ioctl.
  2320. æ¿ßΓѼ¡á∩ Σπ¡¬µ¿∩ ioctl ¿ß»«½∞ºπÑΓ »α¿ «íαáΘÑ¡¿¿ ¬  πßΓα«⌐ßΓóá¼  ß¿¼ó«½∞¡«ú«
  2321. Γ¿»á ßó«⌐ ß«íßΓóÑ¡¡δ⌐ ¿¡ΓÑαΣÑ⌐ß, ¬«Γ«αδ⌐ »«ºó«½∩ÑΓ «ßπΘÑßΓó½∩Γ∞ »ÑαÑñáτπ π»-
  2322. αáó½∩εΘÑ⌐  ¿¡Σ«α¼áµ¿¿ ¼Ñªñπ »α«µÑßßἿ ¿ πßΓα«⌐ßΓóἿ. Å« »«½πτÑ¡¿¿ »αÑαδóá-
  2323. ¡¿∩ «Γ πßΓα«⌐ßΓóá ∩ñα« óδºδóáÑΓ »α«úαá¼¼π «íαáí«Γ¬¿ ß««ΓóÑΓßΓóπεΘÑú«  »αÑαδ-
  2324. óá¡¿∩,  «»¿αá∩ß∞  ¡á ¿¡Σ«α¼áµ¿ε, σαá¡∩Θπεß∩ ó Γáí½¿µÑ óÑ¬Γ«α«ó »αÑαδóá¡¿⌐, ¿
  2325. ¡á »áαá¼ÑΓαδ, ß««íΘÑ¡¡δÑ πßΓα«⌐ßΓó«¼, «Γ ¬«Γ«α«ú« »«ßΓπ»¿½« »αÑαδóá¡¿Ñ.
  2326.     ä¿ß¬«óδÑ ñαá⌐óÑαδ »αÑóαáΘáεΓ ¡«¼Ñαá ½«ú¿τÑ߬¿σ í½«¬«ó, ¿ß»«½∞ºπѼδÑ Σá⌐-
  2327. ½«ó«⌐ ß¿ßΓѼ«⌐, ó Σ¿º¿τÑ߬¿Ñ áñαÑßá ¡á ñ¿ß¬Ñ. ü½«τ¡δ⌐ ¿¡ΓÑαΣÑ⌐ß ñáÑΓ ó«º¼«ª-
  2328. ¡«ßΓ∞  ∩ñαπ  íπΣÑਧ«óáΓ∞  ñá¡¡δÑ.  éºá¿¼«ñÑ⌐ßΓó¿Ñ  íѺ  «íαáí«Γ¬¿  π߬«α∩ÑΓ
  2329. óó«ñ-óδó«ñ  ¡á  ñ¿ß¬, ¡« ¿ú¡«α¿απÑΓ íπΣÑα¡δ⌐ ¬ÑΦ, πóѽ¿τ¿óá∩ ΓѼ ßá¼δ¼ Φá¡ßδ
  2330. αáºαπΦ¿Γ∞ Σá⌐½«óπε ß¿ßΓѼπ.
  2331.     ÆÑନ¡á½∞¡δÑ ñαá⌐óÑαδ  «ßπΘÑßΓó½∩εΓ  ¡Ñ»«ßαÑñßΓóÑ¡¡«Ñ  óºá¿¼«ñÑ⌐ßΓó¿Ñ  ß
  2332. »«½∞º«óáΓѽ∩¼¿.  ƒñα«  ßó∩ºδóáÑΓ  ß ¬áªñδ¼ ΓÑନ¡á½«¼ Γα¿ ß¿¼ó«½∞¡δσ ß»¿ß¬á,
  2333. «ñ¿¡ ñ½∩ ¡ÑßΓαπ¬Γπα¿α«óá¡¡«ú« óó«ñá ß ¬½áó¿áΓπαδ, «ñ¿¡ ñ½∩ óó«ñá ß  «íαáí«Γ-
  2334. ¬«⌐  ß¿¼ó«½«ó  ßΓ¿αá¡¿∩, πñá½Ñ¡¿∩ ¿ ó«ºóαáΓá ¬áαÑΓ¬¿ ¿ «ñ¿¡ ñ½∩ óδó«ñá. æ¿ß-
  2335. ΓѼ¡á∩ Σπ¡¬µ¿∩ ioctl ñáÑΓ »α«µÑßßἠ󫺼«ª¡«ßΓ∞ ß½Ññ¿Γ∞ ºá ΓѼ, ¬á¬ ∩ñα« «í-
  2336. αáíáΓδóáÑΓ óó«ñ¿¼δÑ ñá¡¡δÑ, »ÑαÑó«ñ∩ ΓÑନ¡á½ ó ¬á¡«¡¿τÑ߬¿⌐ αѪ¿¼ ¿½¿ πßΓá-
  2337. ¡áó½¿óá∩ º¡áτÑ¡¿∩ αẽ¿τ¡δσ »áαá¼ÑΓα«ó ñ½∩ αѪ¿¼á  íѺ  «íαáí«Γ¬¿  ß¿¼ó«½«ó.
  2338. Getty-»α«µÑßß «Γ¬αδóáÑΓ ΓÑନ¡á½∞¡δÑ ½¿¡¿¿ ¿ ªñÑΓ ßó∩º¿: «¡ Σ«α¼¿απÑΓ úαπ»»π
  2339. »α«µÑßß«ó ó« ú½áóÑ ß αÑú¿ßΓαᵿ«¡¡δ¼ shell'«¼, ¿¡¿µ¿á½¿º¿απÑΓ ß »«¼«Θ∞ε Σπ¡-
  2340. ¬µ¿¿  ioctl  »áαá¼ÑΓαδ  ΓÑନ¡á½á ¿ «íαáΘáÑΓß∩ ¬ »«½∞º«óáΓѽε ß »αÑñ½«ªÑ¡¿Ñ¼
  2341. ºáαÑú¿ßΓα¿α«óáΓ∞ß∩. ôßΓá¡«ó½Ñ¡¡δ⌐ Γᬿ¼ «íαẫ¼ «»ÑαáΓ«α߬¿⌐ ΓÑନ¡á½  »«ßδ-
  2342. ½áÑΓ  »α«µÑßßá¼ ó úαπ»»Ñ ß¿ú¡á½δ ó «ΓóÑΓ ¡á ó«º¡¿¬¡«óÑ¡¿Ñ Γᬿσ ß«íδΓ¿⌐, ¬á¬
  2343. "ºáó¿ßá¡¿Ñ" »«½∞º«óáΓѽ∩ ¿½¿ ¡áªáΓ¿Ñ ¿¼ ¬½áó¿Φ¿ »αÑαδóá¡¿∩.
  2344.     Å«Γ«¬¿ óδßΓπ»áεΓ ßαÑñßΓó«¼ »«óδΦÑ¡¿∩  ¼«ñπ½∞¡«ßΓ¿  »«ßΓα«Ñ¡¿∩  ñαá⌐óÑα«ó
  2345. πßΓα«⌐ßΓó ¿ »α«Γ«¬«½«ó. Å«Γ«¬ - φΓ« »«½¡«ñπ»½Ñ¬ß¡á∩ ßó∩º∞ ¼Ñªñπ »α«µÑßßἿ ¿
  2346. ñαá⌐óÑαἿ  πßΓα«⌐ßΓó,  ¬«Γ«αá∩ ¼«ªÑΓ ó¬½ετáΓ∞ ó ßÑí∩ ßΓ᫬«óδÑ ¿¡ΓÑαΣÑ⌐ßδ ¿
  2347. »α«Γ«¬«½δ ñ½∩ »α«¼ÑªπΓ«τ¡«⌐ «íαáí«Γ¬¿ ñá¡¡δσ. î«ñπ½¿ »«Γ«¬«ó σáαá¬ΓÑਧπεΓß∩
  2348. τÑΓ¬« «»αÑñѽѡ¡δ¼ óºá¿¼«ñÑ⌐ßΓó¿Ñ¼ ¿ ú¿í¬«ßΓ∞ε, »«ºó«½∩εΘÑ⌐ ¿ß»«½∞º«óáΓ∞  ¿σ
  2349. ó ß«τÑΓá¡¿¿ ß ñαπú¿¼¿ ¼«ñπ½∩¼¿. ¥Γá ú¿í¬«ßΓ∞ ¿¼ÑÑΓ «ß«í«Ñ º¡áτÑ¡¿Ñ ñ½∩ ßÑΓÑ-
  2350. óδσ »α«Γ«¬«½«ó ¿ ñαá⌐óÑα«ó.
  2351.  
  2352. .te1    E10.6 ôÅÉÇåìàìêƒF
  2353.  
  2354.  *1.  ÅαÑñ»«½«ª¿¼, τΓ« ó ß¿ßΓѼѠ¿¼ÑεΓß∩ ñóá Σá⌐½á πßΓα«⌐ßΓó ß «ñ¡¿¼¿ ¿ ΓѼ¿
  2355.      ªÑ ßΓáαΦ¿¼ ¿ ¼½áñΦ¿¼ ¡«¼ÑαἿ, »α¿ Γ«¼, τΓ« «íá πßΓα«⌐ßΓóá - ß¿¼ó«½∞¡«-
  2356.  
  2357.                                     327
  2358.  
  2359.      ú« Γ¿»á. àß½¿ ñóá »α«µÑßßᠪѽáεΓ «ñ¡«óαѼѡ¡« «Γ¬αδΓ∞ Σ¿º¿τÑ߬«Ñ  πßΓ-
  2360.      α«⌐ßΓó«,  ¡Ñ íπñÑΓ ¡¿¬á¬«⌐ αạ¿µδ, «Γ¬αδóáεΓ ½¿ «¡¿ «ñ¿¡ ¿ Γ«Γ ªÑ Σá⌐½
  2361.      πßΓα«⌐ßΓóá ¿½¿ ªÑ αạδÑ Σá⌐½δ. ùΓ« »α«¿º«⌐ñÑΓ, ¬«úñá «¡¿ ßΓá¡πΓ ºá¬αδ-
  2362.      óáΓ∞ πßΓα«⌐ßΓó« ?
  2363.  *2. éß»«¼¡¿¼ ¿º ú½áóδ 5, τΓ« ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ mknod  ΓαÑíπÑΓß∩  αáºαÑΦÑ¡¿Ñ
  2364.      ßπ»Ñα»«½∞º«óáΓѽ∩ ¡á ß«ºñá¡¿Ñ ¡«ó«ú« ß»Ñµ¿á½∞¡«ú« Σá⌐½á πßΓα«⌐ßΓóá. àß-
  2365.      ½¿ ñ«ßΓπ» ¬ πßΓα«⌐ßΓóπ π»αáó½∩ÑΓß∩ »αáóἿ ñ«ßΓπ»á ¬ Σá⌐½π, »«τѼπ Σπ¡-
  2366.      ¬µ¿¿ mknod ¡πª¡« αáºαÑΦÑ¡¿Ñ ßπ»Ñα»«½∞º«óáΓѽ∩ ?
  2367.   3. ìá»¿Φ¿ΓÑ »α«úαá¼¼π, ¬«Γ«αá∩ »α«óÑα∩ÑΓ, τΓ« Σá⌐½«óδÑ ß¿ßΓÑ¼δ ¡á ñ¿ß¬Ñ ¡Ñ
  2368.      »ÑαѬαδóáεΓß∩. ¥Γ«⌐ »α«úαἼѠ»«ΓαÑí«ó὿ß∞ íδ ñóá áαúπ¼Ñ¡Γá: Σá⌐½ πßΓ-
  2369.      α«⌐ßΓóá, »αÑñßΓáó½∩εΘ¿⌐ ñ¿ß¬«óδ⌐ Γ«¼, ¿ ñÑß¬α¿»Γ«α Σá⌐½á, «Γ¬πñá íÑαπΓ-
  2370.      ß∩ ¡«¼Ñαá ßÑ¬Γ«α«ó ¿ ¿σ αẼÑα ñ½∩ ñ¿ß¬á ñá¡¡«ú« Γ¿»á. ä½∩ »α«óÑન «Γ-
  2371.      ßπΓßΓó¿∩ »ÑαѬαδΓ¿⌐ φΓ«⌐ »α«úαἼѠ»«¡áñ«í¿½áß∞ íδ ¿¡Σ«α¼áµ¿∩ ¿º ßπ»Ñα-
  2372.      í½«¬«ó. üπñÑΓ ½¿ Γá¬á∩ »α«úαá¼¼á óßÑúñá »αáó¿½∞¡«⌐ ?
  2373.   4.  Åα«úαá¼¼á mkfs ¿¡¿µ¿á½¿º¿απÑΓ Σá⌐½«óπε ß¿ßΓѼπ ¡á ñ¿ß¬Ñ »πΓѼ ß«ºñá¡¿∩
  2374.      ßπ»Ñαí½«¬á, óδñѽѡ¿∩ ¼ÑßΓá ñ½∩ ß»¿ß¬á ¿¡ñѬ߫ó, ó¬½ετÑ¡¿∩ óßÑσ  ¿¡Σ«α-
  2375.      ¼áµ¿«¡¡δσ  í½«¬«ó ó ßó∩ºá¡¡δ⌐ ß»¿ß«¬ ¿ ß«ºñá¡¿∩ ¬«α¡Ñó«ú« ¬áΓὫúá. èá¬
  2376.      íδ óδ ¡á»¿ß὿ »α«úαá¼¼π mkfs ? èᬠ¿º¼Ñ¡¿Γß∩ φΓá »α«úαá¼¼á »α¿ ¡á½¿τ¿¿
  2377.      Γáí½¿µδ ß«ñÑন¼«ú« Γ«¼á ? èᬿ¼ «íαẫ¼ ß½ÑñπÑΓ ¿¡¿µ¿á½¿º¿α«óáΓ∞  Γáí-
  2378.      ½¿µπ ß«ñÑন¼«ú« Γ«¼á ?
  2379.   5.  Åα«úαá¼¼δ mkfs ¿ fsck (ú½áóá 5) ∩ó½∩εΓß∩ »α«úαἼἿ »«½∞º«óáΓѽ∞߬«ú«
  2380.      πα«ó¡∩, á ¡Ñ τáßΓ∞ε ∩ñαá. Å᫬«¼¼Ñ¡Γ¿απ⌐ΓÑ φΓ«.
  2381.   6. ÅαÑñ»«½«ª¿¼, τΓ« »α«úαá¼¼¿ßΓπ ¡πª¡« αáºαáí«ΓáΓ∞ íáºπ ñá¡¡δσ, αáí«ΓáεΘπε
  2382.      ó ßαÑñÑ Äæ UNIX. Åα«úαá¼¼δ íáºδ ñá¡¡δσ óδ»«½¡∩εΓß∩ ¡á  »«½∞º«óáΓѽ∞߬«¼
  2383.      πα«ó¡Ñ,  á ¡Ñ ó ß«ßΓáóÑ ∩ñαá. èᬠ߿ßΓѼá π»αáó½Ñ¡¿∩ íẫ⌐ ñá¡¡δσ íπñÑΓ
  2384.      óºá¿¼«ñÑ⌐ßΓó«óáΓ∞ ß ñ¿ß¬«¼ ? Å«ñπ¼á⌐ΓÑ ¡áñ ß½ÑñπεΘ¿¼¿ ó«»α«ßἿ:
  2385.      * êß»«½∞º«óá¡¿Ñ ßΓá¡ñáαΓ¡«ú« ¿¡ΓÑαΣÑ⌐ßá Σá⌐½«ó«⌐ ß¿ßΓѼδ ó¼ÑßΓ«  ¡Ñ»«ß-
  2386.        αÑñßΓóÑ¡¡«⌐ αáí«Γδ ß ¡ÑßΓαπ¬Γπα¿α«óá¡¡δ¼¿ ñá¡¡δ¼¿ ¡á ñ¿ß¬Ñ,
  2387.      * Å«ΓαÑí¡«ßΓ∞ ó íδßΓα«ñÑ⌐ßΓó¿¿,
  2388.      * ìÑ«íσ«ñ¿¼«ßΓ∞ º¡áΓ∞, ¬«úñá Σá¬Γ¿τÑ߬¿ ñá¡¡δÑ αáß»«½áúáεΓß∩ ¡á ñ¿ß¬Ñ,
  2389.      *  ÉẼÑα íáºδ ñá¡¡δσ: ñ«½ª¡á ½¿ «¡á »«¼ÑΘáΓ∞ß∩ ó «ñ¡«⌐ Σá⌐½«ó«⌐ ß¿ßΓÑ-
  2390.        ¼Ñ, ºá¡¿¼áΓ∞ ß«í«⌐ óÑß∞ ñ¿ß¬«óδ⌐ Γ«¼ ¿½¿ ªÑ αáß»«½áúáΓ∞ß∩ ¡á ¡Ñ߬«½∞-
  2391.        ¬¿σ ñ¿ß¬«óδσ Γ«¼áσ ?
  2392.   7. ƒñα« ß¿ßΓѼδ UNIX »« π¼«½τá¡¿ε »αÑñ»«½áúáÑΓ, τΓ« Σá⌐½«óá∩ ß¿ßΓѼᠠαáß-
  2393.      »«½áúáÑΓß∩  ¡á  ¿ñÑá½∞¡δσ ñ¿ß¬áσ. Äñ¡á¬«, ñ¿ß¬¿ ¼«úπΓ ß«ñÑαªáΓ∞ «Φ¿í¬¿,
  2394.      ¬«Γ«αδÑ ñѽáεΓ ¡Ñ»α¿ú«ñ¡δ¼¿ ¿ óδó«ñ∩Γ ¿º  ßΓα«∩  «»αÑñѽѡ¡δÑ  ßÑ¬Γ«αá,
  2395.      ¡Ñß¼«Γα∩  ¡á  Γ«,  τΓ«  «ßΓá½∞¡á∩ τáßΓ∞ ñ¿ß¬á «ßΓá½áß∞ "»α¿ú«ñ¡«⌐". èá¬
  2396.      ñ¿ß¬«ó«¼π ñαá⌐óÑαπ (¿½¿ ¿¡Γѽ½Ñ¬Γπá½∞¡«¼π  ¬«¡Γα«½½Ñαπ  ñ¿ß¬á)  ß½ÑñπÑΓ
  2397.      πτ¿ΓδóáΓ∞  ¡Ñí«½∞Φ«Ñ  ¬«½¿τÑßΓó« »½«σ¿σ ßÑ¬Γ«α«ó. èᬠφΓ« «Γαế½«ß∞ íδ
  2398.      ¡á »α«¿ºó«ñ¿Γѽ∞¡«ßΓ¿ ß¿ßΓѼδ ?
  2399.   8. Åα¿ ¼«¡Γ¿α«óá¡¿¿ Σá⌐½«ó«⌐ ß¿ßΓѼδ ∩ñα« ºá»π߬áÑΓ »α«µÑñπαπ «Γ¬αδΓ¿∩ ñ½∩
  2400.      ñá¡¡«ú« ñαá⌐óÑαá, ¡« »«ºªÑ «ßó«í«ªñáÑΓ ¿¡ñѬߠ߻ѵ¿á½∞¡«ú«  Σá⌐½á  πßΓ-
  2401.      α«⌐ßΓóá  »«  ºáóÑαΦÑ¡¿¿  óδ»«½¡Ñ¡¿∩ ó맮óá ß¿ßΓѼ¡«⌐ Σπ¡¬µ¿¿ mount. Åα¿
  2402.      ñѼ«¡Γ¿α«óá¡¿¿ Σá⌐½«ó«⌐ ß¿ßΓѼδ ∩ñα« «íαáΘáÑΓß∩ ¬ ¿¡ñѬßπ  ß»Ñµ¿á½∞¡«ú«
  2403.      Σá⌐½á  πßΓα«⌐ßΓóá,  ºá»π߬áÑΓ »α«µÑñπαπ ºá¬αδΓ¿∩ ñ½∩ ñá¡¡«ú« ñαá⌐óÑαá ¿
  2404.      ó¡«ó∞ «ßó«í«ªñáÑΓ ¿¡ñѬß. æαáó¡¿ΓÑ φΓπ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ «»Ñαᵿ⌐  ¡áñ
  2405.      ¿¡ñѬ߫¼,  á ΓᬪѠ«íαáΘÑ¡¿⌐ ¬ »α«µÑñπαá¼ «Γ¬αδΓ¿∩ ¿ ºá¬αδΓ¿∩ ñαá⌐óÑαá,
  2406.      ß »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ε ñÑ⌐ßΓó¿⌐, ß«óÑαΦáѼδσ »α¿ «Γ¬αδóá¡¿¿ ¿ ºá¬αδóá¡¿¿
  2407.      πßΓα«⌐ßΓóá í½«τ¡«ú« Γ¿»á. Å᫬«¼¼Ñ¡Γ¿απ⌐ΓÑ αѺπ½∞ΓáΓδ ßαáó¡Ñ¡¿∩.
  2408.   9. éδ»«½¡¿ΓÑ »α«úαá¼¼π, »α¿óÑñÑ¡¡πε ¡á É¿ßπ¡¬Ñ 10.14, ¡«  ¡á»αáó∞ΓÑ  óδó«ñ
  2409.      ñá¡¡δσ ó Σá⌐½. æαáó¡¿ΓÑ ß«ñÑন¼«Ñ Σá⌐½á ß ß«ñÑন¼δ¼ óδó«ñ¡«ú« »«Γ«¬á,
  2410.      ¬«úñá óδó«ñ ¿ñÑΓ ¡á ΓÑନ¡á½. éá¼ »α¿ñÑΓß∩ »αÑαóáΓ∞ »α«µÑßßδ, τΓ«íδ «ß-
  2411.      Γá¡«ó¿Γ∞  ¿σ;  Γ«½∞¬« »αѪñÑ »πßΓ∞ «¡¿ »«½πτáΓ ñ«ßΓáΓ«τ¡« í«½∞Φ«Ñ ¬«½¿-
  2412.      τÑßΓó« ñá¡¡δσ. ùΓ« »α«¿º«⌐ñÑΓ, Ñß½¿ ó맮ó Σπ¡¬µ¿¿ write ó »α«úαἼѠºá-
  2413.      ¼Ñ¡¿Γ∞ ¡á printf(output);
  2414.  10. ùΓ« »α«¿º«⌐ñÑΓ, Ñß½¿ »«½∞º«óáΓѽ∞ »«»δΓáÑΓß∩  óδ»«½¡¿Γ∞  αÑñá¬Γ¿α«óá¡¿Ñ
  2415.      ΓѬßΓá ¡á Σ«¡Ñ »α«úαá¼¼δ:
  2416.      ed file &
  2417.      Äí«ß¡π⌐ΓÑ «ΓóÑΓ.
  2418.  
  2419.                                     328
  2420.  
  2421.  11. è  Σá⌐½á¼  ΓÑନ¡á½«ó «íδτ¡« πßΓá¡áó½¿óáεΓß∩ ß½ÑñπεΘ¿Ñ »αáóá ñ«ßΓπ»á
  2422.  
  2423.      crw--w--w-  2  mjb   lus      33,11  Oct 25 20:27   tty61
  2424.  
  2425.      »α¿  óσ«ñÑ »«½∞º«óáΓѽ∩ ó ß¿ßΓѼπ. Æ« ÑßΓ∞, τΓÑ¡¿Ñ ¿ ºá»¿ß∞ αáºαÑΦáεΓß∩
  2426.      »«½∞º«óáΓѽε ß ¿¼Ñ¡Ñ¼ "mjb", á «ßΓá½∞¡δ¼ »«½∞º«óáΓѽ∩¼ αáºαÑΦÑ¡á Γ«½∞¬«
  2427.      ºá»¿ß∞. Å«τѼπ ?
  2428.  12. ÅαÑñ»«½«ª¿¼, τΓ« óá¼ ¿ºóÑßΓ¡« ¿¼∩ Σá⌐½á ΓÑନ¡á½á óáΦÑú« Γ«óáα¿Θá.  ìá-
  2429.      »¿Φ¿ΓÑ »α«úαá¼¼π ºá»¿ß¿ ß««íΘÑ¡¿⌐ ß óáΦÑú« ΓÑନ¡á½á ¡á ΓÑନ¡á½ óáΦÑú«
  2430.      Γ«óáα¿Θá. èá¬á∩ ÑΘÑ ¿¡Σ«α¼áµ¿∩ óá¼ ¡πª¡á, τΓ«íδ ºá¬«ñ¿α«óáΓ∞ »α¿Ñ¼½Ñ¼«Ñ
  2431.      ó«ß»α«¿ºóÑñÑ¡¿Ñ «íδτ¡«⌐ ¬«¼á¡ñδ write ?
  2432.  13.  éδ»«½¡¿ΓÑ ¬«¼á¡ñπ stty: Ñß½¿ »áαá¼ÑΓαδ ¡Ñ π¬áºá¡δ, «¡á óδí¿αáÑΓ º¡áτÑ-
  2433.      ¡¿∩ πßΓᡫ󫬠ΓÑନ¡á½á ¿ ß««íΘáÑΓ ¿σ »«½∞º«óáΓѽε. é »α«Γ¿ó¡«¼  ß½πτáÑ
  2434.      »«½∞º«óáΓѽ∞  ¼«ªÑΓ  ó ¿¡ΓÑαá¬Γ¿ó¡«¼ αѪ¿¼Ñ ßñѽáΓ∞ αẽ¿τ¡δÑ πßΓá¡«ó¬¿
  2435.      ßá¼.
  2436.  14. ìá»¿Φ¿ΓÑ φ½Ñ¼Ñ¡Γáα¡δ⌐ ßΓ᫬«óδ⌐ ¿¡ΓÑαΣÑ⌐ß,  ºá»¿ßδóáεΘ¿⌐  ¿ñÑ¡Γ¿Σ¿¬áΓ«α
  2437.      ¼áΦ¿¡δ ó ¡áτá½Ñ ¬áªñ«⌐ ßΓ᫬¿ óδó«ñ¡«ú« »«Γ«¬á.
  2438.  15.  é  ¬á¡«¡¿τÑ߬«¼ αѪ¿¼Ñ »«½∞º«óáΓѽ∞ ¼«ªÑΓ ¡á óαѼ∩ »α¿«ßΓá¡«ó¿Γ∞ óδó«ñ
  2439.      ñá¡¡δσ ¡á ΓÑନ¡á½, ¡áªáó »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ ¬½áó¿Φ <Ctrl-s>, ¿ »α«ñ«½-
  2440.      ª¿Γ∞ óδó«ñ, ¡áªáó <Ctrl-q>. èᬠó ßΓá¡ñáαΓ¡«¼ ßΓ᫬«ó«¼ ¿¡ΓÑαΣÑ⌐ßÑ αÑá-
  2441.      ½¿ºπÑΓß∩ φΓá «ß«íÑ¡¡«ßΓ∞ ?
  2442. *16. Åα«µÑßß ¡áτá½∞¡«⌐ ºáúαπº¬¿ »«α«ªñáÑΓ getty-»α«µÑßß  ñ½∩  ¬áªñ«⌐  ΓÑନ-
  2443.      ¡á½∞¡«⌐ ½¿¡¿¿ ó ß¿ßΓѼÑ. ùΓ« »α«¿º«Φ½« íδ, Ñß½¿ íδ ñ½∩ «ñ¡«ú« ¿ Γ«ú« ªÑ
  2444.      ΓÑନ¡á½á  ßπΘÑßΓó«ó὿  íδ  «ñ¡«óαѼѡ¡« ñóá getty-»α«µÑßßá, «ª¿ñáεΘ¿Ñ
  2445.      αÑú¿ßΓαᵿ¿ »«½∞º«óáΓѽ∩ ? î«ªÑΓ ½¿ ∩ñα« »«¼ÑΦáΓ∞ φΓ«¼π ?
  2446.  17. ÅπßΓ∞ ¬«¼á¡ñ¡δ⌐ »α«µÑßß«α shell αÑ὿º«óá¡ Γᬿ¼ «íαẫ¼, τΓ« «¡ "¿ú¡«-
  2447.      α¿απÑΓ" ¬«¡Ñµ Σá⌐½á ¿ »α«ñ«½ªáÑΓ ßτ¿ΓδóáΓ∞ ñá¡¡δÑ ¿º ßΓá¡ñáαΓ¡«ú«  óó«-
  2448.      ñá.  ùΓ« »α«¿º«Φ½« íδ, Ñß½¿ íδ »«½∞º«óáΓѽ∞ (ó αÑú¿ßΓαᵿ«¡¡«¼ shell'Ñ)
  2449.      πúáñá½ ¬«¡Ñµ Σá⌐½á ¿ »α«ñ«½ª¿½ óó«ñ ß ¬½áó¿áΓπαδ ?
  2450. *18. ÅαÑñ»«½«ª¿¼, τΓ« »α«µÑßß ßτ¿ΓδóáÑΓ ñá¡¡δÑ ß «»ÑαáΓ«α߬«ú« ΓÑନ¡á½á, ¡«
  2451.      ¿ú¡«α¿απÑΓ ¿½¿ π½áó½¿óáÑΓ ß¿ú¡á½δ « "ºáó¿ßá¡¿¿". ùΓ« »α«¿º«⌐ñÑΓ,  ¬«úñá
  2452.      »α«µÑßß  »α«ñ«½ª¿Γ ßτ¿ΓδóáΓ∞ ñá¡¡δÑ ß «»ÑαáΓ«α߬«ú« ΓÑନ¡á½á »«ß½Ñ ºá-
  2453.      ó¿ßá¡¿∩ ?
  2454.  19. Åα«úαá¼¼á getty-»α«µÑßßá ¡ÑßÑΓ «ΓóÑΓßΓóÑ¡¡«ßΓ∞ ºá «Γ¬αδΓ¿Ñ ΓÑନ¡á½∞¡«⌐
  2455.      ½¿¡¿¿, á »α«úαá¼¼á login - ºá »α«óÑα¬π αÑú¿ßΓαᵿ«¡¡δσ ¿¼Ñ¡ ¿  »áα«½Ñ⌐.
  2456.      èᬿѠ »αÑ¿¼πΘÑßΓóá ó Γ«¼, τΓ« φΓ¿ Σπ¡¬µ¿¿ óδ»«½¡∩εΓß∩ «Γñѽ∞¡δ¼¿ »α«ú-
  2457.      αἼἿ ?
  2458.  20.  Éáßß¼«Γα¿¼ ñóá ¼ÑΓ«ñá αÑ὿ºáµ¿¿ ñαá⌐óÑαá ¬«ßóÑ¡¡«ú« ΓÑନ¡á½á  ("/dev
  2459.      /tty"), «»¿ßá¡¡δÑ ó αáºñѽѠ10.3.6. èᬿѠαẽ¿τ¿∩ ¼Ñªñπ ¡¿¼¿ τπóßΓóπÑΓ 
  2460.      »«½∞º«óáΓѽ∞ ? (æ«óÑΓ: »«ñπ¼á⌐ΓÑ « ß¿ßΓѼ¡δσ Σπ¡¬µ¿∩σ stat ¿ fstat).
  2461.  21. Éáºαáí«Γá⌐ΓÑ ¼ÑΓ«ñ »½á¡¿α«óá¡¿∩ óδ»«½¡Ñ¡¿∩ ¼«ñπ½Ñ⌐ »«Γ«¬á, ó ß««ΓóÑΓßΓ-
  2462.      ó¿¿ ß ¬«Γ«αδ¼ ∩ñα« ¿¼ÑÑΓ ó ßó«Ñ¼ ß«ßΓáóѠ߻ѵ¿á½∞¡δ⌐ »α«µÑßß, óδ»«½¡∩ε-
  2463.      Θ¿⌐  »α«µÑñπαδ «íß½πª¿óá¡¿∩ ¼«ñπ½Ñ⌐ Γ«úñá, ¬«úñá óδ»«½¡Ñ¡¿Ñ φΓ¿σ »α«µÑ-
  2464.      ñπα ºá»½á¡¿α«óá¡«.
  2465. *22. Éáºαáí«Γá⌐ΓÑ ßσÑ¼π »«ßΓα«Ñ¡¿∩ ó¿αΓπá½∞¡δσ ΓÑନ¡á½«ó («¬«¡) ß ¿ß»«½∞º«-
  2466.      ó᡿Ѽ Γαáñ¿µ¿«¡¡δσ (¡Ñ »«Γ«¬«óδσ) ñαá⌐óÑα«ó.
  2467. *23. Éáºαáí«Γá⌐ΓÑ ¼ÑΓ«ñ αÑ὿ºáµ¿¿ ó¿αΓπá½∞¡δσ ΓÑନ¡á½«ó  ß  ¿ß»«½∞º«ó᡿Ѽ
  2468.      »«Γ«¬«ó,  ó ¬«Γ«α«¼ ¼π½∞Γ¿»½Ñ¬ß¿α«ó᡿Ѽ óó«ñá-óδó«ñᠼѪñπ ó¿αΓπá½∞¡δ¼
  2469.      ¿ Σ¿º¿τÑ߬¿¼ ΓÑନ¡á½á¼¿ ºá¡¿¼á½ß∩ íδ «ñ¿¡ ¿º ¼«ñπ½Ñ⌐ ∩ñαá, á ¡Ñ  »«½∞-
  2470.      º«óáΓѽ∞߬¿⌐ »α«µÑßß. Ä»¿Φ¿ΓÑ ¼Ñσá¡¿º¼ ß«Ññ¿¡Ñ¡¿∩ »«Γ«¬«ó ß« ßóÑαΓ¬«⌐ ¿
  2471.      αáºóÑαΓ¬«⌐.  ùΓ« ½πτΦÑ: ó¬½ετ¿Γ∞ ¼«ñπ½∞, «ßπΘÑßΓó½∩εΘ¿⌐ ¼π½∞Γ¿»½Ñ¬ß¿α«-
  2472.      óá¡¿Ñ, ó ß«ßΓáó ∩ñαá ¿½¿ »«ßΓα«¿Γ∞ Ñú« ¬á¬ »«½∞º«óáΓѽ∞߬¿⌐ »α«µÑßß ?
  2473.  24. è«¼á¡ñá ps ß««íΘáÑΓ ¿¡ΓÑαÑß¡πε ¿¡Σ«α¼áµ¿ε «í á¬Γ¿ó¡«ßΓ¿ »α«µÑßß«ó ó αá-
  2474.      í«ΓáεΘÑ⌐ ß¿ßΓѼÑ. é Γαáñ¿µ¿«¡¡δσ αÑ὿ºáµ¿∩σ ps ßτ¿ΓδóáÑΓ ¿¡Σ«α¼áµ¿ε ¿º
  2475.      Γáí½¿µδ »α«µÑßß«ó, »α∩¼« ¿º »á¼∩Γ¿ ∩ñαá. Æá¬«⌐ ¼ÑΓ«ñ ¡Ñ ß«óßѼ πñ«íÑ¡ ó
  2476.      ßαÑñÑ αáºαáí«Γ¬¿, ¬«úñá αẼÑα ºá»¿ßÑ⌐ Γáí½¿µδ »α«µÑßß«ó ¼Ñ¡∩ÑΓß∩ ¿ ¬«-
  2477.      ¼á¡ñÑ ps ßΓá¡«ó¿Γß∩ ¡Ñ½Ñú¬« «í¡áαπª¿Γ∞ ó Γáí½¿µÑ ß««ΓóÑΓßΓóπεΘ¿Ñ  »«½∩.
  2478.      Éáºαáí«Γá⌐ΓÑ ñαá⌐óÑα, ¡ÑτπóßΓó¿Γѽ∞¡δ⌐ ¬ ¿º¼Ñ¡Ñ¡¿∩¼ ßαÑñδ.
  2479.  
  2480.  
  2481.                                     329
  2482.