a commentary on the sixth edition unix os -- lions

115

Upload: api-3748027

Post on 10-Apr-2015

848 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � � � � � � � � � � � �

� � � � � � � � �� � �� � � � � � � � � � � �

��������������� "!$#&%('*),+-!$�.)/�10�23�4+5#�67),!8':9<;$��!8��;8!

=?>�!A@?�B�DCE!8'F�G�D)IHJ�10LKM!ON 9<��67)G>QP %(R�!$�

SUTWVYX1Z*[\[^]`_badc1TfegX1Z*adadh�iWjD[lklmIn�aokqpr[^j4XscDmIklath^cuX�evc1cwTIa<x�hWVzygatjDXwV{cs|}[gp�~�ad�?�`[gmlcDT���e�_zatX(cue�]`VzhW�}n�[gmIjDXwatX(�W� �g�\���eghIk��W� �^�\��������c�VzX�Vbh\cwathIklaok�egX4e&n�[g�EiIeghWVz[gh�cw[f�Oe�hIk�nd[g�E�Eadh\cDegjw|�[gh��,cwTIa<Zf[`[^]\_za�c��G�������O ¢¡u£¥¤l¦¨§z©lª�«^¬I­t¦�¡¥®«I¯l°�£t±¥¡�²³¯W´`¡oµI¶¢¡¸·¸¡¥¹º«`§b»¼�SUTWa4x½~���¾¿�`[gpÀcs��egjwa4�`|lXÁcwat�:�UegX��ÂjwVbcÁcDadh�Z`|BÃE�WSUTW[^�EiIXÁ[^h�eghIk�Ä��fÅÂV{cunuTWVza�[�pO�8at_b_�ÆGe�Z*[gjuevcD[gjDVbaoXd�lÇ}mWjDjue¸|<È�Vz_b_É�~½ÊI�W��c�TfegXUZ*adadh��ËegkWa1e¸yvegVb_Ye�ZW_za(mWhIklatj�e�_bVYn�athIXÁa(prjD[g�:cwTWa���atXÁcwatjwh�̳_zatn�cwjDVzn4Í8[g�EiIegh`|g�SUTWVYX7kW[`ndmW�Eadh\cB�Ëe¸|În�[^h^cue�VzhÏVbhWpr[gjD�Ee�cwVz[ghÐnd[vygadjDatkÑZ`|Î[ghWaq[^j<�E[gjDaq_zVzndadhIXwatXt��n�[^i\|`jDVb�^T\cDX<eghIkÎhW[ghWÒ�klVYXDn�_z[^XwmWjwaeg�gjDadad�Eath^cuXd�³Í8VzjDndmW_ze�cwVz[gh�[�p,cwTWVYX�kl[lndmW�Eadh\cÂVzXÂjDatXÁcwjDVYn¥cwaok<cD[ETW[g_YkladjuXU[�pOe�_bVYn�athIXwa½pr[^jUcwTWa4x½~���¾Ó�l[�pÀcs�Ue�jDa1�`|lXÁcwat�prjD[g�M��atXÁcwatjwh}Ì$_baon¥cwjDVYn��OÔ�_z_�[�cDTWadj�ndVbjun�mI_ze�cwVz[gh�[gjUjwatiWjD[`kWmIn¥cDVb[^hBVYXÂiWjD[gTWVzZWVbcwaokF�

nÕ Í8[gi`|`jDVb�^T^c1Öt×`�g�4ÊI�IƺVb[^hIX

Page 2: A Commentary on the Sixth Edition UNIX OS -- Lions
Page 3: A Commentary on the Sixth Edition UNIX OS -- Lions

�������������

�� �������������������� � �Ög�zÖ SUTWa4x½~���¾"!½i*adjuevcDVbhI�E�`|lXÁcwat� ���1��� ÖÖg� � x�cwVz_bVbcwVzatX �����1���1���1�����1���(���1��� ÖÖg� # !�cDTWadj�Ľ[ln�mW�Eath^cuevcDVb[^h ���1���(���1��� ÖÖg� $ x½~���¾&%$jw[^�gjue��E�Eadj�' X8Çqe�h`mIeg_"���1��� ÖÖg� � x½~���¾¿Ä½[ln�mW�Eadh\cuX����1�����1���(���1��� �Ög� � x½~���¾"!½i*adjuevcDVbhW�Ë�`|lXÁcwad� �`[gmIjDnda4Í8[lkla �Ög� � �`[^mWjun�a�Í8[lkla��`ad_zatn�cwVz[ghIX����1���(���1��� #Ög� ( �`[^mWjun�a�Í8[lkla*),Vb_zatX����1�����1���(���1��� #Ög� × x½XÁa�[gpGcDTWatXwa1hW[�cDatX �1�����1���(���1��� #Ög�zÖt�ÎÔ ~�[�cwa�[^h+%$jw[^�gjue��E�EVbhI���\cue�hIkWegjDkIX�� #

,.-�������/10324����/15�6 7�l�zÖ SUTWa*%$jw[lndatXDXÁ[^j½���1���1�����1���(���1��� $�l� �8%$jw[ln�aoXwXw[gjÂ�\cuevcwmfXÂ��[^jDk ���1���(���1��� $�l� # �(athWadjue�_�ÅÂat�gVYXscDadjuXË���1�����1���(���1��� $�l� $ ��hIXÁcwjDmIn�cwVz[ghq�`a�c �1���1�����1���(���1��� $�l� � Ô½kWkljDatXDXÁVzhW�ËÇ}[lklatX �1�����1���(���1��� ��l� � x�hWV:9�Ô�XDXÁat��ZW_zadj��1���1�����1���(���1��� ��l� � Ç}at�E[gjD|7Çqe�hfe��gat�Eadh\c ���1���(���1��� ��l� ( �`at�g�Eadh\cuevcwVz[gh�ÅÂat�gVYXscDadjuXd� �1���(���1��� ��l� × %Oeg�ga1Ä�aoXwndjwVzilcwVz[gh}ÅÂat�gVYXscDadjÓ���(���1��� (�l�zÖt�ÎÇ}at�E[gjD|7Ô�_z_b[lntevcwVz[ghL�1�����1���(���1��� (�l�zÖgÖ�Ç}at�E[gjD|.ÇqeghIe��^ad�Eadh\c8�\cuevcwmfX$ÅÂat�gVYXscDadjuX;(�l�zÖo�=<wV?>Ee�hfk@<Dk1>E�`iIegndatX �1�����1���(���1��� (�l�zÖ�# ��hWVbcwVYe�_¢Í8[ghIklVbcwVz[ghfX<���1�����1���(���1��� (�l�zÖA$Ð�`i*atndVzeg_ºÄ½ady`Vznda4ÅÂad�^VzXÁcwatjDX �1���(���1��� (

BDCE2F/1������GIH4J�K3LM�N�OGO�N/10P6 �FQ#W�zÖ��`[^�Ea��`ad_zatn�cwatk�ÌR9leg�EiW_baoX��1���(���1��� Öt�#W� � ÌR9leg�EiW_baEÖ<���1���1���1�����1���(���1��� Öt�#W� # ÌR9leg�EiW_ba4�����1���1���1�����1���(���1��� Öt�#W� $ ÌR9leg�EiW_baS#}���1���1���1�����1���(���1��� Öt�#W� � ÌR9leg�EiW_baM$q���1���1���1�����1���(���1��� ÖgÖ#W� � ÌR9leg�EiW_ba4�����1���1���1�����1���(���1��� Öo�#W� � ÌR9leg�EiW_ba��}���1���1���1�����1���(���1��� Ö�##W� ( ÌR9leg�EiW_ba������1���1���1�����1���(���1��� Ö�##W� × ÌR9leg�EiW_baS(}���1���1���1�����1���(���1��� Ö�##W�zÖt�ÎÌR9leg�EiW_ba�×}���1���1���1�����1���(���1��� ÖA$#W�zÖgÖ�ÌR9leg�EiW_baEÖo�/�1���1���1�����1���(���1��� ÖA$#W�zÖo� ÌR9leg�EiW_baEÖ^Ö3�1���1���1�����1���(���1��� ÖA$#W�zÖ�#ÎÌR9leg�EiW_baEÖ¸�:�1���1���1�����1���(���1��� Öo�#W�zÖA$ÏÌR9leg�EiW_baEÖ�#/�1���1���1�����1���(���1��� Öo�#W�zÖo� ÌR9leg�EiW_baEÖ�$"�1���1���1�����1���(���1��� Öo�#W�zÖt�ÎÌR9leg�EiW_baEÖ¸�:�1���1���1�����1���(���1��� Öo�#W�zÖ¸�ÑÌR9leg�EiW_baEÖo�/�1���1���1�����1���(���1��� Öt�#W�zÖ�(ÎÌR9leg�EiW_baEÖv�M�1���1���1�����1���(���1��� Öt�

7UTE�WVYXO24��XZ��24[ �F\$I�zÖ^]³egjwVYe�ZW_za�Ô�_z_b[lntevcwVz[ghL�1�����1���(���1��� Ö�($I� � �(_z[gZIeg_Z]³e�jDVYe�ZW_zatX ���1�����1���(���1��� Ö�($I� # SUTWaY_{Í`'a%$jwatiWjw[lndatXDXÁ[^j<�����1���(���1��� Ö�($I� $ �`aon¥cDVb[^hb!½hIa �1���1���1�����1���(���1��� Ö�($I� � SUTWa*),VzjDXÁc½�(jD[gmWi�[�pc_z� TZ'a),Vz_baoXU�(���1��� Öt×$I� � Ô½XwXwad�.ZW_b|�ƺeghW�gmIeg�gad)GVz_zatXJ���(���1��� Öt×

$I� � !�cwTIadje),Vb_zatX�Vbhq�`aon¥cwVz[ghb!½hWa4�1�����1��� Öt×$I� ( �`aon¥cwVz[gh}SU��[q���1�����1���(���1�����1��� Öt×$I� × �`aon¥cwVz[gh}SUTWjDada �1�����1���(���1�����1��� ���$I�zÖt�Ï�`aon¥cwVz[ghf)I[gmWjU���1�����1���(���1�����1��� ���$I�zÖgÖ��`aon¥cwVz[ghf),Vzyga}���1�����1���(���1�����1��� �lÖ

g.hS[i�P-j�k5�2F6 , ,�l�zÖ SUTWa*),Vz_baY_ �Ëe�_z_b[ln�� n�'Ñ�1���(���1�����1��� �g��l� � ÅÂmW_zatXÂpr[gj�Æ�VYXÁc�Çqe�Vzh\cwadhfe�hIndaJ�����1��� �g��l� # �Ëe�_z_b[lnYl �^�g�m(on �1�����1���(���1�����1��� ��#�l� $ ��prjwatapl �^�g���4n¢���1�����1���(���1�����1��� ��#�l� � ��h}n�[^hIn�_zmIXwVb[^h��z�b�8�����1���(���1�����1��� �N$�l� � SUTWa*),Vz_baY_ iWjwps� nm'Ð�����1���(���1�����1��� �N$�l� � iWjDVbh\cwpqlÉ��#�$\�onJ�1�����1���(���1�����1��� �N$�l� ( iWjDVbh\cDhrlÉ��#^�g×on:�1�����1���(���1�����1��� �g��l� × iWmlcunuTIe�j*lÉ��#o(g�on �����1���(���1�����1��� �g��l�zÖt� iIeghWVznslÉ�N$fÖt×on����1�����1���(���1�����1��� ����l�zÖgÖ�iWjukladytl �N$4#m#4n¥�WklatygadjDjD[gjMl �N$o$`�mnÐ���1��� ����l�zÖo�Ñ��hInd_bmIkWatku),Vb_zatX��1�����1���(���1�����1��� ���v8w+24�A���k��GPxZ��/y����24� ,O\�W�zÖD!½i*adjuevcw[^jÂÔ�n¥cDVb[^hIX����1���(���1�����1��� ��(�W� � XÁcDe�jwc*l¨�^�WÖo�onÎ���1�����1���(���1�����1��� ��(�W� # �Ëe�VzhzlsÖo�^���4n}���1�����1���(���1�����1��� ��×�W� $ %³jD[ln�aoXwXwatX �1���1�����1���(���1�����1����#g��W� � ��hWVbcwVYe�_zVzXDevcDVb[^hB[gp,iIjw[lnm{ �N|.�(���1�����1����#g��W� � SUTWa4XÁcw[^jw|<nd[gh\cwVzh`mWatX1�z�b�&�(���1�����1����#g��W� � XDnuTWatk}lsÖo×�$^�4nU���1�����1���(���1�����1����#WÖ�W� ( Xw_batadizl �g�g�g�4n����1�����1���(���1�����1����#WÖ�W� × Xw�UcDnuTzl �WÖ¸�N(4nQ�1�����1���(���1�����1����#WÖ�W�zÖt� �Ëe�Vzh�jwaty\VYXwV{cDatk��1�����1���(���1�����1����#^�~ LM�N�Z�m2F6�6�2F6 B B�`�zÖ SUTWa*%$jw[ln�aoXwXB���1�����1���(���1�����1����#m#�`� � SUTWa�iWjD[ln��\cwjDmIn¥cDmWjDaYl �m#\��(on��1�����1����#m#�`� # SUTWa�mIXwadj��`cwjDmIn¥cDmWjwasl ��$IÖ�#onÎ�1�����1����#�$�`� $ SUTWa*%¢atjq%$jw[lndatXDX�Ä(evcueEÔ�jDate �����1����#�$�`� � SUTWa��`at�g�Eadh\cuX<�1�����1���(���1�����1����#�$�`� � Ì�9laon�mlcDVb[^hB[gp¢eghB���Ëe��^a �(���1�����1����#^��`� � Ã1adjDhWat_�Ç}[lkla4Ì�9latndmlcwVz[gh ���1�����1����#^��`� ( x�Xwadj�Çq[`kWa4Ì�9latndmlcwVz[gh �(���1�����1����#^��`� × Ô�h}ÌR9leg�EiW_ba����1�����1���(���1�����1����#^��`�zÖt�Ï�`adcÁcwVzhW�EcDTWa��`ad�^�Eadh\cDe�cwVz[gh�ÅÂad�^VzXÁcwatjDX���#g��`�zÖgÖ�atXÁcDegZWmWj*lÁÖt�^�g�on �����1���(���1�����1����#g��`�zÖo� XwmWjwat�flsÖ¸��#g×4n����1�����1���(���1�����1����#g��`�zÖ�# hWat�ÂiWjw[lnYlsÖ�(^�g�onÑ�����1���(���1�����1����#\�\DLM�N�Z�m2F6�6s��/1��/1GO2F0P2F��� B \

(W�zÖ�%³jD[ln�aoXwXÂ�`�ÂVbcDnuTWVzhW�����1���(���1�����1����#m((W� � ��h\cwatjwjDmWilcuX �1���1�����1���(���1�����1����#m((W� # %³jD[g�^jDeg�M�`��egiWiWVzhW� �1���(���1�����1����#m((W� $ Ê^[gZIX?���1���1���1�����1���(���1�����1����#m((W� � Ô�XDXwad��ZI_batje%³jD[`ndatklmIjwaoXA�(���1�����1����#m((W� � XDe¸y\mrl¨�`���^�mn3���1�����1���(���1�����1����#m((W� � jDa�cwmzl �\��$\�on ���1�����1���(���1�����1����#g×(W� ( e�jDa�cDm}l �\��#�$4n����1�����1���(���1�����1����#g×(W� × Xw�UcDnuTzl �WÖ¸�N(4nQ�1�����1���(���1�����1����#g×

V

Page 4: A Commentary on the Sixth Edition UNIX OS -- Lions

(W�zÖt�ÎXwa�cDiWjwVcl �lÖ¸���4n ���1���1�����1���(���1����#g×(W�zÖgÖ�Xw_batadizl �g�g�^�on��1���1���1�����1���(���1��� $^�(W�zÖo�Ñ�Ue�]^admWirl �WÖgÖ�#4n �1���1�����1���(���1��� $^�(W�zÖ�#ÎXwa�cDjwmWhzlÉ�lÖ�#m$4n3���1���1�����1���(���1��� $^�(W�zÖA$ÎaA9`ife�hIkrl �^���o(onU���1���1�����1���(���1��� $^�(W�zÖo� Xw�UcDnuT�jDady`VzXwVbcwatk �1���1�����1���(���1��� $IÖ(W�zÖt�ÐÍ8jDV{cDVznte�_º�`aon¥cDVb[^hIX ���1�����1���(���1��� $IÖ

���f/y�N��[i/y�N2t A����24����������6s/1��� hc��/���6 7�,×W�zÖ È½e�jukl��egjwa(��h\cwatjwjDmWilcuX?�����1���(���1��� $\�×W� � SUTWa���h\cDadjDjwmWiWcq]Oaon¥cD[gj������1���(���1��� $\�×W� # ��h\cwatjwjDmWilc�Ƚe�hIkW_batjDX3�1�����1���(���1��� $\�×W� $ %$jwVz[gjDV{cDVbaoX ���1���1���1�����1���(���1��� $o#×W� � ��h\cwatjwjDmWilc%$jwVz[gjDVbcwVzatX��1�����1���(���1��� $o#×W� � ÅÂmI_baoXUpr[gjÂ��h\cwatjwjDmWilc�Ƚe�hIkl_zadjuX½�(���1��� $o#×W� � SGjDegiIXJ�(�����1���1���1�����1���(���1��� $o#×W� ( Ô½XwXwad�.ZW_b|�ƺeghW�gmIeg�gai_ cDjDegiZ'����(���1��� $m$×W� × ÅÂadcwmWjDh �(�����1���1���1�����1���(���1��� $m$

�yQfh���2 T 6�6�2F0�5�24�tHmh �N/���K@C �O�����k��2 7�gÖt�I�bÖ��`[^mWjun�atXU[gp,SGjDegiIXÂe�hfkB��h\cDadjDjwmWiWcDX<�1��� $\�Öt�I� � prmWVzZ`|\cwapl¨�o(WÖ�$4n¥�`prmIVb��[gjuktl �m(m$m$4n����1��� $\�Öt�I� # ��h\cwatjwjDmWilcuX ���1���1���1�����1���(���1��� $^�Öt�I� $Ïnte�_z_ l¨�`�g�v�4n4���1���1���1�����1���(���1��� $^�Öt�I� � x½XÁatj%³jD[g�^jDeg�3SGjDegiIX"�����1���(���1��� $^�Öt�I� �ÎSUTWa4Ã1atjwhIad_º�\cuegnu]Ï���1�����1���(���1��� $`�� �+J�5��Z� � �����24���N������6 7 \ÖgÖ^�bÖ�nd_b[lnu] lk#\���^�mn��1���1���1�����1���(���1��� $o(ÖgÖ^� � cDVb�Ead[^mlcil�#o(�$`�mnA�1���1�����1���(���1��� $^×�1,uhc��/���6p/a���Ix��Z6���2F0 J�/15�5k6 gaQÖo�W�bÖ�cDjDegirlÉ���^×m#on��1���1���1�����1���(���1��� ���Öo�W� � Ã1atjwhWat_�Ç}[lkla4SGjDegiIXË�1�����1���(���1��� ���Öo�W� #Îx½XÁatj�Ç}[lkla�Sºjue�ifX����1�����1���(���1��� ���Öo�W� $Ð�`|lXÁcwat� Í�e�_z_YX-���1���1�����1���(���1��� �lÖÖo�W� �Î�`|lXÁcwat� Í�e�_z_�È�eghIkl_zadjuX ���1���(���1��� �g�Öo�W� �ÎSUTWa*),Vz_baY_ Xw|`Xw_É� nm'8�1���1�����1���(���1��� �g�Öo�W� � aA9`aonsl�#^�^���4n �1���1���1�����1���(���1��� �g�Öo�W� (Ñpr[^jw] lk#m#\�g�mn �1���1���1�����1���(���1��� ��#Öo�W� ×ÎXwZWjDate�]tl�#m#\�N$FnÐ���1���1�����1���(���1��� ��#Öo�W�bÖo�gSUTWa*),Vz_baoXM_ XÁ|lXu�l� n�'le�hIkt_ XÁ|lX #W� n�'q���1��� ��#Öo�W�bÖ^ÖtSUTWa*),Vz_baY_ Xw|`X $I� n�'����1�����1���(���1��� ��#�yB x���� � [i/y�N2} �����24���N������6 g17Ö�#I�bÖ�Ô�h^cDVzndVbifevcwVz[gh��1���1���1�����1���(���1��� �N$Ö�#I� �ÏÍ�egmIXwe�cwVz[gh ���1���1���1�����1���(���1��� �N$Ö�#I� #ÎÌ��*aon¥cQ�(�����1���1���1�����1���(���1��� �N$Ö�#I� $ÏSGjDe^n�VzhW� �����1���1���1�����1���(���1��� �N$Ö�#I� � %$jw[ln�aoklmWjDatX �1���1���1�����1���(���1��� �N$Ö�#I� �ÎÔ��IÔ�h\cwVYn�VziIe�cwVz[ghM�1���1�����1���(���1��� �g�Ö�#I� �Ñ�(�*Í�egmIXwe�cwVz[gh ���1���1�����1���(���1��� �g�Ö�#I� (Ðͽ�IÌ��*aon¥c������1���1���1�����1���(���1��� �g�Ö�#I� ×ÎÄ.�fSGjDe^n�VzhW�7���1���1���1�����1���(���1��� �g�Ö�#I�bÖo�gXDXÁVz�fl�#^�WÖA$Fn����1���1���1�����1���(���1��� �g�Ö�#I�bÖ^Öd]`Vz_b_ lk#g�o#g�on����1���1���1�����1���(���1��� �g�Ö�#I�bÖ¸��XwVb�^hIe�_Rlk#g×m$^×on ���1���1�����1���(���1��� �g�Ö�#I�bÖ�#�iIXwVz�ghIeg_Rl�#g×^�m#4n4���1���1�����1���(���1��� �g�

Ö�#I�bÖ�$gVYXwXwVb�flk#g×g×IÖ�n ���1�����1���(���1�����1��� ���Ö�#I�bÖ¸�viIXwVb�fl�$^��$4#on ���1�����1���(���1�����1��� ���Ö�#I�bÖo�gn�[^jwasl�$^�g×m$4n ���1�����1���(���1�����1��� ���Ö�#I�bÖv�¸�gjD[v�&l�$IÖ�#^�onÑ���1�����1���(���1�����1��� ���Ö�#I�bÖ�(�a�9lVbcil�#\�lÖt×4nO�1���1�����1���(���1�����1��� �^�Ö�#I�bÖo×�jDa�9lV{c*lk#^���\�mn����1�����1���(���1�����1��� �^�Ö�#I� �g���Ue�VbcSlk#^�\�v�on ���1�����1���(���1�����1��� �^�Ö�#I� �WÖtSGjDe^n�VzhW� ���1���1�����1���(���1�����1��� �^�Ö�#I� �^��XÁcw[gizl�$^�WÖo�on ���1�����1���(���1�����1��� ��(Ö�#I� �m#��Ue�VbcSlk#^�\�v�ondl n�[gh\cDVbh`mWaokan ���1�����1��� ��(Ö�#I� ��$gilcDjDe^n�asl $fÖt��$Fn �1�����1���(���1�����1��� ��(Ö�#I� �^�viWjD[ln 9l�4c*l $`���m$4nÑ�����1���(���1�����1��� ��×�F7bLM�N�OGO�N/10 xZ[i/������k��G v QÖA$f�bÖ�SGa�9`c½�`ad�^�Eadh\cDX �����1���(���1�����1��� �g�ÖA$f� � XDnuTWatk}lsÖo×�$^�4nU���1�����1���(���1�����1��� �g�ÖA$f� #@9WXÁ�Ue�irl $4#g�o(on"�1�����1���(���1�����1��� �WÖÖA$f� $ 9We�_z_b[lnYl $o$o#o#on �1�����1���(���1�����1��� �WÖÖA$f� �39`prjwatasl $o#^×m(4n����1�����1���(���1�����1��� �^��1gu ����A�N�Z���������k�O� ������/a6��k�+ �OV v BÖo�W�bÖ�SUTWa*),Vz_baY_ ZWmlps� TZ'1�����1���(���1�����1��� �m#Öo�W� � klaty^cue�Zzl $`�g�WÖ�n��1�����1���(���1�����1��� �m#Öo�W� #ÎSUTWa*),Vz_baY_ n�[^hlps� T�'M���1���(���1�����1��� �m#Öo�W� $ÏSUTWa*),Vz_baY_ n�[^hlps� nm' ���1���(���1�����1��� �m#Öo�W� �Î�`|lXÁcwad� �(adhWatjDe�cwVz[gh"�1���(���1�����1��� �m#Öo�W� �ÎXw��egi}lÉ�lÖt×^�on����1�����1���(���1�����1��� �m#Öo�W� �ÑÅ�e^n�a�Í8[ghIkWV{cDVb[^hIXQ���1���(���1�����1��� ��$Öo�W� (ÎÅÂatadh\cwjue�hInd| ���1�����1���(���1�����1��� �^�Öo�W� × )W[^jUcwTWa4x�hWVzhWV{cDVze�cwaokÏ�1���(���1�����1��� �^�Öo�W�bÖo�gÔ�kIklV{cDVb[^hIe�_GÅÂate^klVbhI�q�1���(���1�����1��� �^��yvfh���2bC���� �k6���� �N� X 2o� v vÖt�I�bÖ�SUTWa �I_zaY_ jw]¼� n�'��1�����1���(���1�����1��� �g�Öt�I� �ÑjD]`XÁcwjuevcDad�^|bl ��#o(g×4n����1���(���1�����1��� �\�Öt�I� # jD]¸e^kWklj*lÉ�N$\�g�onÑ�1�����1���(���1�����1��� �\�Öt�I� $Ïklaty`XÁcDegjÁc*lÉ���g×^�on �����1���(���1�����1��� �\�Öt�I� �ÑjD]\Vzh\cwj*lÉ�N$\�WÖ�n �1�����1���(���1�����1��� �\�Öt�I� � Vz[`kW[ghWasl �g�WÖ�(on �1�����1���(���1�����1��� �\�� ~ ����! 24�E��/a���"����5�/y����� � v \Ö¸�l�bÖz),_zeg�^X����1���1���1�����1���(���1�����1��� �m(Ö¸�l� � Ô¿Í�egnuTIa�Ò�_bVz]ga1Ç}ad�E[^jw| �(���1�����1��� �m(Ö¸�l� #În�_zjDZWmlpjl ���o#m(4n5�1�����1���(���1�����1��� �m(Ö¸�l� $ÎVzhIn�[^jwasl $4(g×^×on��1�����1���(���1�����1��� �m(Ö¸�l� �Ñ�gadcwZW_z]tl�$^×\�lÖ�n:�1�����1���(���1�����1��� �m(Ö¸�l� � ZWjDad_YXÁasl�$o(g�^×on �1�����1���(���1�����1��� �g×Ö¸�l� � ZWVzhWVbc�l �g�^�g�onÎ���1�����1���(���1�����1��� �g×Ö¸�l� ( ZWjDate^ktl�$`����$4nJ�1�����1���(���1�����1��� �g×Ö¸�l� × ZWjDate^kWeul $`�^�N#4n}�1�����1���(���1�����1��� �v�Ö¸�l�bÖo��Z`�ÂjwVbcwasl�$o(g�^×onÓ�1�����1���(���1�����1��� �v�Ö¸�l�bÖ^ÖdZIe¸�ÂjDV{cDasl $o(\���4nQ�����1���(���1�����1��� �v�Ö¸�l�bÖ¸�vZ¼kl�ÂjwVbcwapl�$o(o#g�on �����1���(���1�����1��� �v�Ö¸�l�bÖ�#�Z�#ImfXÁTzl �^�g�g×on��1�����1���(���1�����1��� �v�Ö¸�l�bÖ�$giWT`|lXÁVz[fl �^�g��×4n �1�����1���(���1�����1��� �v�

VzV

Page 5: A Commentary on the Sixth Edition UNIX OS -- Lions

�y\f-j��5k2fTE�o�m2F6�6s/a��� J�� ���A�N�O5 ~ �Ö�(I�bÖz),Vz_ba.Í8TIegjDe^n¥cDadjDVzXÁcwVYndX��1�����1���(���1��� �`ÖÖ�(I� �Î�`|lXÁcwat� Í�e�_z_YX-���1���1�����1���(���1��� �`ÖÖ�(I� #ÐÍ8[^h^cDjw[^_�SGegZW_zatX5�1���1�����1���(���1��� �`ÖÖ�(I� $ �I_zapl �^���`��nÏ���1���1���1�����1���(���1��� �`ÖÖ�(I� �ÑVzhW[lklapl �g�^�g×onÂ�1���1���1�����1���(���1��� ���Ö�(I� �ÎÅÂaoXÁ[^mWjun�atXÂÅ�a � mWVzjwaokq�1�����1���(���1��� ���Ö�(I� � !½i*adhWVzhW�<eY),Vb_za �1���1�����1���(���1��� ���Ö�(I� (Îndjwaoevc*l �\�N(WÖ�nq�1���1���1�����1���(���1��� ���Ö�(I� × [^ifathW_ l �m(g�m$4nÂ�1���1���1�����1���(���1��� ���Ö�(I�bÖo��[^ifathrlÉ�^���m#on �1���1���1�����1���(���1��� �N#Ö�(I�bÖ^Öd[^ifathW_�jDady`VzXwVbcwatk �1���1�����1���(���1��� �N#Ö�(I�bÖ¸��nd_b[\XÁasl �m(�$\�onÏ�1���1���1�����1���(���1��� �N#Ö�(I�bÖ�#gnd_b[\XÁadpql �g��$4#onU�1���1���1�����1���(���1��� �N#Ö�(I�bÖ�$gVziWmlc�l��N#m$m$4n �1���1���1�����1���(���1��� �N#Ö�(I�bÖ¸��Ľad_za�cDVb[^h�[gp�),Vz_baoX ���1�����1���(���1��� �N#Ö�(I�bÖo�gÅÂaoegklVzhW�Ëe�hfkB��jDV{cDVbhW�������1���(���1��� ��$Ö�(I�bÖv�¸jukl�Âj*l �\�N#IÖ�nÏ�1���1���1�����1���(���1��� ��$Ö�(I�bÖ�(�jDate^klVRl¨�\�g�lÖ�nq�1���1���1�����1���(���1��� ���Ö�(I�bÖo×��ÂjDV{cDadV �(�����1���1���1�����1���(���1��� ���Ö�(I� �g��Vz[g�E[vygaYl¨�o#g�m$4nE���1���1�����1���(���1��� ���Ö�(I� �WÖdZW�Ëegirl ��$fÖo�mnJ���1���1�����1���(���1��� ���Ö�(I� �^��ƺa�pÀcw[vy^adjuX$�����1���1���1�����1���(���1��� �v����f-j��5k2 � ���N24�m���O�N��2F6Y/1��� � ����2F�m���O� � -j��5k246 ~O~Öt×I�bÖ�SUTWa4ĽVzjwaon¥cw[^jw|BĽe�cDeË�\cwjDmIn�cwmWjDa����1��� �g�Öt×I� � ĽVbjDatn�cw[^jw|E),Vz_baoX �1���1�����1���(���1��� �g�Öt×I� # hIeg�EadV l����lÖ�(on����1���1�����1���(���1��� �g�Öt×I� $Ð�`[^�Ea.Í8[g�E�Eadh\cDX����1�����1���(���1��� �N(Öt×I� �Ñ_zVbhI]tl �g×g�^×onO���1���1���1�����1���(���1��� �v×Öt×I� � ��klVzjil���$`�^��n �1���1���1�����1���(���1��� �v×Öt×I� � �Ëe�]`hW[lklapl���$`�g�mn8�1���1�����1���(���1��� �v×Öt×I� ( mWhI_bVzhW]tlk#^�WÖt�onÓ���1���1�����1���(���1��� �v×Öt×I� × �E]`hW[lkrl ��×\�g�on<���1���1�����1���(���1����(g�Öt×I�bÖo�ge^ndn�aoXwXSl �\�N$^�on ���1���1�����1���(���1����(g�,OQf-j��5k2 x �Z6���2F0P6 \Z����I�bÖ�SUTWaY_ �`mWi*adj½�8_z[lnu]�'Zl �g�g�WÖ�n ���(���1����(WÖ���I� � SUTWas' �E[gmWh\c�'lcDegZW_basl �^�^�g�mn ���(���1����(WÖ���I� # VzVbhIV{c�l �g×\�g�mn �1���1���1�����1���(���1����(WÖ���I� $ÏÇ}[^mWh\cwVzhW�-���1���1���1�����1���(���1����(^����I� � Xw�E[gmWh\cil¨�^�m(^�on �1���1�����1���(���1����(^����I� �Î~�[�cwaoX �(�����1���1���1�����1���(���1����(^����I� � Vz�gadcilÉ���\�v�4n$���1���1���1�����1���(���1����(^����I� ( �^a�cÁp¨XilÉ�`Öo�\�mn �1���1���1�����1���(���1����(m#���I� × mWi¼kWe�cwaplÉ�g���IÖ�nE���1���1�����1���(���1����(m#���I�bÖo�gXwmW�E[gmWh\cil �WÖA$o$4n��1���1�����1���(���1����(�$���I�bÖ^ÖtÅÂaoXÁ[^mWjun�a�Ô�_z_b[lntevcwVz[gh �����1���(���1����(�$���I�bÖ¸��eg_b_z[ln�l �g×^�^�mnL�1���1���1�����1���(���1����(�$���I�bÖ�#�VbcwjDmWhInsl���$IÖ�$4n����1���1�����1���(���1����(�$���I�bÖ�$�prjDadapl��v�g�^�onU���1���1���1�����1���(���1����(^����I�bÖ¸�vVziWmlc�l��N#m$m$4n �1���1���1�����1���(���1����(^����I�bÖo��VbprjwataplÉ�lÖ�#�$Fn �1���1���1�����1���(���1����(^����I�bÖv�¸VzmWi¼kWevc�l��N#`��$4nÑ���1���1�����1���(���1����(^�

,Z�ELS� � 2F6 \ ~�lÖ^�bÖ�iWVzifapl��g�g��#on ���1�����1���(���1�����1����(\��lÖ^� �ÑjDategkWi}l��g���m(onJ�1�����1���(���1�����1����(\��lÖ^� # �ÂjDV{cDadizlÉ��(g�^�on �1�����1���(���1�����1����(\��lÖ^� $ÎiW_z[lnu] lÉ��(g�^�on1���1�����1���(���1�����1����(\��lÖ^� �ÑiWjDad_zaslÉ�N(o(^�on����1�����1���(���1�����1����(\�, ,bJ ��/y�N/1�m��24�bVY�N��2F����2F� x�� 2F�m��/a5c-j�k5�2F6 \ \�g�W�bÖ�Æ�%�ÖgÖ1Æ�VzhWa*%³jDVzh^cDadjÂĽjwVzygatj �1�����1����(m(�g�W� �Ñ_zif[^ifathrlk(m(\���on&�1�����1���(���1�����1����(m(�g�W� #Î~�[gcwaoXJ�1���1���1�����1���(���1�����1����(m(�g�W� $Î_zif[^mlcwiWmWc�l�(^×m(g�4n������1���(���1�����1����(g×�g�W� �Ñ_ziIXscue�jwc*l�(g×^�\�mn��1�����1���(���1�����1����(g×�g�W� � _ziWVbhIV{c�l�(g×`�v�4n ���1�����1���(���1�����1����(g×�g�W� � _zi\�ÂjDVbcwasl�(o(\�v�4nE�1�����1���(���1�����1����(g×�g�W� (ÎĽVzXDn�mIXDXwVb[^h��1���1�����1���(���1�����1��� ×g��g�W� × _zi*nte�hW[^hrlk(m(`�v×on �����1���(���1�����1��� ×g��g�W�bÖo�m)W[^jÂVzkW_ba�jDate^kladjuX��¢Ô XwmW�g�^atXÁcwVz[ghÐ���1��� ×WÖ�g�W�bÖ^Ö�%�Í$ÒuÖgÖ"%Oe�i*adjLSGegifa ÅÂate^kladj��N%$mWhInuTĽjwVzygatj3�1���1���1�����1���(���1�����1��� ×WÖ,OB J ��/y�N/1�m��24� �f/1����5��k��G ��,��#I�bÖ�n�VzhWVbcil�(\��#�$Fn ���1�����1���(���1�����1��� ×m#��#I� �Ñ�gadcDnYl¨�^×m#^�on ���1�����1���(���1�����1��� ×m#��#I� # iWmlcunsl¨�^×g�\�mn ���1�����1���(���1�����1��� ×m#��#I� $ Í8TIegjDe^n¥cwatj��`a�cuX5�����1���(���1�����1��� ×�$��#I� �ÏÍ8[gh\cDjw[^_GÍ8TIe�juegn�cwadjuX��1���(���1�����1��� ×�$��#I� �Ï�(jue�iWTWVYn4Í8TIe�juegn�cwatjDX½�1���(���1�����1��� ×�$��#I� � �(jue�iWTWVYn4Í8TIe�juegn�cwatjÂ�la�cDXQ���1�����1��� ×�$��#I� ( �Ëe�ilcue�Zzl�(IÖgÖv��n �����1���(���1�����1��� ×^���#I� × iIegjÁcue�ZrlÉ�v×m$`�mn��1�����1���(���1�����1��� ×^�,a7b �����24�N/1�m��� X 2th 24�N0P����/15�6 � v�N$f�bÖ�SUTWas' cÁcs|�'f�\cDjwmfn¥cwmIjwaslÉ��×^�g�on��1�����1��� ×g��N$f� � ��h^cDadjuegn�cwVzyga1Sºatjw�EVzhIe�_YX��(���1�����1��� ×g��N$f� # ��hWVbcwVYe�_zVzXDevcDVb[^h �1�����1���(���1�����1��� ×\��N$f� $ÏXÁcÁcs|tlk(WÖ�(m#on ���1�����1���(���1�����1��� ×\��N$f� � Xw��cÁcs|tl�(^�g�WÖ�n}���1�����1���(���1�����1��� ×\��N$f� � ]`_zXw��cwcs| l�(^�g×^�on��1�����1���(���1�����1��� ×\��N$f� ��cs|lXscs|tl�(^�\�g�mn}���1�����1���(���1�����1��� ×\��N$f� (ÎSUTWa ĽÆ$ÖgÖ��vÃ�ƳÖ^Ö Sºatjw�EVzhIe�_�Ľady`VzndaÈ�eghIkl_zadj ���1���1�����1���(���1�����1��� ×\��N$f� ×ÎĽady`Vznda4ÅÂad�^VzXÁcwatjDX-���1���(���1�����1��� ×m(�N$f�bÖo�gx�~��s�Ux½��Ô�kIkljwaoXwXwatX��1���(���1�����1��� ×m(�N$f�bÖ^Öo�`[gpÀcs��egjwa4Í8[ghIXwVYkladjuevcDVb[^hIX¿���1�����1��� ×m(�N$f�bÖ¸�v��h\cwatjwjDmWilcj]Oatn�cw[^j�Ô�kWkWjwaoXwXwatXQ�����1��� ×m(�N$f�bÖ�#^�`[^mWjDnda�Í8[`kWa����1�����1���(���1�����1��� ×m(�N$f�bÖ�$g]`_b[^ifathzl�(g�\��#4n��1�����1���(���1�����1��� ×g×�N$f�bÖ¸�v]`_znd_b[\XÁaslk(g�^�^�mnÑ�1�����1���(���1�����1��� ×g×�N$f�bÖo��]`_:9lVzh\cil�(g�`�v�4n5�1�����1���(���1�����1��� ×g×�N$f�bÖv�¸]`_bjDVzh^c*lk(g�\��(on8���1�����1���(���1�����1��� ×g×, guh���2b-j��5k2 H��A� ���?�mK �FQ���g�W�bÖ #ImIXwT\cÁcs|}l�(^�^�g�on �����1���(���1�����1��� Öt�WÖ�g�W� �Ñ� #ImIXwT\cÁcs|}l�(^�WÖ¸�mnQ���1���(���1�����1��� Öt�WÖ�g�W� #ÐÍ8TIegjDe^n¥cwatjU��hWiWmlc ���1���(���1�����1��� Öt�WÖ�g�W� $ cÁcDjwaoegk}l�(\��#^�on �1�����1���(���1�����1��� Öt�WÖ

VbVzV

Page 6: A Commentary on the Sixth Edition UNIX OS -- Lions

�g�W� � nte�hW[^h}lk(^�^�N$4n ���1���1�����1���(���1��� Öt�IÖ�g�W� �Î~�[�cwaoX �(�����1���1���1�����1���(���1��� Öt�\��g�W� ��cwcs|\VzhWiWmWc�l�(o#m#m#4nÏ�1���1�����1���(���1��� Öt�\��g�W� (ÐÍ8TIegjDe^n¥cDadj!½mlcwiImlc��ËcÁcs�ÂjDV{cDasl�(^�^���4nM� Öt�o#�g�W� ×ÑcwcDXÁcDe�jwc �(�����1���1���1�����1���(���1��� Öt�o#�g�W�bÖo�vcwcwjuXscDjÁcilk(�$o(^�on3���1���1�����1���(���1��� Öt�o#�g�W�bÖ^Ö�cwcs|g[gmWcwiWmlcilk(m#`�N#on ���1�����1���(���1��� Öt�o#�g�W�bÖ¸��SGadjD�EVbhIeg_zXº�ÂV{cDT�eUjDatXÁcwjDVzn�cwatk�nuTfe�juegn¥cDadjXwa�c �1���(�����1���1���1�����1���(���1��� Öt�o#�g�W�bÖ�#gÔ��8SUTWa�cDatXÁc<pr[gjb' SÂSÂÆ�!��&ÔOSM'el Æ�VzhWa(^�\��$Fn8���(�����1���1���1�����1���(���1��� Öt�m$�g�W�bÖ�$^�(�W��hIe^n¥cDVby^a1SGadjD�EVbhfe�_YX ���1���(���1��� Öt�m$�g�W�bÖ¸�v��ad_z_ �IcwTIe�c�' XÂe�_z_ �Wpr[g_z]`X1�z�z� �1���(���1��� Öt�\�

,Ov x���G GO2F6���2F�����Z24�N�m�k6�2F6 �yQOv���I�bÖ��`aon¥cDVb[^hb!½hIa �1���1���1�����1���(���1��� Öt�^����I� �Î�`aon¥cDVb[^h�SU��[&�1���1���1�����1���(���1��� Öt�^����I� #Ï�`aon¥cDVb[^h�SUTIjwataÑ���1���1�����1���(���1��� Öt�`����I� $Ð�`aon¥cDVb[^hu)I[gmWjÂ�1���1���1�����1���(���1��� Öt�`����I� �Î�(athWadjue�_M�����1���1���1�����1���(���1��� Öt�`�

Vzy

Page 7: A Commentary on the Sixth Edition UNIX OS -- Lions

��� �������j�

SUTWVYXËZ*[`[g] VzX<eghÏevcÁcDad�Eilc<cD[�a�9liW_Ye�VzhÎVbhÐkWa�cDegVb_�cwTWah`mInd_batmIXO[�pF[^hWaÂ[�p¼cwTIa��E[^XÁc³Vbh\cwatjwaoXscDVbhI�4n�[g�EiWmWcwadj$[gilÒatjDe�cwVzhW�ËXÁ|lXÁcwad�ËX�cD[EegiWi*ate�jÂVzh�jwaon�ath^cÂ|^ate�juXt���cGVYXFcDTWa$x½~���¾ÑSUVz�Ea�Ò�XÁTfe�jDVbhW���l|`XÁcwat���o�ÂTIVznuT�jDmWhIX[^h�cwTWa8_zegjw�^adjG��[lklat_zXG[�pIĽVz�gVbcDe�_`Ì � mWVziW�Eadh\c³Í8[gjDif[^jDe�ÒcDVb[^hZ' Xc%$Äd%�Ö^Ö�n�[^��iImlcwatj8Xw|`XÁcwat���\eghIkE��e^X$klatygat_b[^ifaokZ`|ËÃ1adh7SUTI[g�EiIXw[gh<e�hfk<Ä�athWhWVYXUÅÂV{cunuTWVza½evcU��ad_z_*ÆGe�ZlÒ[^jDe�cw[gjDVzatXt����cË�UegX �IjuXscËe�hIhW[gmWhfn�atk�cw[�cwTIa���[gjD_Yk�VbhcDTWa(Ê^mW_z|g�¼Öt×`��$�VYXwXwmWa½[�p�cDTWa <¥Í8[g�E��mIhWVzntevcDVb[^hIX³[gpFcwTWaÔ�Í�Çb>I�]OadjD|7Xw[`[gh<VzhB[^mWjUa�9li*adjDVbathIn�a(�ÂV{cDT�x½~���¾.�lV{c�XwmW��Ò�^atXÁcwatkqV{cuXÁat_{pUegX(e�hqVzh\cwadjDatXÁcwVzhW��ndeghIklVYkWevcDa4pr[gj½pr[gjD�Ëe�_XÁcwmIkW|7Z`|7XÁcwmIklath\cDXt�lpr[gjUcDTWa1pr[g_z_b[v�ÂVzhW��jwaoegXw[ghIX � V{c�jwmIhIX³[^h7e�Xw|lXscDad� �ÂTWVYnuTËVzX�e�_zjwaoegkl|Ee¸yve�Vz_zegZW_zacw[EmIX� V{c�VYXÂn�[^�EiIegn�cÂeghIk�egntn�atXDXwVbZW_za� V{cÂiWjD[vy`VzkWatXUe�hBa�9`cwathIXÁVzyga�Xwa�cÂ[�p,ygatjw|EmIXDe�ZW_za(p¨evÒn�Vz_bVbcwVzatX�V{c�VYX�Vzh\cwjDVbhfXÁVYndeg_b_z|�Vzh^cDadjDatXÁcwVzhW�I�¸e�hfk½Vzh(p¨egn�cºZWjDate�]lXhWad���gjD[gmWhfk7Vzh}e.h`mW�.ZfatjÂ[�pOe�jDate^Xd�

~�[gcO_baoegXÁcOeg�E[ghW�\Xsc,cwTWaÂnuTIegjw�ËX,e�hIk.y`VbjwcwmIatX,[�pfcwTWax½~���¾MSUVz��adÒ�XwTIegjwVzhW�}�`|lXscDad� VYX(cwTWaËnd[g�EiIegn�cwhWaoXwX1[gpVbcDX<Xw[gmIjDnda�nd[lklag�LSUTWaqXÁ[^mWjun�a}n�[lkla�pr[^jËcwTWa}i*adjD�ËevÒhWath\cw_z|�jDatXwVYkladh\cE<wh\mfn�_zadmIX >Ë[�pOcDTWa.Xw|lXscDad� �ÂTWathq[ghW_z|e(XÁ�Ëeg_b_lh`mW�.ZfatjO[�pIi*adjDVbiITWadjue�_Wklaty`VzndatX,VzX¢jDadiIjwaoXÁath^cDatkF�VYXÂn�[^�.pr[^jÁcue�ZW_z|<_zatXDX�cwTIegh}×W� �g�g�._zVbhWaoXU[�pOn�[lkla^���c�TIe^X�[�pÀcDadh�Z*adath�XÁmW�^�gaoXscDatk&cwTIe�c7Ög� �g�^�7_zVbhIatX4[gpnd[`kWa�jDadiWjDatXwadh\cDX³cwTWa½iWjuegn¥cDVznte�_*_bVz�EV{cUVzh7XÁV� da�pr[gjUe4iWjD[�Ò�^jDeg�Ó�ÂTWVYnuT<VYX³cD[�Z*a�mWhfkladjuXscD[`[`k7e�hIkË�ËegVbh\cDegVbhIatkËZ`|eBXÁVzhW�g_za�VzhIklVzy`VzkWmIe�_É�(Çq[^XÁc½[gi*adjuevcDVbhI�BXw|`XÁcwat�ËX�atV{cDTWadjaA9lndadaokEcwTWVYX�_bVz�EV{cUZ`|E[ghWa½[gj$atygathËcs�8[.[gjukladjuXO[gpº�Ëe���ÒhWVbcwmfklag�¢[gj.ad_YXÁaË[ �*atj4cDTWa<mIXwadj�e}ygatjw|�_bVz�EV{cDatk�Xwa�c.[gpp¨e^n�Vz_bVbcwVzatXt�³VÉ� a^��adVbcwTWatj.cDTWa�kla�cue�Vz_zX�[�p�cwTWa�XÁ|lXÁcwat� e�jDaVzhIegntn�aoXwXwVbZI_baEcD[&e�_z_$ZWmWc4cwTWaB�E[^XÁc.kla�cDadjD�EVbhWaokF�OklatkWV{ÒntevcwaokËe�hIk�_z[ghW�gÒ�Xwm��¼adjDVbhI�1XÁcwmfkladh\ct�\[gj$ad_YXÁaÂcDTWa�Xw|lXscDad�VYXUjDe�cwTWatj�XÁi*atndVzeg_bVYXwatk�e�hIk�[�p,_bVbcÁcD_ba�Vzh\cwjDVbhfXÁVYn1Vbh\cDadjDatXÁct�SUTWatjwaÏXwadad� cw[ Z*aÎcwTWjDadaÎ�Ëe�Vzh3egiWiWjD[^e^nuTWatX�cw[cDategnuTIVbhW��!½i*adjuevcwVzhW� �`|lXscDad�ËXd� )GVzjuXsc�cwTIadjDaÑVYX�cwTWa<����������������������� �� ������! >qegiWiWjD[^egnuTº���ÂTWadjDadVzh�prmWhIkWeg��athlÒcue�_liWjDVbhfn�VziW_baoX³e�jDa�a�9lif[^mWhIklaokF�^eghIk.Vb_z_bmfXscDjDe�cwatk�Z`|4jDa�pÀÒatjwathIn�aoX³cD[�yvegjwVz[gmIX8a�9lVYXscDVbhI��Xw|lXscDad�ËXd� l¨��[\XscU[�p,�ÂTWVYnuTTIegiWi*adh4cD[½Z*a�[gmlcuXÁVYkla8cwTWaUXscDmIklath^cuXA'¸Vz�E��aoklVYevcwa�a�9li*a�ÒjDVbathIn�a�n¥�¢SUTWVYX¢VzX,cDTWaÂe�iWiWjD[^e^nuT�egkWyg[lnde�cwatk�Z`|�cwTWa�Íj!�Ò�`�s~½Ì Í8[^�E��VbcÁcDada^��ZWmlc�Vzh&[gmIj(y`Vzad���F�Ëe�h`|}XÁcwmIklath\cDXegjwaOhW[gcG�ËevcDmWjDa³[gj�aA9lifatjwVzadhIndatk1athW[gmW�^T1cw[�iIjw[ �Wc�prjD[g�Vbct� SUTWa1XÁaon�[^hIkËe�iWiIjw[\egnuTËVYX³cDTWaE<#"%$&���('����)�*"��(+, .-A>�e�ilÒiWjD[^e^nuT��³�ÂTWatjwatVbh cDTWa}XscDmIkladh\cuX<e�jDaBathIe�ZI_baok cD[�XÁ|`hlÒcDTWatXwV( ta�eËXw�Eeg_b_,Xwnte�_za�[gjp<Ácw[v|y>E[gi*adjuevcDVbhI�EXw|lXscDad�/pr[gjcDTWad�ËXwad_zygatXt�¢�ÏTWVz_ba�mWhfkl[gmWZWcwatkW_b|ËcDTWVYXÂnde�h�Z*a1e�yve�_zmlÒegZW_baBa�9ladjun�VYXwag�,V{p�iIjw[^ifatjw_z|�[^jw�\e�hWVYXwatkF�,V{cEndeghWhW[�c�ZWmlcp¨egVb_`cD[½athIn�[^��ifegXDX�cDTWaÂn�[g�EiW_za�9lVbcs|4e�hIk.XÁ[^iWTWVYXscDVzntevcDVb[^h

[�p,jwaoe�_F[^ifatjDe�cwVzhW��Xw|lXscDad�ËXt�We�hIkBVzX�mIXÁmfe�_z_b|<ZIVze^XÁaok<cD[�Ò�Ue�jukWXÂ[ghIa.egXwi*atn¥c([�p³[^ifatjDe�cwVzhW�7Xw|`XÁcwat�"kWatXwVb�^h��FXÁmInuTegXUiIjw[ln�aoXwXUXw|`hInuTWjD[ghWVYXwe�cwVz[gh��SUTWa�cwTWVzjDk"e�iIiWjw[\egnuT?VYXÑcwTWa <, ��#!��/!�01$2'�3�>ÓegilÒiWjD[^e^nuT��GSUTWVYX³VYX$cwTWa�[^hWa�[^jwVz�gVzhIe�_z_z|�jDatn�[^�E��athIklaok�pr[gjcwTIa}�l|`XÁcwat�ËXs%³jD[g�gjue��E�EVzhW�&n�[^mWjuXÁa�Vbh"<uÍ8mIjwjDVzndmW_zmW�' �m(m>I�IcDTWa�jwatif[^jÁc([�pOcwTIa�Ô�Í�Ç Í8mWjwjDVYn�mW_zmW� Í8[g�E�EV{cwÒcwata�[^h�Í8[g�EiWmlcDadj��ln�Vzadhfn�ag�¼iWmIZW_bVYXwTWatk&Vbh&cwTWa�Çqe�junuT��Öt×^�m(�VzXDXÁmIa�[�pºcDTWaf<uÍ8[^�E��mWhWVYnde�cwVz[ghIX�[gpGcDTWa4Ô�Í�Çb>W�Sºath�|gategjDX1eg�g[I�¼cDTWVYX4e�iWiIjw[\egnuT��F�ÂTWVYnuT�egkly^[lndevcDatXklatyg[�cDVbhI�p<Á�E[^XÁcG[gplcwTWaUn�[^mWjuXÁa$cw[�cDTWaUXscDmIkl|1[�pfe½XÁVzhW�^_baXw|`XÁcwat�s>4�UegX8mWhWjDate�_zVYXscDVzn½ZfaondegmIXÁa�cwTWa�nd[^XÁc�[gpºiWjD[vy\VYk`ÒVzhW� egkWa � mIevcDaqXscDmIklath^c�egndndatXDXEcw[Ñe�XÁmIV{cue�ZW_za&Xw|`XÁcwat��UegXUXÁVz�EiW_z|<cw[`[ETWVz�gT��Sºath�|gaoe�juXf_YevcDadjo�dcDTWa³aon�[ghI[g�EVzn,iWVYn¥cDmWjDa³TIegXFnuTfe�hW�^atkXwVb�^hWV �*nde�h\cD_b|^�Ie�hIkBcDTWa�n�[\XscuXÂe�jDa�hW[Ë_z[ghW�^adj�eËklaon�VYXÁVzygaklVYXwe^klyve�h\cDeg�ga�Vbp8eË�EVzhWVznd[g�EiWmlcDadj1XÁ|lXÁcwat� nte�hqZ*a4cDTWaXwmWZ&4satn�c�[gp(XÁcwmIkW|g�ÑSUTIa�nd[ghIXwVzkWadjue�ZW_za�e^klyve�h\cDeg�gaoX4[�pcwTIa.e�iIiWjw[\egnuT}�ÂTWVYnuTqmWhfkladjwcDeg]gatX½e7kladcDegVb_zatk�e�hIeg_b|lXwVzX[�p¢e�h�a�9lVYXscDVbhI�EXw|lXscDad�:egjwa1hW[v�LevcwcDe�VzhIegZW_ba^���hÐ[gmIj7[giIVbhWVz[ghº�ÂV{c7VYXBTWVb�^TW_z|ÑZ*adhWa��fn�VYe�_�pr[gj�XscDmlÒklath^cuX1cw[�TIe¸y^a�cwTWaË[^iWif[^jÁcDmWhWVbcs|qcD[�XÁcwmfkl|�e���[gjD]`VbhW�[gi*adjuevcDVbhI��Xw|lXscDad�:Vzh�e�_z_�V{cuX�egXwi*atn¥cuXd�Ç}[gjDad[vy^adjËVbcBVYX<mWhfkl[gmWZWcwatkW_b|Î�g[`[lk pr[gj�XscDmIklath^cuX�Ëe�4s[^jwVzhW�4Vzh�Í8[^��iImlcwatjU�lndVbathIn�a^�`cw[.Zfa1n�[^hlprjw[^h\cwatk7evc_zategXÁcU[ghInda½Vzh7cDTWadVzjÂndegjwatadjuXd�\�ÂV{cDT7cDTWa(cDe^XÁ]Ë[gpºjwaoegklVzhW�e�hfk.mIhIkladjuXÁcDe�hfklVbhI�4e�iWjD[g�gjue�� [gpF�Ee�4s[gj$kWVb�EadhfXÁVz[ghIXt���h<Öt×`�v����a8egkW[gilcDatk�x�~���¾Ñe^XFcwTIa8XwmWZ&4satn�c�pr[gj,nde^XÁaXÁcwmIkl|�Vzh�[gmWj�n�[gmIjDXwatX1Vzh !½i*adjuevcwVzhW�&�`|lXÁcwat�EX.evc4cDTWax�hIVby^adjuXÁVbcs|B[gp8~�at�Ó�`[^mlcwT���eg_baoXd��SUTWaoXÁa.hW[�cDatX½�8atjwaiWjDadiIegjwaok�[gjDVb�^VbhIeg_b_z|4pr[^j$cDTWa½e^XwXwVYXscue�hIndaÂ[�pºXÁcwmIklath\cDX8VbhcwTI[^Xwa1nd[gmWjuXwatXMl¨�I� �^�^���ÏeghIk��W� �^�^�g�Sn¥�SUTWaËn�[^mWjDXwatX(jDmWh�pr[gj1[ghWaËXwad�EatXÁcwatj1ategnuTº�.��a�pr[^jwaadh\cDadjDVbhW��atV{cDTWadj}Í8[gmWjuXÁa^��XÁcwmfkladh\cDXBe�jDa�iWjwaoXÁmI��aokÑcw[TIe¸y^a�XscDmIklVzatkEcDTWaM%$Äd%�ÖgÖ�egjDnuTIV{cDatn¥cDmWjDa�e�hIk7egXDXÁat��ZW_z|_Ye�hW�^mIe��^ag�teghIk½cw[�Tfe¸ygaOTIe^k(egh�[giWi*[gjwcwmIhWV{cs|�cw[�mfXÁaOcDTWax�~���¾ [gi*adjuevcwVzhW�EXÁ|lXÁcwat�MklmWjDVbhW��a�9latjDndVzXwatX8pr[gjUaoe�jD_bVzadjn�[^mWjuXÁaoXd���h��gathWadjue�_É�tXÁcwmIkWadh\cDXGXÁatad�ÐcD[ �IhIk(cDTWa³hWat��n�[gmIjDXwatX�E[gjDaË[ghWatjw[^mIXt�ºZWmlc���mInuT��E[gjDa7XDevcDVzXÁpr|`VbhW��cDTIe�h�cDTWaiWjDady`Vz[gmIX½n�[gmIjDXwatX½ZIegXwatkq[ghqcDTWa}<Á�gathWadjue�_GiWjDVbhIndVbiI_baoX >e�iIiWjw[\egnuT<[gpGcDTWa.Íj!1�`�s~½ÌÏÍ8[^�E��VbcÁcDada^��`[g�EaE�Eadh\cwVz[gh�hWadaokWX(cw[�Z*aE�Ee^kla�jwat�^e�juklVzhW�<cDTWakl[ln�mI��ath\cDevcDVb[^h iWjD[vy`Vzklaok Z`|:cDTWa3egmlcwTI[gjuXÐ[�p�cDTWax�~���¾3Xw|lXscDad���1Ô�X½jwatiWjw[lklmfn�atk�pr[^j½mfXÁa.[ghq[^mWj(nte���ÒiWmIXt�FcDTWVzX�n�[g�EiWjDVYXÁaoX�cs��[�yg[g_zmW�EatX([gpUÔ$�XwV� daEiIe�i*adjo��ÂVbcwT<e(cw[gcDeg_lcwTWVYnu]`hWatXDXO[gp�#�nd���`e�hfk�e1��adVz�gT\c³[gp,Ö¸�g����gjue��ËXt�Ô �fjDXÁc([^ZIXwadjDy¸e�cwVz[gh}VYX�cDTIevc(cwTIa.�ÂTW[^_ba�kl[ln�mW�EathlÒcDe�cwVz[gh�VYX�hW[�c.mWhWjDategXw[ghfe�ZW_z|�cwjue�hIXwi*[gjwcDe�ZI_baËVzh�e}XscDmlÒklath^c�' X�ZWjwVza�p³ntegXwag�8È�[v�8atygatjÂV{c��.mIXÁc�hW[�c½Zfa�e^XwXwmW�EatkcwTfevc�cDTWVYX½eg��[^mWh\c½[gp$kl[ln�mW�Eadh\cuevcwVz[ghº�f�ÂTWVYnuTqVYX��ÂjDVbcÁÒcwathqVzhqeEprjwaoXÁTº�IcDadjuXÁa^�f�ÂTWVz�ËXÁVYndeg_GXÁcs|`_ba^�fVYX�hWaon�aoXwXDe�jDVb_z|VzhIegkla � mIevcDag���hÐp¨e^n¥c�cwTWa�XÁaon�[^hIkÎ[gZIXwadjDyvevcDVb[^h&lr�ÂTWVYnuTÐVYX�[ghW_z|�Ëegkla�e�pÀcwadj½n�[ghfXÁVYkladjue�ZI_ba1a�9li*adjDVbathIn�a�n8VzXUcDTIevcÂpr[^j�jDa�pÀÒadjDadhfn�a�iWmWjDif[\XÁaoXd�*cwTIaEkW[`ndmW�Eadh\cDe�cwVz[gh�VzX1jDad�Ëe�jD]ve�ZW_z|

y

Page 8: A Commentary on the Sixth Edition UNIX OS -- Lions

nd[g�EiWjDadTWathIXÁVzyga^�ÐÈ�[v��ady^adj�cwTWatjwa�VYXËiW_zadh\cs| [gp1XDn�[^ifapr[^j½egkIklV{cDVb[^hIe�_ºcwmlcD[gjDVzeg_��ËevcDadjDVzeg_ �f[ghWa4ife�jwc�[�p³�ÂTWVYnuT��Vbc�VzXUTI[gi*atkF�WVYX�XDevcDVzX �IatkBZ`|ËcwTIatXwa�hW[�cDatXt�SUTWa1egn�cwmIeg_*x½~���¾ [gi*adjuevcDVbhW��XÁ|lXÁcwat� Xw[gmIjDnda½n�[lklaVYX�jwaon�[gjuklaok�Vbh e�XwadiIegjDe�cwa7nd[g�EiIeghWVb[^h�yg[^_bmI��a�adh\cDV{ÒcD_baoku<wx�~���¾ !½i*adjuevcDVbhW���l|`XÁcwat� �l[gmWjun�a8Í8[lkla�>W�¸�ÂTWVYnuT�UegX �IjuXsc�iWjDVzh^cDatk&Vbh�Ê^mW_b|^�³Öt×`�v�I��SUTWVYX1VzX1e�XÁi*atndVzeg_b_z|aoklV{cDatkqXwad_zatn�cwVz[ghq[gp$n�[lkla�prjD[g�"cDTWa.ƺadygat_,�`V 9}ygatjDXwVb[^h[gp,x�~���¾��*egXUjDatn�atVby^atk7Z\|BmIXUVzh�Ľatndad�.Zfatjt��Öo×\�g�l�ĽmWjwVzhW��Öt×\���W�Ue�hÏVzhWVbcwVYe�_(ygadjuXwVb[^hÑ[gp�cwTWaqiIjwaoXÁath^chW[gcwaoXB�UegX�klVYXscDjwVzZWmlcDatk Vbh�jw[^hWad[`atkÏpr[gjD���(e�hIk [ghW_z|Vzh�cwTWaË_Yevcwcwadj�ife�jwc4[�p$cDTWa<|^ate�j1��adjDa�cwTWaEp¨e^n�Vz_bVbcwVzatX�[gpcDTWa�<whWjD[ �R>ÂcDa�9`cGpr[^jw�Ëe�cÁcwVzhW�½iWjw[^�gjue���a�9liW_z[gVbcwatk��GSUTWa[^iWif[^jÁcDmWhWVbcs|}TIegX1jDatndadh\cw_z|}Z*adadh�cue�]gathqcD[�jDady`VYXÁaEe�hfk<whWjw[ �R>�cDTWa�aoe�jD_bVzadjO�ËevcDadjDVzeg_ ��cw[��Ëe�]^aUXw[g�EaÂjDady`VYXÁVz[ghIXeghIkÎn�[gjDjDatn¥cDVb[^hIXt�$e�hIkÑcD[�Vbh\cwat�gjuevcDa7cDTWad� Vbh\cD[�cwTWatVbjiWjDatXwadh\cUpr[gjD���ÔÏklaon�VYXÁVz[gh�TIegk.cD[(Z*aÂ�Ëegkla � mWVbcwaÂaoe�jD_b|4jDad�\e�juklVzhW�cDTWa$[^jDklatj�[�pliWjDatXwadh\cuevcwVz[gh1[gp\cDTWa8Xw[gmIjDnda³n�[lklag�,SUTWa$VzhlÒcDadh\cwVz[gh4�UegXFcw[�iIjw[vy`VYkla$eÂjDate^XÁ[^hIe�ZW_z|�_z[g�^Vznte�_gXwa � mWathIn�apr[^j8cDTWa�XscDmIklath^cU�ÂTW[���egh\cwatk<cw[�_baoe�jDh<cDTWa½�ÂTI[g_za(Xw|lXsÒcDad���<�ÏVbcwT�cwTWaËZ*adhIa �Wc�[gp8TWVzhIkWXwVz�gT\ct�,e��gjDatevc1�Ëe�h`|Vz�EiWjw[vy^ad�Eadh\cuX1Vbh�kladcDegVb_$egjwaËXÁcwVz_b_8if[\XwXwVzZW_ba^�,eghIk�V{c.VzXVzh\cwadhfklatk&cwTIe�c�cwTWaoXÁaËnuTIeghW�gaoX��ÂVz_z_³ZfaE�ËegkWa�Vzh�XÁ[^��aprmlcDmWjDa�atklVbcwVz[gh����c½VYX�[^mWj�TW[^ifa4cwTIe�c�cwTWVYX½Zf[`[g]B�ÂVb_z_,Zfa4[gpOVbh\cwatjwaoXsceghIkÐyve�_zmWa�cw[ �Ëe�h`|ÐXscDmIklath^cuX�[�p4cDTWa�x�~���¾ASUVz�Ea�ÒXwTIe�jDVzhW���l|`XÁcwat���<Ô�_bcwTW[^mW�gT�hW[gc1iIjwatiIe�jDatk�iWjDVb�Ëe�jDVz_b|pr[^j$mIXwa½e^X$e4jDa�pratjwathIn�a��8[^jw]¼�^Xw[g�Ea��ÂVz_z_*�ÂVYXwTËcw[4mfXÁa½V{ce^X�XwmInuT��OSUTWa(VzhIklVYn�atX�iWjD[vy`VzkWatk<e�c8cDTWa1adhIkBXÁTW[^mW_Yk<�g[Xw[g�EaÂ[�p¼cDTWaÂ��e¸|�cw[v�Ue�jukWXOXDevcwVYXÁpr|\VzhW�(cwTIa�jwa � mWVbjDad�Eath^cpr[^jÂjwadpradjDadhInda(�Ëe�cwadjDVYe�_FevcÂcDTWVzX�_batygad_É��`VzhIn�a7cwTWaoXÁaBhW[�cDatX�jwadpradj4cD[qiWjD[giWjDVza�cDegjw|&�Ee�cwatjwVYe�_e^kl�EVbhWVYXÁcwadjDatkÓZ`| cwTIaÏ��aoXscDadjDh3Ì$_baon¥cwjDVYnÎÍ8[^��ife�h`|g�cDTWad|�nde�h�[ghI_b|BZfa��ËegkWa1e¸yvegVb_Ye�ZW_za(cw[E_zVzndadhIXwadaoXU[�p,cwTWax½~���¾:SUVz�Ea�Ò�XÁTIegjwVzhW�}�`|lXscDad��e�hIk�TWadhfn�a<e�jDaEmWhIegZW_bacD[�Z*a�iWmWZI_bVYXÁTIatkBcwTWjD[gmI�gT���[^jwa1mIXwmIeg_�nuTIe�hWhIad_YXd�Í8[gjDjDatn¥cDVb[^hIXt��n�jDV{cDVzndVzXw� e�hfk XwmW�g�^atXÁcwVz[ghIX<pr[gj�Vb��ÒiWjD[vygat�Eadh\c�[gpGcDTWatXwa1hW[�cDatXU�ÂVz_b_ºZfa�y^adjD|<�8at_znd[g�Eag������������� ������ �����

SUTWaÑiWjwatiIe�juevcDVb[^h [�pËcwTIatXwa hW[gcwatX&TIegX�Z*adadh¿adhlÒnd[gmWjue��^atk7eghIk}XwmWiWi*[gjwcwatk�Z`|7�Ëegh\|B[�p¢��|�n�[g_z_zate��^mWatXeghIk XscDmIkladh\cuX�Vbhfn�_zmIklVzhW� Ľe¸y`VYkMÍ�e�jDjwVzhW��cD[gh��ËĽ[gmW�Í8jD[g�EilcD[gh��o�se�h4Ƚe¸|gatXt�¸Ä½e¸y`VYk(È�[gjuXsp¨eg_b_É�N%¢a�cDadj���yve�hI[vy*��seghÑÊ^[gTWhIXÁcw[^hWag�ÂÍ8TWjDVzXEÇqeg_{cDZ\|^�8Ä(e¸yga�Ç}Vz_b�Ue¸|g�$Ê^[gTIh!�' ��jwVzadh�e�hIk��(jDad�ËÅÂ[^Xwag�

%Oevc4Çqe^nu]`VbaEe�hIk�Çqegjw|b%¢[v�UcDadj�klVYk���mInuT�[�p8cwTWaVzhWVbcwVYe�_Wcs|`iWVzhW�f�\eghIkËÔ�klat_ba(�(jwatadhËTIe^X$egXDXwVzXÁcwaok.�^jwaoevcD_b|Vzh�cwTWa1cDjDeghIXspratjU[�p,cwTWa�hW[gcwaoX�cw[z<ÁhIjw[ ��>�pr[gjD�Ëevco�Ä(e¸y\VYk¿ÇqVb_z_bVYX�e�hIk cwTWa %³mWZI_bVYnde�cwVz[ghIX��`atn�cwVz[gh¿[gpcDTWaqx�hWVzygatjDXwVbcs|�[�p�~�ad� �`[gmWcwTÎ��eg_baoXETIe¸yga�egXDXwVzXÁcwaok�^jwaoevcw_z|<�ÂVbcwT�cDTWa4�EatnuTIeghWVYndXÂ[gp,iWmIZW_bVYnde�cwVz[gh��*e�hIk��seghÊ^[gTWhfXscD[ghWa<eghIk�cwTWa7Ô�mIXÁcwjue�_zVzegh��(juegkWmIevcDa7�lnuTW[`[g_³[gpÇqeghIe��^ad�Eadh\c�iWjw[vy`VYklatkËp¨egn�Vz_zV{cDVbaoX$pr[^j$cDTWa(iWjwatiIe�juevcDVb[^h[gpºcwTIa �IhIe�_GkljDe�pÀct�

SUTWjD[gmW�^TW[gmlc$cwTWVYX$iIjw[�4satn¥co�^�.|E�ÂV{pra(Çqe�jDVzeghWhWa�TfegX�gVzygathË�Ea�mWhlp¨egVb_zVzhW���E[gjue�_*XÁmIiWif[^jÁcUe�hIk<��mInuT<iIjDe^n¥cwVbÒndeg_�XÁmIiWif[^jÁcÂ�ÂVbcwT�iWjD[`[�pÀÒ�jwaoegklVzhW�I�),VbhIeg_b_z|1Ã1adh�SUTW[g�EiIXw[gh1e�hfk(ĽadhIhWVzXGÅÂVbcDnuTWVza$XÁcDe�jwcwaokVbc�e�_z_ �Sº[�e�_z_OcwTWaBe�Z*[vygag�G�1�ÂVzXwT�cw[qaA9liWjwaoXwX1�.|�XwVzhIn�atjwacwTfe�hW]lXt�SUTWa7nd[�Ò�[gi*adjuevcwVz[gh�[�pUcwTIaP<ÁhWjD[ �R>�iWjD[g�^jDeg� ��mIXÁce�_YXw[}ZfaB��ath\cwVz[ghWaokF�}�ÏV{cDTW[gmWc.Vbct�¢cwTIatXwa<hW[�cDatX.n�[gmI_zkhWatygadj�TIe¸y^a7Z*adadhÑiWjD[`kWmIn�aok�Vzh cDTWVzX.pr[^jw����È�[v��ady^adjVbc<TIegXE|`Vzad_YklatkÎXw[g�Ea}[�p1V{cuXË�E[gjDa�adhWVz�g�ËevcDVzn�XwatndjwadcDXXw[4jwat_bmfn¥cDegh\cw_z|g��cDTIevc8cwTWa(e�mlcDTW[gj�' X³�gjuevcDV{cDmIkla�VYX³VzhIklatatk�EV:9laokF�½Í8adjwcDegVbhW_z| <ÁhWjD[ �R>ËVbcDXwad_bp³��mIXÁc�iWjD[vy`VzkWa�eEpradjwÒcwVz_za��Iat_zk(pr[^jºprmlcDmWjDa³iWjuegn¥cDV{cDVb[^hWadjuX�[gp`cwTWa8iWjw[^�gjue��Lkl[ln¥ÒmW�Eadh\cDadj�' XÂegjÁco�

Êg[^TWh}Æ�Vz[ghIXÃ1adhIXwVbhI��cw[^h��W~½�l�Çqe¸|g�FÖo×\�g�

y`V

Page 9: A Commentary on the Sixth Edition UNIX OS -- Lions

� � ��� � ����� � �������

<Dx�~���¾d>�VzX4cwTWa7hIe��EaË[�p�e�cDVb�Ea�Ò�XwTIe�jDVbhI�qXÁ|lXÁcwad� pr[gj%8Ä`%�ÖgÖ�n�[^��iImlcwatjDXt�W�ÂjDV{cwcwadh�Z`|BÃ1ath}SUTW[g�EiIXw[gh}e�hfkĽadhWhIVzXqÅ�V{cunuTWVba�e�cq�8at_b_4ÆGe�Z*[gjuevcD[gjDVbaoXd�/��cq��e^X}kla�ÒXDn�jDVbZ*atk1Z`|½cwTWat� Vbh1cDTWa8Ê^mW_z|g�`Öt×`��$ÂVYXwXwmWa³[gplcwTWa�<uÍ8[^�.Ò�.mWhWVYndevcDVb[^hIXU[�pGcwTWa4Ô�Í�Ç >W�x�~���¾ TIegX.iWjD[vygatk�cD[&Z*aBa��*aon¥cDVby^ag�Oa�<ndVbath^cËe�hfkjDad_zVzegZW_za�Vzh�[gi*adjuevcDVb[^h�eghIk&�UegX1Vzh�mIXwa<evc��E[gjDa.cDTIe�hÖ¸���.VbhIXÁcDeg_b_YevcDVb[^hIXUZ`|ËcwTIa�adhIk�[�pUÖt×`�v�I�SUTWa�e��E[gmWh\c�[gpOa �¼[gjwc�cw[<�ÂjDVbcwa�x½~���¾��*�ÂTWVz_ba.hW[�cVzhIn�[^hIXwVzklatjDegZW_za�VzhEV{cuXÁat_{pRl�\Öo�(�Eegh.|^ategjDX¢mWi�cD[1cwTWaÂjDa�Ò_zate^XÁa1[�p,cwTIa�Æ�atygad_º�lV:9�XÁ|lXÁcwad�pn�VYXÂVzhIXÁVz�ghIV �fnte�h\cÂ�ÂTWadhnd[g�EiIe�jDatk�cw[�[gcwTWatj$Xw|`XÁcwat�ËXd�ql�)I[gj³VzhIXÁcDe�hfn�ag�gZ\|BÖt×^�m(W�!1����#g�^�Ë��e^X(jwatiWmlcwaokqcD[BTfe¸ygaEn�[ghfXÁmW�Eaokq�E[gjDa�cDTWadh�Iy^a��Ëe�h��EVb_z_bathWhWVYeËe�hIk�S��W� �N#g�^�W�le�hI[�cwTIadjÂ�s�UÇ�[gilÒatjDe�cwVzhW�ËXÁ|lXÁcwad���l�E[gjDa(cwTIeghB[^hWa��Ëe�h��EVb_z_bathWhWVzmW��� n

!�p³n�[^mWjDXwa(cwTWatjwa4egjwa�Xw|lXscDad�ËXÂ�ÂTWVYnuT}e�jDa�ategXwVzadjUcw[mWhfkladjuXscue�hIk cwTfe�h x�~���¾AZWmWct��Vbc��Ëe¸|ÏZ*a�egXDXÁatjÁcDatkF�cDTWatXwaÂe�jDa�Vzh`yve�jDVzegZW_b|��.mInuTEXÁVz�EiW_batj³e�hIk.�E[gjDa8�E[lklaoXscVzh��ÂTIevcÂcDTWad|�evcÁcDad�Eilc�cD[<egnuTWVzady^ag�³Ô½XUp¨e�j�e^X�cwTWa�_zVYXsc[gpÂpratevcDmWjDatX4[ �*atjwaok�cw[�mIXwadjuX4VYX.nd[ghIndadjDhWatkF�Ox½~���¾"VzXVzh�cwTWa <ÁZWVz�<_zate��^mWa�>I�$��h�p¨e^n¥c�Vbc½[ �*atjDXÂ�Ëegh\|7prate�cwmWjDatX�ÂTWVYnuTÏe�jDaBhI[�cDegZW_za}Z\|�cwTWatVbj7egZIXwadhIndaBprjD[g� XÁ[^��a}[gpcDTWa��8at_b_bÒ�]\hI[v�Âh7�Ëe�4s[^j�XÁ|lXÁcwad�ËXt��� �� ��� ������������ ��! �#" � �%$'& � �� �

SUTWa�iImWjwi*[^Xwa�[�p,cwTIVzX½kl[ln�mW�Eadh\co�fe�hfkBVbcDX�n�[g�EiIeghWVz[gh��cDTWar<wx�~���¾ !½i*adjuevcDVbhI���`|lXÁcwad���`[gmWjun�aËÍ8[lkla�>I�FVzX½cw[iWjDatXwadh\c�Vzh�kladcDe�Vz_�cDTIevcGiIe�jwcº[�p\cwTIa8x�~���¾�cDVb�Ea�Ò�XwTIe�jDVbhI�Xw|lXscDad�3�ÂTWVznuT7�8a(nuTW[`[^XwaUcw[.nte�_z_WcDTWaE<Dx�~���¾�!½i*adjuevcÁÒVzhW�(�l|`XÁcwat�s>W�vhIeg��at_b|(cDTWa�nd[lkla8�ÂTIVznuT4VYX,ifatjw�ËeghWadh\cw_z|jDatXwVzkWadh\c�Vzh�cwTWa.�EegVbh}�Eat��[^jw|�klmWjDVzhW�ËcwTIa�[gi*adjuevcDVb[^h[gp�x�~���¾���SUTWVYX�n�[lklaETIe^X½cwTWa�pr[g_z_z[v�ÂVbhW���Ëe�4s[^j�prmWhfn¥ÒcDVb[^hIX�� VbhIV{cDVzeg_bVYXwe�cwVz[gh iWjD[`ndatXDX��EeghIe��^ad�Eadh\c, XÁ|lXÁcwat�:ndeg_b_YX� Vbh\cDadjDjwmWiWcUTfe�hIkl_zVzhW�2 VbhIiWmlc �v[gmlcDiWmlc�[^ifatjDe�cwVz[ghIX� �I_za(�ËeghIe��^ad�Eadh\ct�

�� )( � �#" ��" �#" �

SUTWaOjDad�ËegVbhWVzhW�ÂiIegjÁc�[gp`x½~���¾Wlr�ÂTWVYnuT1VzXº��mInuT1_Ye�jD�gadj+* nVYX1n�[g�Ei*[^Xwatk&[�p�e�Xwa�c1[�p�XwmWVbcDegZW_b|�cue�Vz_b[^jwaokqiWjD[g�^jDeg�ËX�ÂTWVYnuT<jDmWh<egX�<ÁmfXÁatj³iWjD[g�gjue��ËX >W�geghIkË�ÂTWVYnuT��^pr[gj8��egh^c[gp,eEZ*a�cÁcDadjÂcDadjD���l�Ee¸|7Zfa1cDadjD��aok <ÁmlcDVb_zV{cDVbaoX >I�x�hfkladj8cwTWVYX8TWate^klVbhI��n�[^��a(e�h`mW��Z*adj8[�p�iWjD[g�^jDeg�ËX�ÂVbcwT&e7ygatjw|�XscDjw[^hW�<Xw|\�.ZWVz[�cwVYn4jDad_YevcDVb[^hIXwTWVbi}�ÂVbcwTqcwTWa[^ifatjDe�cwVzhW��Xw|lXscDad�"XÁmInuT�egX

cDTWa <wXwTWat_b_ > lrcwTWa nd[g�E�Ëe�hIk/_Ye�hW�^mIe��^a�Vzh\cwadjwÒiIjwadcwadj n < �¸adcDn �vVbhIV{c > lÀcDTWaqcDadjD��VzhIeg_½n�[^h��I�^mWjDe�cwVz[ghÏn�[^hlÒcDjw[^_b_zadj n

e�hfkËe4h`mW��Z*adj�[�p �f_ba(XÁ|lXÁcwad� �Ëe�hfe��gat�Eadh\c$iWjD[g�^jDeg�EXXwmInuT�e^X��nuTWatnu] klm jw�ËklVzjnuTW�E[lk �E]lklVzj XÁ|`hInn�_zjwV �E]\p¨X mW�E[gmWh\ck`p �E[gmIh^c mWi*kIevcwa

��cUXwTW[^mW_zk<Zfa½if[^Vbh\cwaok<[^mlc$cDTIevcU�Ëe�h`|.[gpFcwTWa½prmWhIn�ÒcwVz[ghfX$ndegjwjDVzatk�[gmlc8Z\|.cwTIa½e�Z*[vygadÒÉhfe��Eatk.iWjD[g�gjue��ËXOegjwajDad�^egjDkWatk egX�[gi*adjuevcDVbhW�LXÁ|lXÁcwat� prmIhIn¥cDVb[^hIX�VbhÓ[�cwTIadjn�[^�EiWmlcwatj,Xw|lXscDad�ËXt��e�hIk4cwTIe�c,cDTWVYX,ndadjwcDegVbhW_z|�kl[`atX¢n�[^hlÒcwjDVzZWmlcwa.XÁVz�ghWV �fnte�h\cw_z|<cD[ËcwTWa.ZWmW_z]B[gp¢cwTWaoXÁa4[gcwTWatj�Xw|`XÁÒcwat�ËX4egX4nd[g�EiIegjwaok��ÂVbcwT�cDTWa7x½~���¾ !½i*adjuevcDVbhW�&�l|`XÁÒcwat� l¨Vbh�cwTIa���e¸|Ë��a1TIe¸yga�kla��IhWatk�Vbc n��Ä�aoXwndjwVzilcDVb[^hIX�[gp^cDTWa³prmWhfn¥cwVz[gh4eghIk1mIXwa³[�p\cwTIa8e�Z*[vygaiWjD[g�^jDeg�EXE�Ëe¸|ÑZfa&pr[gmWhIkÐVbhÏcDTWa <Dx�~���¾ %³jD[g�^jDeg�.Ò�Eadj�' X�Çqe�h`mIeg_?>bl x%8Ç n¥�fadVbcwTWatj½Vzh&�`atn�cwVz[gh}�*lrpr[gj�cDTWan�[^�E��[^hW_z|�mIXwatk�iWjw[^�gjue��ËX n([gj�VzhÑ�`aon¥cDVb[^hP]��w�Á�Elrpr[gjcwTIa�iWjw[^�gjue��ËX8mIXÁaok�[ghW_z|<Z`|ËcwTIa��`|lXscDad�/Ç&e�hIeg�gadj n¥��� -, � � � ��/.�� �10��� ���2 �2" ���SUTWaoXÁa(hW[�cDatX��Ëe�]^a�prjDa � mWadh\cUjwadpradjDadhInda�cD[�cDTWau<wx½~���¾%³jD[g�^jDeg�E��atj�' X�Çqe�h`mIeg_?> l x%8Ç n¥�([lndnde^XÁVz[ghfe�_�jDa�pradjwÒadhfn�a4cD[<cDTWat<Dx�~���¾ÓĽ[`ndmW�Eadh\cDX ><Z*[`[g]`_za�ct�FeghIkqn�[^hlÒXÁcDe�h\cqjDa�pratjwathIn�a�cD[ÏcwTWa&<wx�~���¾ !½i*adjuevcwVzhW� �`|lXÁcwat��`[^mWjDnda�Í8[lkla�>W�Ô�_z_lcwTIatXwaUegjwa�jDad_zadyve�h\c,cw[�e1n�[g�EiW_za�cDaUmWhIklatjDXÁcDeghIk`ÒVzhW�B[gp$cDTWaËXÁ|lXÁcwad���.��h�e^kWklVbcwVz[gh��ºeBprmW_z_³XÁcwmIkl|&[�p$cDTWaegXDXwad��ZI_b|½_zeghW�gmIeg�ga¢jD[gmlcDVbhWaoXFjDa � mWVzjwaoXFjwadpradjDadhInda¢cw[ÂcDTWa< %8Ä`%�ÖgÖM%³jD[ln�atXDXw[gjÂÈ�eghIklZ*[\[^]y>W�IiImWZW_zVzXwTWatk�Z`|�Ä�Vz�gVbÒcDeg_�Ì � mWVziW�Eadh\c(Í8[gjDi*[gjuevcwVz[ghº��� 43 �������657� � �8�! � �� ���9 ��:; �<0= �SUTWa(x%$Ç VzX�klVzy\VYklaokËVbh\cD[�adVz�gT\c��Ee�4s[gj�XÁaon¥cwVz[ghfXd�\iWjDa�Òn�aoklatk Z`|Ðe�cDegZW_za�[gp.n�[^h^cDadh\cDX�eghIk e Ã1�Ï�wÍ l¨Ã1at|��[gjuk7��h&Í8[gh\cDa�9`c n8VzhIkla�9F�$SUTIa(_Yevcwcwatj�VzXU�E[\XscD_b|<y^adjD|mIXwa�prmW_^ZWmlcºVYX�[lntndegXwVz[ghIeg_b_z|�e�hIhW[v|`VbhW�f�te^X�XÁ[^�EaOVbhIkWa�9latk�ËevcDadjDVzeg_fkl[`atX8hW[gc8a�9lVYXsco�le�hIk<Xw[g�Ea�aA9lVzXÁcwVzhW���Ëe�cwadjDVYe�_VYXUhW[�c�VzhIklaA9`aokF��ÏV{cDTWVzh aoegnuT XÁaon¥cwVz[ghÑ[�p½cwTWa��Ëe�h`mIeg_ �$cwTWa��ËevcDa�ÒjDVzeg_.VYX�egjwjue�hI�gatk eg_biITIe�Z*a�cDVznte�_z_b| Z`| XÁmIZ&4satn�c�hIeg��a^�SUTWaLXÁaon¥cwVz[gh:h\mI��Z*adj VzXÎn�[^h`ygadh\cDVb[^hIe�_z_b|3e�iWi*adhfklatkcw[�cwTWa�XÁmWZ 4satn¥cBhIe��Eag��XwVzhIn�a&Xw[g�Ea&XwmWZ&4saon¥cuX7e�iIifaoe�jVzhÐ�E[gjDa}cwTIeghÐ[ghIa�Xwatn¥cDVb[^h���a^� �f� <uÍ�ȽÄ��sÅ*l¨� n >Ñe�hIk<uÍ�ȽÄ��sÅilr�Á� n >W�x�24�m���k�O� n�[gh\cue�VzhIX nd[g�E�Ëe�hIkWX �ÂTWVYnuT adVbcwTWatj�egjwajDatnd[g�^hWVzXwatk/Z`|McDTWa <wXwTWad_z_ >3nd[g�E�Ëe�hIk"Vzh\cwadjwÒiIjwadcwadjo��[^j³e�jDa$cDTWaÂhIe��EaoX¢[�pFXscue�hIkWegjDk�mIXwadjOmlcDVb_bÒVbcs|7iIjw[^�gjue��ËX�

Ö

Page 10: A Commentary on the Sixth Edition UNIX OS -- Lions

x�2F�����k�O� � n�[gh\cue�VzhIXf<wXw|lXscDad��nde�_z_YX >��ÂTWVYnuT�e�jDaE[gilÒadjuevcDVbhW��Xw|lXscDad� jD[gmlcDVbhWaoX��ÂTWVYnuT4�Ëe¸|1Zfa8Vbh`y^[g]gaokprjw[^�Me�mfXÁatj�iIjw[^�gjue��Ócw[E[gZlcue�Vzh7[^ifatjDe�cwVzhW�.Xw|lXsÒcwat�MXÁatjwy`VYn�ag�¢Ô XscDmIkl|Ë[gp�cwTWa1[^ifatjDe�cwVzhW�.Xw|lXscDad��ÂVb_z_FjDadhIklatjÂ�E[^XÁcU[gpGcDTWatXwa � mWVbcwa1p¨e��EVz_bVYe�j,x�2F�����k�O� � � nd[gh\cDegVbhfXP<wXwmWZWjD[gmWcwVzhWatX >��ÂTWVYnuT e�jDaq_zV{ÒZWjue�jD| jD[gmlcDVbhWaoX7�ÂTIVznuTÐ�Ëe¸|ÎZ*a�ndeg_b_zatkÏprjw[^� emIXwadj(iWjw[^�gjue����4SG[7cDTWaE[gjuklVbhfe�jD|�iIjw[^�gjue��E�Eadjo�cwTWa³kWVzXÁcwVzhIn¥cDVb[^hIX�Z*a�cs��adath4�`atn�cwVz[ghIXº�Á�¼e�hIk1�w�Á�¼[�pÀÒcwath�egiWifaoe�jÂXw[g�Ead�ÂTIe�c�e�jDZWV{cDjDegjw|^�,Çq[^XÁcU[gp¢�`aon¥ÒcwVz[gh��Á�w�8VYXÂVzjwjDad_zadyve�h\c�cw[EcDTWa�[gi*adjuevcDVbhW�EXw|`XÁcwat�

x�2F�����k�O� �� klaoXwndjwVzZ*atXu<wXwi*atn�VYe�_��I_zatX >W�º�ÂTWVznuT�VYX�e�hlÒ[�cDTWadj�hIe��EaBpr[gjEi*adjDVbiWTIadjue�_Âklady`VYn�aoXd� �`[^�Ea�[gpcwTWaoXÁa.e�jDa�jwat_baty¸egh\ct�IeghIk}XÁ[^�Ea4�EadjDad_z|7Vzh^cDadjDatXÁcÁÒVbhI�I�¢��c�kladi*adhfkWXÂ�ÂTWatjwa1|g[^m�egjwa�x�2F�����k�O��� klaoXwndjwVzZfaoXP< )GVz_zat)W[^jw�Ëe�cDX7eghIk�Í8[^h\y^adhlÒcwVz[ghIX >W�¢ÔÏ_z[�c$[gpFTWVb�^TW_z|.jDad_zadyve�h\c³Vzhlpr[gjD�ËevcDVb[^hËVzXcwmInu]^atk�e¸��e¸|EVzh�cwTWVYX�Xwatn¥cDVb[^h x�2F�����k�O��6�� �/1����� � kWatXDn�jDVbZ*aS<wx½XÁatjºÇqe�Vzh\cDegVbhWaok1>iWjD[g�gjue��ËXEe�hfkÏXÁmWZIjw[^mlcwVzhWatXt��~�[ x�~���¾�[^iWTWVz_ba�ÂVb_z_�Vz�ghI[gjDa�cwTWaoXÁa�XÁaon¥cwVz[ghfXd�UZWmlc�cwTIad|Îe�jDaqhW[�ciIe�jwcwVYn�mI_zegjw_z|�jDad_zadyve�h\cOcD[4cwTIa�[gi*adjuevcDVbhW�.XÁ|lXÁcwad�

x�2F�����k�O���+ � � klatXDn�jDVzZfaoXj<wXw|lXscDad�Ð�Ëe�Vzh\cwathIe�hInda�>Sl XÁ[gpÀcÁÒ��egjwa^�fhI[�c1TIe�jukl�Ue�jDa�* n¥��SUTWadjDa�VYX(_b[gcDX([�p8mIXÁadprmW_VbhWpr[gjD�Ee�cwVz[gh�TWatjwa^�GaoXÁi*atndVzeg_b_z|&Vbp�|g[^m�egjwaËVzh\cwatjÁÒatXÁcwaokEVbhËTW[v�Îe4x½~���¾ VzhIXÁcDeg_b_YevcDVb[^hËVzX$�EeghIe��^atkF��� �� ������� .�� �10��� ��� �

SUTWVYX1VYX4e�XÁ[^��at�ÂTIevc��EVYXwndad_z_zeghWad[^mIX1n�[g_z_zatn¥cDVb[^h�[gp8aoXsÒXDe¸|lX8[gp,yvegjw|`VzhW��kWad�gjDadaoX�[�p¢jwat_baty¸eghIn�a ��� ��010 ���)�/$,���� �� jDateg_b_z| Zfat_b[^hW�^X�Vzh �`aon¥cDVb[^h]��w�Á��[�p,cwTWa4x`%$Ç lrVbc�' XÂjwat_batyve�h\c n%

���� ����� �� � ��� ��� ! � ������� � � 3#!�0 ��� VzX�e�hÓmWilÒkWevcDatk y^adjuXÁVz[gh [�pEcDTWa [^jwVz�gVzhIe�_ <uÍ8[g�E�.mWhWVYndevÒcwVz[ghIXº[�plcDTWa8Ô�Í�Çb>�iIe�i*adjo����cOXÁTI[gmW_Yk1Zfa8jwadÒÉjDate^kevcÂ_zategXÁcÂ[ghInda1ifatj��E[gh\cwT ��� ����%+���� � ����� ������!.VYXËmIXwa�prmW_ÂVbp(|^[gmWj<x½~���¾a�9li*adjDVbathIn�a1VYXU_bVz�EV{cDatk� SUTWa(cwmlcD[gjDVzeg_zXU[^h <uÍ >Ee�hIk7cwTIa�atklVbcw[^jt�IeghIk7cwTWajwadpradjDadhInda��Ëe�h`mIe�_YXUpr[^jp<uÍ ><eghIk�cwTIa�egXDXÁat��ZW_zadje�jDaqTWVz�gTW_z|ÎmIXwa�prmW_1mWhW_zatXDXB|g[gmÐegjwa�n�[^��iI_badcwad_z|a�9li*adjwc����� ����� ��� ! #" � 3#!�0 ����iWjD[vy`VzklaoXFeU�g[`[lk([vygadjDy`Vbat�[�p,�Eegh`|Ëprate�cwmWjDatXU[gpGcDTWa�[gi*adjuevcDVbhW�EXw|`XÁcwat�

��� �� � $$��� ����37iWjw[vy`VYklatX.e&nuTWaonu]�_zVYXscE�ÂTWVYnuT�ÂVb_z_¼Zfa1mIXwa�prmI_FVbh�e�hIXw�8atjwVzhW��cwTWa � mWatXÁcwVz[ghB�ÂTIevckl[`atXÂeghB[^ifatjDe�cwVzhW�ËXÁ|lXÁcwad�/kl[&%

�� (' ����������� ��! �#" � �%$'& � �� � $ �'0=��� ) � �

SUTWVYXOVYX$e�hEaoklV{cDatkEy^adjuXÁVz[gh�[�p¼cwTIa�[gi*adjuevcDVbhW�4Xw|lXscDad�3egXXwmWiWiW_zVbaok�Z\|B�8at_b_�ÆGe�Z*[gjuevcD[gjDVbaoXd�SUTWa.nd[lkla�Xwad_zatn¥cDVb[^h}iWjDatXwmW�EatX�eP<Á�E[lklad_ ><Xw|`XÁcwat�n�[^hIXwVzXÁcwVzhW��[�p � %8Ä`%�ÖgÖ���$^��iWjD[`ndatXDXÁ[^j� Å�Ã��^��klVYXÁ]7kWjwVzygaoX� Æ�%�Ö^Ö½_zVbhIa�iWjwVzh\cwatj� %UͽÖgÖ(iIe�i*adj�cDe�i*a1jwaoegklatj �viWmWhInuT Ã�Æ$ÖgÖ½cwatjw�EVzhIe�_�Vzh\cwatjÁp¨e^n�ag�SUTWa�iWjDVzhIn�VziIe�_�atklVbcw[^jwVYe�_4nuTIeghW�gaoX�cw[ÏcDTWa Xw[gmWjun�an�[lkla�egjwa�egX�pr[^_b_z[v��X � cDTWaÎ[gjukladj�[�p7iIjwaoXÁath^cuevcDVb[^h [�p �f_baoX�TfegX�ZfatadhnuTfe�hW�^atk� cDTWaË[gjuklatj([gp��Ëe�cwadjDVYe�_¢�ÂV{cDTWVzh�XÁatygadjue�_��I_zatX�TfegXZ*adath}nuTIe�hW�^atk� cD[.e�y^adjD|�_zVb�EVbcwaokËa�9`cwath\ct�`n�[lkla�TfegXOZ*adathËcwjue�hIXÁÒpratjwjDatk4Zfadcs�8atadh��f_baoX l¨�ÂV{cDT�TWVzhIkWXwVz�gT\c¢e�_b[gc,�E[^jwa[gpGcDTWVYXÂ�8[^mW_Yk7TIe¸y^a½Z*adath}klatXwVbjue�ZI_ba�n� egZf[^mlc��+*3[gpºcDTWa�_bVzhWaoXUTIe¸yga(Zfatadh}XwTW[gjwcwathWatk7VbhyvegjwVz[gmIXE�Ue¸|lX�cw[�_zatXDXEcwTfe�hÐ�g��nuTIegjDe^n¥cDadjuX+l¨Z`|at_bVz�EVbhfevcwVz[gh�[gp,ZW_Ye�hI]`Xt�ljDate�jDjue�hW�^ad�Eadh\c8[gp¢nd[g��Ò�Eath^cuXd�fXÁiW_zVbcÁcwVzhW�ËVzh\cw[�cs�8[E_zVbhIatXt�Wa�cun�� n� eEh`mW�.Zfatj�[gp¢nd[g�E�Eadh\cDX�nd[ghIXwVYXscDVbhW�Ë[gp¢e<_bVzhWa�[�pmIhIkladjuXDn�[gjDa<nuTIegjDe^n¥cwatjDX(TIe¸y^aËZfatadh�Vzh\cwjD[`kWmIn�aokF�ife�jwcwVYn�mW_Ye�jD_b|<e�cÂcwTWa�athIk�[�p,iWjw[lndatklmWjDatX� cDTWa8XwV� da³[gp`aoegnuT �I_za³TIe^X�Z*adadh.egk#4smIXÁcwaok(cw[�egh�a�9`Òe^n¥cO��mI_{cDVbiW_zaU[�pF���½_bVzhWatX,Z`|4iIe^kWklVzhW�(�ÂV{cDT�ZI_zeghW]_zVzhWatX�SUTWa½Xw[gmIjDnda�n�[lkla�TIe^X³Z*adath<iWjDVbh\cwaokËVzh7kl[gmIZW_ba½n�[g_bÒmW�Eh�pr[gjD�ËevcÂ�ÂV{cDT �WpÀcs|B_zVzhWatXUi*adj�nd[g_zmW�Eh��W�^Vby`VzhW�E[ghWaT`mWhIkljDatkq_bVzhWatX½i*adj1XÁTWata�cYlr[gj(iIeg�ga�n��½SUT`mIX�cwTWatjwa�VYX½en�[^h`ygadhIVbath^c4jDad_YevcDVb[^hIXwTWVbi�Z*a�cs��adath�_bVzhWa7h`mW�.ZfatjDX�e�hIkXwTWadadcUh`mW�.ZfatjDXt�Ô3h\mI��Z*adj1[�p8XwmW�E�Ëe�jDVbaoX(TIe¸yga.Zfatadh�VbhInd_bmfklatk�evccwTIa�Zfat�gVzhWhWVzhW�E[�p,cwTWa��`[^mWjun�a4Í8[`kWa�yg[g_zmW�Ea � Ô � ��"%�(� +,�.- +�� 0 ���201!�XwTW[v�ÂVzhW� �I_zatX�Vzh [gjukladj[gp�egiWifaoe�jue�hIndag�*cw[^�gadcwTWatj½�ÂVbcwT�cwTWas%$jw[ln�aoklmWjDatXcDTWad|�n�[^h^cue�Vzh Ô�h ��� � � ��"���01� ���� � � !�04[gp�iWjD[ln�aoklmWjDatX��ÂV{cDT _bVzhWah`mW�.ZfatjDX� Ô � � !�0 +,��/ �(0 � �.' � 31� ".+�� !8�ÂVbcwT�cDTWadVzj�yve�_zmWatX� Ô2- ��+�!�!�3 �(�%�%�.�%� .�54 � !�01��� �L�gVzy`VbhW�3cDTWa _bVzhWah`mW�.ZfatjDXq�ÂTWadjDa�ate^nuTLXw|`��Z*[g_4VYX}mIXwatkF� l¨ÅÂadÒXwadjDygaok���[gjukWX.Vbh"<uÍ >�e�hIk e&h`mW�.ZfatjE[�p(nd[g��Ò�E[^hW_b|�mfXÁaok�Xw|\�.Zf[^_zX¢XwmInuT.e^X<wia>(e�hIk <Áma>�TIe¸ygaZ*adath�[g�EV{cwcwaokF� n

Page 11: A Commentary on the Sixth Edition UNIX OS -- Lions

�� �� $�� 0=��� �) � �� $� �� � �2" �����SUTWa�Xw[gmIjDndaUnd[lklaÂTIegX¢Z*adathËklVby`VYklatkEVzh\cw[ �Iy^aÂXÁaon¥cwVz[ghfXd�aoegnuTqklatyg[�cDatk�iWjDVz�EegjwVz_z|7cD[7e<XwVbhW�^_ba.�Ëe�4s[gj½egXwifaon¥c½[gpcDTWa4XÁ|lXÁcwat���SUTWa1Vzh^cDadh\cwVz[ghº�\�ÂTIVznuT�TIegX8Z*adadh�_Ye�jD�gad_z|ËegnuTWVzady^atkF�TIe^X�Z*adath?cw[Ó�Eeg]gaÐaoegnuTMXwatn�cwVz[ghMXwm2�<n�Vzadh\cw_z|?XÁat_{pÀÒnd[gh\cDegVbhWaok&Xw[<cDTIevc�Vbc1�Ëe¸|�Z*aEXÁcwmfklVbaok�e^X1e7mWhIV{c4e�hfkZ*a�pr[^jwa1VbcDX�XwmIndndatXDXÁ[^jDX�TIe¸y^a½Z*adath��Ee^XscDadjDatk �x�2F�����k�O� Vp��2 klaoe�_YX³�ÂVbcwT7Xw|lXscDad�3VbhIV{cDVzeg_bVYXwe�cwVz[gh��`e�hfkiWjD[`ndatXDXÂ�Ëe�hIeg�gat��ath\ct�U��c½e�_YXw[7n�[^h^cue�VzhIX�eg_b_ºcwTWaegXDXÁat��ZW_z|Ë_Ye�hW�^mIe��^a½jD[gmlcDVbhIatX�x�2F�����k�O� hS[�� klateg_zX��ÂVbcwT�Vbh\cwatjwjDmWilcuXd�\cDjDegiIXd�lXw|lXscDad�ndeg_b_YXUe�hIk�XwVb�^hIe�_YXMl¨Xw[�pÀcs�Ue�jDa½Vzh\cwadjDjDmWilcDX n�x�2F�����k�O� h����N2F2 klateg_zX�iIjwVz�Ëe�jDVb_z|Ï�ÂV{cDTLkWVzXw]Ð[gi*adjuevÒcwVz[ghIX½pr[^j(iIjw[^�gjue�� XÁ�Ue�iIiWVbhI�Be�hfk&ZIe^XÁVYn��FZI_b[lnu][gjDVbath\cwatkBVzhWiWmlc��¸[gmWcwiWmlco�8��c�eg_zXw[<klaoe�_YXU�ÂV{cDT�cwTWa�Ëe�hWVziWmW_YevcDVb[^hB[gpºcwTIa�if[`[g_º[�pG_Ye�jD�ga1ZWm��*atjDX�x�2F�����k�O� -��O��� klaoe�_YX��ÂVbcwT �f_baoX e�hfk �I_za�Xw|`XÁcwat�ËX��cwTWatVbjGn�jDatevcDVb[^h��d�ËegVbh\cwathIe�hfn�ag�o�Ëe�hWVziWmW_YevcDVb[^h�e�hIkklatXÁcwjDmIn�cwVz[gh x�2F�����k�O� -j��XO2 klaoe�_YX��ÂVbcwTI<wnuTIegjDe^n¥cDadj½Xwi*atn�VYe�_��I_zatX >W��ÂTWVYnuT(VYXFcDTWa$x½~���¾�cDadjD� pr[^jºXÁ_z[v��XÁi*adaok1ifatjwVziWTlÒadjue�_ºkWady`VzndatX½�ÂTWVYnuT}[gi*adjuevcwa�[gmlc([�p$e<nd[g�E�E[gh��nuTIe�juegn�cwatj8[^jwVzadh\cwaokF�lZWm��¼adj�if[`[g_É�SUTWa(n�[gh\cDadh\cDX$[�p�ate^nuT<XÁaon¥cDVb[^h<VzX$[gmlcD_bVzhWaokËVbh7��[^jwakladcDegVb_�VzhqÍ8TIe�ilcDadj)I[gmWjo�

�� �� $�� 0=��� �) � �� �� " �� �Ì8egnuTq[gp$cwTIa �fygaEXÁaon¥cwVz[ghfX 4smfXsc4klaoXwndjwVzZfaok�nd[ghIXwVYXscuX½[gpXwady^adjue�_ºXw[gmWjun�a4nd[lkla �I_zatXt��SUTWa4hfe��Ea�[gp¢aoegnuT �I_za�VzhlÒnd_bmIkWatXÂeËXwm2�Y97�ÂTWVYnuT�VYklath^cDV �fatXUVbcDXUcs|`i*a �H �?6�K kWadhW[gcwatX e �f_baL[�p�e^XwXwad�.ZW_z|Ó_Ye�hW�^mIe��^a XÁcDevcDa�Ò�Eadh\cDX�H �?�mK klathW[�cDatXÎe �f_ba�[�p&aA9`aon�mlcue�ZW_za <¥Í > _Ye�hW�^mIe��^aXscuevcDad�Eadh\cDX�H � ��K kWadhW[gcwatX�e �I_zaÎ[�p@<¥Í > _Ye�hI�gmIeg�gaÎXscuevcwat�Eadh\cDX�ÂTWVYnuT VzX�hW[gc�pr[^j�XwadiIegjDe�cwa nd[g�EiWVz_ze�cwVz[gh��.ZWmlcpr[gjUVzhIn�_zmIXwVb[^hBVzhB[gcwTWatjs<d� nA> �I_zatXU�ÂTWath7cDTWad|�e�jDan�[^��iIVb_zatk.V � ag�GcwTIas<d� Ta> �I_baoXOn�[^h^cue�Vzh.�^_b[^ZIe�_lklaon¥Ò_zegjDe�cwVz[ghIXt��� �� � � ��� � � � ��� �� �SUTWaoXÁa(hW[gcwatXt�`�ÂTWVYnuTBe�jDa�Vzh\cwathIklatk<cw[EXÁmIiWiW_zad�Eadh\c�cwTWand[g�E�Eadh\cDX.e�_zjwaoegkl|�iWjwaoXÁath\c�Vbh�cwTWa�XÁ[^mWjDnda<n�[lkla^�³e�jDahW[gc,aoXwXwadh\cDVzeg_gpr[^j,mIhIkladjuXÁcDe�hfklVbhI��cwTIaUx½~���¾Î[gi*adjuevcDVbhI�Xw|lXscDad���Â��c�VYX�i*adjwpratn�cw_z|Bi*[^XDXÁVzZW_za�cw[7iWjw[lndadatk��ÂVbcwTI[gmlccDTWad����e�hfkq|g[^m&XwTW[gmW_Ykqe�cÁcwat�Eilc1cw[BkW[�Xw[Be^X�_z[ghW��egX|^[gm�nde�hº�

SUTWa&hI[�cwaoXBegjwa�e�n�jDmlcDnuTº�Âcw[ e�VYkÏ|g[^mÏ�ÂTWadhÏcDTWa�g[^VbhI�ÑZ*atnd[g�EatXqkWV �<n�mI_{co� ��pË|g[gm evcwcwat��iWc}cw[ÏjDategkate^nuT �f_baÂ[^j³iWjD[`ndatklmIjwaU[ghE|^[gmWjO[v�Âh �IjuXsco�g|g[^mWjOVzhWV{cDVzeg_iWjD[g�^jwaoXwX.VzXE_zVz]gad_z|�cD[�ZfaqXw_b[v��adjo�³ZWmWc<|g[gmIjËmW_{cDVb�Ëe�cwaiWjD[g�^jwaoXwX���mInuT&p¨egXÁcwadjo��ÅÂaoegklVzhW�B[�cwTIadj1ifat[giW_zam' X(iWjD[�Ò�gjue��ËX¼VYXºegh4e�jwcº�ÂTWVYnuT4XÁTW[^mW_Yk½Z*a$_zategjwh\cºeghIk1iWjuegn¥cDVzXwatkZ*atndegmIXwa(Vbc�VYXUmIXÁadprmW_)*�� �� ��� � �� ��� 57� � �8�! � � " ��� $ �2 ���

� � ��� ³[gm7�ÂVb_z_ �IhIkËcDTIevcU�E[^XÁc8[gp�cwTWa1n�[lkla½Vbh�x�~���¾LVYX8[�pGeygatjw|}TIVb�^T�XÁcDeghIkWe�jukF�EÇqe�h`|qXwatn�cwVz[ghIX1�ÂTWVYnuT�VbhWVbcwVYe�_z_z|Xwadad�An�[^�EiW_baA9�eghIk�[gZfXwndmWjwa^�,egiWi*ate�j.Vbh�cDTWa7_zVz�gT\c�[�pprmWjwcwTWatjÂVbh`y^atXÁcwVz�^evcDVb[^h�eghIkBjwa�#Iatn�cwVz[gh��`cD[ËZfa�i*adjwpratn�cw_z|[gZ`y`Vz[gmIXUe�hfk3<ÁcwTWa�[^hW_b|7��e¸|EcD[ #I|y>W�

)W[^j$cDTWVzX�jDate^XÁ[^h���cDTWa½[lntndegXwVz[ghIeg_In�[^���Eath^cuX$Vzh<cDTWahW[gcwatX,[^h4iWjD[g�gjue��E�EVzhW��XÁcs|\_zag�^e�_z��[\Xsc,Vbh`yve�jDVYe�ZW_z|1jwadpradjcw[ËegiWiIe�jDadh\cU_zegiIXwatX8prjw[^�?cwTIa�mIXÁmfe�_�XÁcDe�hfkWe�juk<[gpGhWaoe�ji*adjwpratn¥cDVb[^h���ÏTIevc�nte�mIXwatk<cwTWaoXÁa %q�`[^��adcwVz�EatXUVbc�e�iWi*ategjDX8cwTfevccwTIaÏ[gjDVb�^VbhIeg_Ën�[lklaÏTIe^X�Zfatadh iIevcunuTWatk3aA9`i*atkWVbath^cD_b|^�Ç}[^jwaUcDTIe�hË[^hIn�a�egiWiIegjwath^c³_Ye�ifXÁaoX³TIe¸y^aÂiWjw[vy^atk.hW[�c$cw[Z*a�XÁmfnuT ��cwTWab<wZIegka><n�[lkla4TfegX�Z*adath}pr[gmIhIk�Vbhqp¨egn¥c�cw[VzhIn�[^jwi*[gjuevcDa³XÁ[^��a8XÁmWZWcw_zaOprate�cwmWjDa$�ÂTWVYnuT��UegX�hI[�cGe�c,e�_z_e�iIiIe�jDadh\cUVbhWVbcwVYe�_z_z|g�³Ô�hfk�Xw[g�Ea�e�_z_z[v��eghIn�a½VzXÂndadjwcDe�VzhW_z|hWatatklaok<pr[^jÂ[`ntnde^XÁVz[ghIeg_¼T\mI�Eegh��8aoe�]`hWatXDXt���mlc�[^h<cDTWa½�ÂTI[g_za½|^[gm<�ÂVz_b_ �IhfkËcwTfevc�cwTWa1e�mlcDTW[gjuX[�pºx½~���¾.�`Ã1ath7SUTW[^��ifXÁ[^h7e�hIk7Ä�athWhWVYX�Å�V{cunuTWVba^�`TIe¸ygan�jDate�cwaokqe<iWjD[g�^jDeg�/[gp$�gjDate�c½XÁcwjDadhW�gcwT��FVzh\cwad�^jwVbcs|�e�hIka �¼atn�cwVzygathWatXDXd�l�ÂTIVznuT�|g[^m�XwTW[^mW_zk�e^kl�EVbjDa�e�hIk�Xwadad]<cw[ad�.mW_Yevcwa^�

#

Page 12: A Commentary on the Sixth Edition UNIX OS -- Lions

� � �f� � ��� ���� ����

x½~���¾¿jDmWhIX�[gh}cDTWa�_Ye�jD�gatjÂ�E[`kWad_YX�[gp,cDTWa�%8Ä`%�ÖgÖ4Xwa�ÒjDVbaoX1[�pÂn�[^��iImlcwatjDX��Ëegh\mWp¨egn¥cDmWjDatk�Z\|�Ä�Vz�gVbcDeg_$Ì � mWVzilÒ�Eadh\c�Í8[^jwi*[gjuevcDVb[^h��ÏSUTWVzX7nuTIe�ilcDadjËiWjD[vy`VzkWatXËe�ZWjDVbadpXwmW�E�Ëe�jD|<[�pOn�atjÁcue�Vzh�Xwad_zatn�cwaok7praoevcDmWjwaoXÂ[�p,cwTIatXwa4n�[g��ÒiWmWcwadjuXU�ÂVbcwT�iIe�jwcwVYn�mI_zegjÂjwadpradjDadhInda�cD[EcwTWa*%8Ä`%�ÖgÖ �N$^�I���p(cwTWa�jDategkWadjETIegX�hW[gcËiWjwaty`Vb[^mIXÁ_z|��Ëegkla�cwTIa�e^n¥Ò� mIegVbh\cDeghIn�a1[gpGcDTWa*%$Äd%�Ö^Ö(XwadjDVbaoX�cwTWath�TWa�VzX�klVbjDatn�cwaokpr[^jÁcDT\�ÂVbcwT¿cw[�cwTWa�< %$Äd%�ÖgÖ@%³jD[`ndatXDXÁ[^j&È�eghIklZ*[`[g]y>W�iWmIZW_bVYXwTWatk�Z`|7Ä(Ì�ͽ�Ô %8Ä`%�ÖgÖUn�[g�EiWmWcwadj8n�[ghfXÁVYXscuX¢[�pFe1iWjD[`ndatXDXÁ[^j l e�_YXÁ[nte�_z_baok?e3Í %$x n�[^hWhWatn�cwaok3cw[¿[^hWaÐ[^j �E[gjDa �Ead��Ò[^jw|�XÁcw[^jDeg�ga<mWhIV{cuX<e�hIk ifatjwVziWTWatjDeg_Ân�[gh\cDjw[^_b_zadjuX�y`VYe�eZWVYklVzjwaon¥cDVb[^hIe�_Wife�jue�_z_bat_In�[^���.mWhWVYnde�cwVz[ghE_bVzhWa�nte�_z_baok.cwTWa<Dx�hWVzZWmIX >W�(< �� ��� 5 ����� � � �8�

SUTWa�iWjD[ln�atXDXw[gjo�f�ÂTWVYnuT&VYX1klatXwVz�ghWaokqe�jD[gmWhfkqeBXwV 9\cDadathZWVbcÂ�8[^jDk7_bathW��cDT7pr[^jÂVbhfXscDjwmIn�cwVz[ghIXt�lkWevcueEe�hIkBiWjD[g�gjue��e^kWkljDatXDXÁaoXd�vVzhIn�[^jwi*[gjuevcDatX,e�h`mW�.ZfatjO[�p*TWVb�^T�Xwi*adatk.jDad��ÒVYXscDadjuXd�(< )( 57� � � � � � ��$ � �#0���� �8� �

SUTWVYXUXÁV 9`cwatadh7ZIV{cÂjDad�gVYXÁcwadj�TIe^X�XwmWZ��fad_YkWX��ÂTWVznuT�e�jDa½VzhlÒcDadjDiWjwadcwaokBe^X�pr[g_z_b[v��X ��� ��6 ��2F6����N� �����k�O�ÖA$f�bÖ¸� n�mWjDjDadh\cÂ��[lklasl �g��� ]^adjDhWad_ nÖo�W�bÖ�# iWjDady`Vb[^mIX��E[`kWaplsÖgÖ� mIXÁatj� n�l� �W� � iWjD[`ndatXDXÁ[^j8iIjwVz[gjDV{cs|tlrjue�hW�^a(�I�b� ��n$ cwjue�i�ZWVbc# ~4�IXwa�c�Vbp,cwTWa�iWjDady`Vz[gmIXjwaoXÁmI_{cÂ�UegXUhWat�^evcDVby^a� ,�WXwa�c�VbpGcDTWa�iWjDady`Vb[^mIXjwaoXÁmI_{cÂ�UegX datjw[Ö ]��IXwa�c�Vbp,cwTWa�iWjDady`Vz[gmIXjwaoXÁmI_{cÂ�^e¸y^a(eghB[vy^adj #I[v�� ͽ�IXwa�cÂV{p,cwTIa�iWjwaty`Vb[^mIX[gi*adjuevcDVb[^hB�\e¸yga½eËnte�jDjw|SUTWa³iIjw[ln�aoXwXw[gjFnte�h1[gi*adjuevcDaOVbh(cs��[�klV �¼adjDadh\c��E[lklatX �]^adjDhWad_`e�hIk4mIXÁatjt�,Ã1adjDhWad_\�E[lkla8VYXºcwTWaU�E[gjDa³iWjDVby`Vz_bat�gaok[gpGcDTWa1cs�8[ËeghIk�VzXUjDatXwadjDygaok<Z`|<cDTWa�[gi*adjuevcDVbhW�ËXw|lXscDad�pr[^jÂV{cuXÂ[v�ÂhBmfXÁa^�¢SUTIa4nuTW[gVYn�a1[�p,�E[`kWa4kla�cDadjD��VzhWaoX��

SUTWa³Xwa�cº[gp\�Ead�E[^jw|½�EeghIe��^ad�Eadh\cºXwad�^��ath\cDevcDVb[^hjwat�gVYXscDadjuX1�ÂTWVYnuT�VzX.mIXwatk�cD[qcwjue�hfXÁ_YevcDa<iWjD[g�gjue��y`VbjwcwmIeg_�egkWkWjwaoXwXwatX8cw[EiWT`|lXwVznte�_�egkIkljwaoXwXwatX� SUTWaÎegn¥cDmIe�_�jDad�gVYXÁcwadj�mIXwatkÓegX�jD�I��cDTWa=<DXscuegnu]if[^Vbh\cDadj > �ÏTWa�cDTWadj<ndadjwcDegVbhÑVbhIXÁcwjDmIn�cwVz[ghIXEXwmInuTÑe^Xt<wTIe�_bc >�ÂVb_z_FZ*a�[gZ*ad|gaokF�

(< -, � � ��! � � � " � � ���SUTWa(iWjD[`ndatXDXÁ[^j³VzhIn�[^jwi*[gjuevcDatX$e.h`mW��Z*adj�[�p,XÁV 9`cwadath7ZWVbcjDad�gVYXÁcwadjuX([�pU�ÂTWVYnuT�atVb�^T\c�e�jDaEe^ndndatXDXÁVzZW_zaEe�c�e�h`|}cDVb�EaegX+<w�gadhIadjue�_,jwat�gVYXscDadjuX >I��SUTWatXwaEe�jDa.]`hW[v�Âh�egX(ju�W�FjoÖg�j¥�l�`j #I�lj $f�lju�W�ljD��e�hfkBj��`�SUTWa �IjDXÁc,XwV 91[gpWcwTIa8�^adhWatjDeg_gjDad�gVYXÁcwadjuXºegjwa�e¸yve�Vz_zegZW_bapr[gj1mIXwaEegX1egntn�mW�.mW_ze�cw[^jDXt�FegkWkljDatXDX½if[^Vbh\cwatjDX([^j½VzhIklaA9jDad�gVYXÁcwadjuXt�qSUTWaBnd[gh`ygath^cDVb[^h�VbhÑx�~���¾/pr[gj�cwTWaBmIXwa7[�pcwTIatXwa(jDad�^VzXÁcwatjDX�VYX�egX�pr[^_b_z[v��X ���Q����F� e�jDa�mIXwatkBegX$cwad�Ei*[gjue�jD|ËegndndmW��mI_ze�cw[gjuX$kWmWjwVzhW�aA9liWjwaoXwXwVz[gh�adyveg_bmIe�cwVz[gh��ocD[�jwadcwmWjDh4jDatXwmW_bcDXFprjD[g� eiIjw[ln�aoklmWjDag�geghIk�VbhËXw[g�EaÂnde^XÁaoX,cw[4n�[^�E��mWhWVYnde�cwae^n¥cDmIe�_FiIegjDeg�Ea�cwatjDXUklmIjwVzhW�Ëe�iWjw[lndatklmWjDa�ndeg_b_ �m,�����B����N7 e�jDa4mIXwatkqpr[gj(_b[lndeg_ºyve�jDVYe�ZW_zatX½klmWjDVbhW�BiWjD[�ÒndatklmIjwa�aA9latn�mWcwVz[gh�� SUTWatVbj�y¸eg_bmIatX&egjwa�eg_b�E[\Xsceg_b�Ue¸|lX1XscD[gjDatk�mWif[^h�iWjw[lndatklmWjDaEadh\cwjD|g�Ge�hIk�jDa�ÒXÁcw[^jwaok7mIif[^h�iIjw[ln�aoklmWjDa½aA9lV{c,�mg VzXGmIXwatk4e^X�cDTWa$TWaoegk�i*[gVzh\cwatj�cw[(ep<Dkl|`hIe��EVYn³nuTIe�Vzha>[gp$iWjD[ln�atkWmWjwa�egn�cwVzy¸e�cwVz[gh�jwaon�[gjukWX½XscD[gjDatkqVzhqcDTWandmWjDjwath^c�XÁcDe^nu]¼�<��c4VzX�jwadpradjDjwaokqcD[qegX1cDTWaz<Áath`y\VbÒjD[ghI��ath\cUi*[gVzh\cwatj >I�

SUTWa�_YegXÁc�cs��[<[gpOcwTWat<Á�gathWadjue�_ºjwat�gVYXscDadjuX >Ëkl[7TIe¸ygae�Xwifaon�VYe�_IXwVb�^hWV �fndeghIn�aÂe�hfkËe�jDa8cD[�e�_z_WVzh\cwadh\cuXd��<wXwifaon�VYe�_iWmWjDi*[^Xwa�> ���v l¨e�_YXw[:]`hW[v�Âh e^X <DXÁia>4nÐVYX�mIXÁaok e^XÐcDTWa3XÁcDe^nu]i*[gVzh\cwatjt�¿SUTIat%$Äd%�Ö^Ö �N$^��iWjD[`ndatXDXÁ[^jËVbhfn�[gjDi*[�ÒjuevcDatX�cs��[LXwadiIegjDe�cwaÑjwat�gVYXscDadjuX&�ÂTWVYnuT3�Ee¸| Z*amfXÁaok}egXs<DXÁia>I�IklatifathIklVzhW�<[gh��ÂTWadcwTWatjÂcwTIa4iWjD[�ÒndatXDXÁ[^jOVzX³VbhE]gatjwhIad_l[gjOmfXÁatj³�E[`kWag�¢~�[�[�cDTWadj$[ghWa[gp�cDTWaB�^adhWatjDeg_Ujwat�gVYXscDadjuX4VYXËklmWiW_zVzntevcDatk�VzhÑcwTWVYX�Ue¸| � ~=l¨e�_YXw[�]`hW[v�Âh egX3<Ái¼nA>4nËVYX7mIXwatk egXËcDTWa&iIjw[^�gjue��VzhIXÁcwjDmIn¥cDVb[^h}egkWkljDatXDX�jwat�gVYXscDadjo�(< 43 � � � � � 0�� �#"���� $ �SUTWaY%$Äd%�Ö^Ö�VzhIXscDjwmfn¥cwVz[gh�XÁadc1VzhInd_bmIkWatX1kl[gmIZW_ba^��XÁVzhW�^_bae�hfk dadjD[}[gi*adjue�hfk�VzhIXÁcwjDmIn¥cDVb[^hIXt����hfXscDjwmIn�cwVz[gh�_zadhW�gcwTVYX4mIXwmIe�_z_z|&[ghIa<�8[^jDk��G�ÂVbcwT Xw[g�EaËVzhIXÁcwjDmIn¥cDVb[^hIX4Z*adVzhW�a�9`cDadhIklaokEcw[.cs��[4[gj8cwTWjDada½�8[^jDkIX³�ÂVbcwTBe^kWklVbcwVz[ghIeg_*e^k`ÒkljDatXDXÁVzhW��VbhWpr[gjD�Ee�cwVz[gh���ÏV{cDTÑXwVbhI�g_za7[gi*adjue�hfk�VbhIXÁcwjDmIn�cwVz[ghIXt�¢cwTWaB[gi*adjue�hIkVYX�mIXwmIe�_z_b|Ónde�_z_zatkÓcwTWa <DklatXÁcwVzhIe�cwVz[gha>2}�ÂV{cDT kW[gmWZW_za[gi*adjue�hfk�VbhIXÁcwjDmIn�cwVz[ghIXt�,cwTWaBcs�8[&[gi*adjue�hIkWX.e�jDa7ndeg_b_zatkcwTIa�<DXÁ[^mWjun�a�>(e�hfk <DklatXÁcwVzhIevcDVb[^ha>W�,SUTWaUyve�jDVb[^mIX,��[lklaoX[�p¢egkWkWjwaoXwXwVbhI��egjwa�klaoXwndjwVzZfaok7_YevcDadjo�SUTWa8pr[g_z_b[v�ÂVzhW��VzhIXÁcwjDmIn¥cDVb[^hIX,TIe¸yga8Zfatadh.mIXÁaok�Vzh4cDTWa�I_za <w��$\�W� X >EVÉ� ag�½cwTWa �I_za�[�p$e^XwXwad�.ZW_z|B_Ye�hW�^mIe��^a�XwmWilÒi*[gjwc�jw[^mlcwVzhWatXFpr[gj�mIXwa³�ÂVbcwT1cDTWa�ÖgÖ���$\�$iWjD[ln�aoXwXw[gjo��~�[gcwacwTfevc8~���,�o] e�hIk7ÍÑegjwaUcDTWa�n�[^hIklVbcwVz[gh<nd[`kWatXOVÉ� a^�¢ZWV{cuXVzh<cwTIa½iWjD[ln�aoXwXw[gj$XÁcDe�cwmIX���[gjukfl�<wiIX >4n¥�le�hfkEcwTIe�c8cDTWatXwae�jDa�Xwa�c�egX(XÁVYkla.a �¼atn¥cuX([�p³�Ëe�h`|�VbhfXscDjwmIn�cwVz[ghIX½Z*atXwVzklaoX

$

Page 13: A Commentary on the Sixth Edition UNIX OS -- Lions

4smIXÁcY<ÁZWVbc >I��<Dn��Eia>.e�hIkz<ÁcDXÁc > lr�ÂTW[\XÁa(XscuevcwaokËprmWhfn¥cwVz[ghVYX�cw[<Xwa�cÂcDTWa�n�[ghfklV{cDVb[^h}n�[lklatX n¥�/1��� Ô�kWkqcwTWa�n�[^h^cDadh\cDX�[�pOcDTWaËÍ ZWVbc(cw[<cDTWa.kWatXÁcwVzhIevÒcwVz[gh /1��� Ô�kIk7cDTWa4Xw[gmWjun�a½cw[EcDTWa4klatXÁcwVzhIe�cwVz[gh /16 � �`TWVbpÀc�cwTWa�n�[^h^cDadh\cDX.[�pÂcDTWa�kla �IhIatk�jDad�^VzXÁcwatj�_za�pÀccwTWaÑh`mW��Z*adj�[�pËcwVz�EatX�XÁi*atndV �fatk Z`|LcwTWa XÁTIV{pÀcn�[^mWh\ct� l¨Ô hWad�\evcDVby^a yve�_zmWaLVb�EiW_zVbaoXÎe jDVb�^T^cXÁTIV{pÀco� n%/16 ��� �lVb�EVz_zegj¢cw[f<we^XÁTO>�aA9lndadilcOcDTIevcOcs��[1jwat�gVYXscDadjuX¢e�jDaVbh`y^[g_zygatk /16�5 �`TWVbpÀcËeg_b_UZWVbcDX�[^hWaBiI_ze^n�aBcw[�cwTWa�_badpÀct� ��Vbc<�qZ*a�Òn�[^��aoXU�Ëe�hIkBZWVbc4Öo�.VzXU_z[^e^klatkBVzh^cD[BÍ /16�� �`TIV{pÀc�eg_b_¢ZWVbcDX1[^hWa.iI_ze^n�a�cw[BcwTWaEjDVb�^T\ct�.��VbcËÖo�7VzXjwatiW_zVzntevcwaokBeghIkBZWV{c���VYXÂ_z[^egkWatkBVbh\cw[7Í 2�� ��jue�hInuT�Vbp,aoe�mIeg_ �lVÉ� a^�OV{p � _ �GO2 ��jue�hInuTBV{p¢�gjDate�cwatj8cDTIe�h�[^jÂa � mIe�_¼cD[I�lVÉ� a^�OV{p~ � ]

��� ��jDeghInuT7VbpOTWVz�gTWatjt�`VÉ� a�Vbp³Í � �EeghIk � � ���k6 �8jue�hfnuT7Vbp,TWVz�gTIadjÂ[gjUcDTWa4XDe��Eag�lVÉ� a^�OV{p$Í � � ���� Í8_baoe�j�aoegnuT�ZWVbc�cw[ datjw[�Vzh�cwTWa<klaoXscDVbhfevcwVz[gh�cDTIevcn�[^jwjDatXwif[^hIkWX$cw[<e�hW[^hlÒ tadjD[.ZIV{c�Vzh�cwTWa4Xw[gmWjun�a����6 %¢adjwpr[gjD�/egh <ÁVzhInd_bmIXwVzyga4[^j >Ë[gp$XÁ[^mWjun�a�eghIkqklaoXscDV{ÒhIevcDVb[^hËe�hIkEXÁcw[gjDaUcwTIa�jwaoXÁmI_{c$VzhEcwTIa�klatXÁcwVzhIe�cwVz[gh �� � %¢adjwpr[gjD�?e._z[g�^Vznte�_q<weghIk1>.[�pGcwTWa�Xw[gmWjun�a1e�hIk�klaoXsÒcwVzhIevcDVb[^h7cD[<XÁadcUcwTWa4nd[ghIklVbcwVz[gh}nd[`kWatX��5�2 ��jue�hInuTBV{p,�gjDatevcDadj8cwTIegh�[gjUa � mIeg_fcD[I�WVÉ� a(Vbp � Ö[gjÂ~ � ]

�5�� ��jDeghInuT7Vbp¢_b[v��adjSlÀcDTIe�h tadjD[4n¥�lVbp$Í � _1���2 ��jue�hInuT�Vbp,hW[gcÂa � mIe�_Rlrcw[ tadjD[4n¥�lVÉ� ag�OVbp � �2�� ��jDeghInuT<cD[<e�_b[lnde�cwVz[gh��ÂV{cDTWVzhBcDTWa�jue�hW�^a�lÁ�lÒDÖ¸��(I����.Öo�\��n$�ÂTWadjDau<d� >&VYXUcwTIa4n�mWjDjwath\cU_z[lnde�cwVz[gh �o5�� Í8_baoe�j�Í �o5 � Í8_zategjUkWatXÁcwVzhIevcDVb[^hBcD[ dadjD[2�o0�� Í8[^�EiIe�jDa¢cwTWa8XÁ[^mWjDndaOe�hIk1klaoXscDVbhIe�cwVz[gh(cw[½XÁadcFcwTWan�[^hIklVbcwVz[gh�n�[lklatXt�<~ VYX�XÁadc4V{p�cwTWa<Xw[gmIjDnda�yveg_bmWaVzXU_zatXDX�cwTfe�h�cwTWa4kWatXÁcwVzhIevcDVb[^hByve�_zmWa���2F� �lmWZlcwjuegn�c$[ghIaÂprjw[^�¿cDTWa�nd[gh\cwath^cuX³[gp*cDTWa½kWatXÁcwVzhIevÒcwVz[gh ��� X SUTIaM#\��ZWVbcUcs�8[O' X�n�[^�EiW_bat�Eadh\c�Vzh\cwat�gadjÂXÁcw[^jwaokËVbhjwh�e�hIkBj�lrh��½_ ndlr�ÂTWatjwa(hBVYXUady^adhOn8VYXÂklVzy\VYklaok7Z`|cwTWaÂXw[gmWjun�a�[gi*adjue�hfkF�GSUTWa � mW[gcwVzadh\cOVzX¢_za�pÀcOVzh�jDh��e�hIk7cwTIa�jwat�EegVbhfkladjUVzh�j�lrh��½_ n%

����� Ô�kWk�[ghIa1cw[�cwTWa4nd[gh\cwath\cDXU[�p,cwTIa4klatXÁcwVzhIevcDVb[^h � 0�� ÊgmW�Ei�cw[�cDTWa4klatXÁcwVzhIe�cwVz[gh � 6A� Ê^mW�Ei�cw[}XÁmIZWjw[^mlcwVzhWa^��ÅÂad�^VzXÁcwatj1y¸eg_bmIatX1e�jDa.XwT`mlpÀÒ

#fatk�egX�pr[^_b_z[v��X��i¼n��Ijwh�� ��l¨XwiOn �¿klatXÁct�z�li*ng�WjDh

0 � ��� %³mIXwT�[gh\cw[EcDTWa4n�mIjwjDadh\c�XÁcDegnu]<cwTWa4yveg_bmWa�[gpGcDTWakWatXwVb�^hIevcDatkÓ�8[^jDk VzhÓcwTWa <wiWjwaty`Vb[^mIX >�egkWkWjwaoXwXXwiIe^n�a�0P�FX Í8[^i\|<cwTWa4Xw[gmWjun�a(yve�_zmWa1cw[�cDTWa4klatXÁcwVzhIe�cwVz[gh 0t����� %¢[giBcwTIa4n�mWjDjwath\cÂXÁcDe^nu]7e�hfkBXÁcw[^jwa(cwTIa�y¸eg_bmIa�VbhcDTWa8kWatXwVb�^hIevcDatk���[gjuk(Vbh�cwTWa�<ÁiWjDady`Vz[gmIX >ÂegkWkWjwaoXwXXwiIe^n�a�0}��5 Ç}mW_bcwVziW_b|EcDTWa1n�[gh\cDadh\cDX8[�p�jDhBeghIkEcwTIa(Xw[gmWjun�a^�G��phËVYX³atygath���cDTWa�iWjD[lklmIn�c³VzX$_badpÀc8VzhËjwh<eghIk�j�l¨h��½_ n%�N2F6�24� �`a�c½cwTWa��s~��sS _zVzhWa�[^h}cwTWa�x�hWVzZWmIX½pr[^j.Öo�Ë�EVb_bÒ_zVYXÁaon�[ghfkWXd��SUTWVYX��ÂVb_z_UTIe¸ygaËcDTWa�a �¼atn¥cE[�p½jwatVbhWVbÒcDVzeg_bVYXwVbhW�Ëeg_b_FcDTWa4klaty\VYn�a�nd[gh\cwjD[g_z_batjDX��N�a� ÅÂ[�cuevcwa.e�_z_GZWVbcDX½[�pOcDTWa.kWatXÁcwVzhIevcDVb[^hq[ghWa.iW_Yegn�a4cw[cDTWa�jwVz�gT\ct�?��Vbc��ÑVzX�_z[^e^klatkÏVzh\cw[Ïͽ�UeghIkÏcDTWaiIjwaty\Vz[gmfXUy¸eg_bmIa([gp³ÍÏVzX�_b[\egklaok7Vzh\cw[EZWVbc4Öo�&����6 ÅÂadcwmWjDh prjD[g� XÁmWZIjw[^mlcwVzhWag�ÎÅÂat_b[\egk�i¼n�prjD[g� jDh��eghIk�jwat_b[\egk7jwhBprjw[^�McDTWa4Xscuegnu] ���A� ÅÂadcwmWjDhËprjD[g�3Vbh\cwatjwjDmWilc8[gj³cDjDegi��OÅÂad_z[^e^kEZf[gcwT<i¼neghIk�iIX�prjD[g�?cDTWa4Xscuegnu] 6 � �lmWZlcwjuegn�cÂcwTWa4nte�jDjw|EZWVbc�prjD[g�?cDTWa4klaoXscDVbhIe�cwVz[gh 6�� �`mWZWcwjuegn¥c�[^hWa�prjD[g� cwTWaËklaoXÁVz�ghIe�cwaokqjDad�gVYXÁcwadjo����pcDTWa&jDatXwmW_bcBVYX<hW[gc tadjD[I�ÂZWjue�hInuTÎZIe^nu]=<w[ �FXÁadc >��[gjukWX�6��� �`mWZWcwjuegn¥cUcDTWa4XÁ[^mWjun�a(prjw[^�?cwTIa4klatXÁcwVzhIevcDVb[^h 6�[i/� Ì�9WnuTIeghW�ga�cDTWaqTWVz�gTÐeghIkÎ_b[v� [^jDklatjËZ`|^cDatX7VbhcDTWa4klaoXscDVbhIe�cwVz[gh ��6�� �`a�cUcwTIa1nd[ghIkWV{cDVb[^hBn�[lklaoXd�l~ e�hfk ,�We^ndn�[^jDkWVbhW�4cw[cDTWa4n�[^h\cwadh\cuXU[�p,cwTWa4klaoXscDVbhfevcwVz[gh [i/1��� �skl_ba�cwTWa½iWjw[lndatXDXÁ[^j³e�hIkEjDad_zate^XÁaÂcDTWa�x�hWVbZImIX$mIhlÒcDVb_GeETIe�jukl�Ue�jDa�Vzh^cDadjDjwmIilcÂ[`ntn�mWjuXt�

SUTWaE<wZ`|^cDa�>�y^adjuXÁVz[ghË[gp¼cwTWa½pr[g_z_b[v�ÂVzhW�4VzhIXÁcwjDmIn¥cDVb[^hIXe�jDa4mIXwatk�Vzh}cDTWa �f_bat<Á�Y$^�I� X >W�Ie^X���ad_z_,e^XÂcDTWa <w�8[^jDk1>ygatjDXwVz[ghIX�klatXDn�jDVzZfaok�egZf[vy^a �ZWVYX VzhInn�_zj �E[vyn��Ei cDXÁc

Page 14: A Commentary on the Sixth Edition UNIX OS -- Lions

(< �� ��� �=� � � " ��� : � � �

Ç}mfnuT�[gp¢cwTWa�hW[vy^ad_bcs|7e�hfk�nd[g�EiW_za�9lVbcs|7[�p,cwTIai%$Äd%�Ö^ÖVzhIXÁcwjDmIn¥cDVb[^h:XÁadc _zVzatXÑVbh:cwTWaLyve�jDVbadcs|3[gp&egkWkWjwaoXwXwVbhI��E[lklatX��ÂTWVYnuT��Ëe¸|�Z*a7mIXwatk�pr[^j.kla��IhWVzhW�qcDTWaBXw[gmIjDndaeghIkBkWatXÁcwVzhIevcDVb[^h�[^ifatjDeghIkWXt�SUTWa$e^kWkljDatXDXÁVzhW�U�E[lklatXF�ÂTIVznuT�e�jDaOmIXwatk(Vzhf<Á�Y$^�I� X >egjwa�klaoXwndjwVzZfaok7Z*ad_z[v���C 24G ��6���24�s���Z��2�� SUTWa [gi*adjue�hIkLjDatXwVzklaoX}Vzh [ghWa�[gpcwTWa1�^adhWatjDeg_Fjwat�gVYXscDadjuXd�`ag� �I�

�������������� ����������������������

��h�cwTWa4pr[g_z_b[v�ÂVzhW�<�E[lklatXt�WcDTWa.kWatXwVb�^hIevcDatk�jwat�gVYXsÒcwatj$n�[^h^cue�VzhIX³eghEe^kWkljDatXDXOyve�_zmWa��ÂTWVYnuTEVzX$mIXwatk�cw[_b[lntevcwa(cDTWa�[gi*adjue�hIk��C 24G ��6���24� �+2 � 24���N24� �&�Z��2�� SUTWa½jDad�^VzXÁcwatj8nd[gh\cDegVbhIXcwTWa�e^kWkljDatXDXU[�pºcDTWa�[gi*adjue�hfkF�lag� �I�

��� ����� � ���� �!�"�$#%������&�����'�(�)� �

T �����O�k���m��2F0P2F���Y���Z��2�� SUTWaOjDad�^VzXÁcwatj�n�[gh\cue�VzhIX*cwTWaegkWkWjwaoXwX�[�p³cDTWa.[^ifatjDeghIkF�1Ô�X1e7XwVYkla.a��*aon¥co�¼cwTWajwat�gVYXscDadj}VYX}VzhIn�jDad�Eadh\cDatk evpÀcDadj}cDTWa [^ifatjDe�cwVz[gh��ag� �I������ ��� � �$*'+�# � �����'�$*��� ���-,��$*.�������� ���/�0�����'� *�1 #2�"�$#%� */�0�"�$#%�$*

T �����Z��2F�m��2F0P2F���Y���Z��2�� SUTWaOjDad�^VzXÁcwatjFVzX�kWatn�jDad�Eath^cDatke�hIk7cwTIadh�[gi*adjue�hIk��lag� �I���� �435�����'����635���-,��-��������!�����'� */�735�"�$#8������635�"�$#%�

�����2 � ���Z��2�� SUTWa�jDad�^VzXÁcwatj$n�[^h\cDe�VzhIX³e4y¸eg_bmIa��ÂTWVYnuTVzX.egkWkWatk�cD[&eqXwV:9`cwatadh�ZIV{c��8[^jDk�pr[^_b_z[v�ÂVbhI��cwTWaVbhfXscDjwmIn�cwVz[ghBcw[�pr[gjD�McDTWa�[gi*adjue�hfk7egkIkljwaoXwXt�lag� �I������ ������� ����096:��"�$#8�(�0�"�$#8����09<;���=>�� �(����� �(�������� 3�,$�������'�(�0��� � �

Ľadi*adhfklVbhI��[^hÑ|^[gmWj�y`Vbat�Âif[^Vbh\co�$Vzh�cwTIVzXE�E[lklacDTWa�jwat�gVYXscDadj<VYX7atV{cDTWadj�e�hÏVzhIklaA9Ïjwat�gVYXscDadj7[^jBeZfegXwa}jwat�gVYXscDadjo�LSUTWa}_YevcwcwatjBnde^XÁaqe^n¥cDmIe�_z_b|ÑiWjDa�ÒkW[g�EVbhfevcwaoXqVzh <Á�Y$^�I� X >W��SUTWa�cDTWVbjuk a�9Weg��iI_baegZf[vy^a�VYX8e^n¥cDmIe�_z_b|Ë[^hWa�[gp�cwTIa�prat�ÐmIXwatX8[�pGe.jwat��ÒVYXÁcwadjUegX8e�hËVzhIklaA9EjDad�^VzXÁcwatjt� l¨~�[�cwa�cwTIe�c�< jwat_b[lnA>VYX�egh�e^ndn�atilcDegZW_za(yvegjwVYe�ZW_za(hIe��Eag� nSUTIadjDa(egjwa½cs�8[�egkWkWjwaoXwXwVbhI���E[lklatX��ÂTW[\XÁa(mIXwa½VYX_zVz��Vbcwaok�cw[�cwTIa1pr[g_z_b[v�ÂVzhW��cs�8[�a�9Weg��iI_baoX��

? � ��#8�@�0�����'� *? #BA��0+/�����'�

SUTIa �IjuXsc8a�9We��EiW_za�Vzh\y^[g_zygaoX,cwTWa½mIXÁa�[�p¼cwTWa <,��$$�0 +���� %�.��� �%� 0 '��(�%�%���.�.'A>7�E[lkla^��l¨SUTIVzX½[lndn�mIjDX�VbhcDTWaËjD[gmlcDVbhWaz<Dndeg_b_ >7[^h�_bVzhWatX��`�N(\�l���\��×g×I� nÑSUTWae^kWkljDatXDX�[�p,e.jD[gmlcDVbhWa1Vzh\cwadhfklatk7pr[gjÂaA9`aon�mlcDVb[^h7VYXcD[7Z*a�pr[gmIhIk}Vzh}cwTWa.�8[^jDk�e^kWkljDatXDXÁaokBZ`|�jD�I�IVÉ� a^�cs��[Â_zadygat_zX�[�plVbhfklVbjDatn�cwVz[gh�e�jDaOVzh\y^[g_zygaokF��SUTWaOp¨e^n¥ccDTIevc4ju�BVzX1VzhIn�jDad�Eath^cDatk�egX�e�XÁVYklaËa��*aon¥c�VzX1hI[�cjDad_zadyvegh^cÂVzh�cwTWVYXÂmIXDe��^ag�SUTIa&XÁaon�[^hIk a�9We��EiW_za3lr�ÂTIVznuTÏ[lndndmWjuXË[ghÎ_zVbhWaoXÖo�^�^�l��Öt�g�^�on(VYX.egh�VzhIXscue�hInda7[gp�cDTWa <�����'���C '�����%��������'�>E�E[lkla^�¢SUTIa1kWatXÁcwVzhIevcDVb[^hB[gpºcwTIa+< 4smW�Eia>VYX�cwTIa�nd[gh\cwath\c�[gp�cwTIa���[gjuk��ÂTI[^Xwa�e^kWkljDatXDX�VYX_Ye�Z*ad_z_zatk}Z`|3<D�vp > ��� $ !�cwTWa.yve�_zmWa4[�pOju�bl¨e7XÁ�Ëe�_z_i*[^XwVbcwVzyga<Vzh\cwad�^adj n¥��SUTWVYX4VYX�eqXÁcDeghIkWe�juk���e¸|qcw[Vz�EiW_zad�Eadh\c�eE��mI_{cDV{Ò���e¸|<Xw�ÂVbcDnuT��SUTIa pr[^_b_z[v�ÂVbhI�Ðcs��[ �E[lklatX�mIXwa�cDTWaÑiIjw[^�gjue��nd[gmWh\cDadj�egX½cwTIa�klaoXÁVz�ghfevcwaokqjDad�^VzXÁcwatj�cD[�e^nuTWVzadygandadjwcDegVbh�XÁi*atndVzeg_Fa �¼atn�cDXt�

�0P0324����/1��2E�&�Z��2�� SUTWVzX(VYX�cDTWa�i¼n�e�mlcD[gVzhIn�jDad�Eadh\c�E[lkla^�GSUTWa³[^ifatjDeghIk(VzXFcwT`mIX�aA9`cwjuegn¥cDatk½prjD[g�ÐcDTWaiIjw[^�gjue��?XscDjwVzhW�f�\VÉ� ag�¢V{cÂZ*atnd[g�EatXUe�hBVb�E�EatkWVze�cwa[^ifatjDeghIkF�la^� �f��0���ED0�/���>��0���ED0�/�0��� � �9 � �4D�,$F/�)���8��6D�G8HJI�K��/�����8��6D0F�F��>��:/�0����� � *

CE2F5k/y����XO2f���Z��2�� SUTWVYX�VYXUcDTWa4i¼n4VzhIkla�9��E[lklag�USUTWae^kWkljDatXDX¼jwat_ze�cwVzyga¢cD[UcwTWa$ndmWjDjwath^cFiWjD[g�^jDeg�Ðn�[^mWh\cwadjyveg_bmWa�VYX�a�9`cDjDe^n¥cwaokÐprjD[g� cwTWa�iWjD[g�^jDeg� XscDjwVzhW�eghIkÏegkIklatk cD[�cwTWa�i*n}yveg_bmWa�cD[�pr[gjD� cwTWa&egZlÒXw[g_zmlcDa4egkWkljDatXDX�[�pGcwTWa�[^ifatjDeghIkF�lag� �I�9 � �4D0L�������M�I9 �$N D����OI0I�P���Q� �RI�I�P��8��!�"�$#%�-��G8HJI�K>:

��cB�Ëe¸| Z*a&hI[�cwaokÎcwTfevc7aoegnuTÏ[�p1cDTWa&�E[lklatX3<ÁVzhlÒklaA9y>I� <ÁVzhIklaA9�kla�pratjwjDatk1>I��<ÁVz���EaoklVze�cwa�>½eghIkb<wjwat_ze�cwVzyga�>a�9`cDadhIkWX�cDTWa�VzhIXscDjwmfn¥cwVz[gh}XwV( ta1Z\|7[ghWa1��[gjukF��

Page 15: A Commentary on the Sixth Edition UNIX OS -- Lions

SUTWa.a�9lVzXÁcwathIn�a�[gp¢cwTWat<we�mWcw[gVzhIndjwat��ath\c >Ee�hIk <De�mlÒcD[`kWatn�jDad�Eath^c >Ë�E[lklatXt�*cw[g�^a�cDTWadj½�ÂV{cDT}cwTWa�XÁi*atndVzeg_,e�cÁÒcDjwVzZWmlcDatX,[�pIju�W�¸�Ëe�]^a$Vbc¢nd[gh`ygathWVzadh\cw_z|½i*[^XDXwVbZW_za8cw[1XscD[gjDa�Ëe�h`|([gi*adjue�hIkIXFVbh4e�Xscuegnu]¼�t[^jºÆ�� )�! _bVYXsco�¸�ÂTWVznuT��gjD[v��Xkl[v�Âh`�Ue�jukWX�Vbh&��at�E[gjD|g�8SUTIadjDa�e�jDa�eËh`mW��Z*adj�[gp³egk`Òyve�h\cue��gaoXÂ�ÂTWVYnuT #I[v�LprjD[g�"cwTWVYX ��n�[lkla�XÁcwjDVbhI�7_zadhW�gcwTIXegjwaËXwTW[gjwcwatj4e�hIk�Vbc4VzX�ate^XÁVzadj1cD[}�ÂjwVbcwaËi*[^XwV{cDVb[^h�Vbhfkla�Òi*adhIkWadh\c�n�[lkla^�(< �' � � "�� ��� � ��� �� ��SUTWa�x½~���¾ egXDXwad��ZI_batj8VYXÂe4cs��[�iIegXDXUegXDXÁat��ZW_zadj��ÂV{cDTlÒ[^mlc��Ëe^n�jD[Ïp¨egndVb_zV{cDVbaoXd�5Ô prmW_z_EkWatXDn�jDVbilcDVb[^h �Ëe¸| Zfapr[^mWhIkBVbhBcwTWau<Dx�~���¾ Ô½XwXwad�.ZW_batjÂÅÂa�pratjwathIn�a�Çqegh\mfe�_ >�ÂTWVYnuT�VzX�nd[gh\cDegVbhIatkBVbh�cwTIaf<wx�~���¾ Ä�[lndmW�Eadh\cDX >SUTWa�pr[^_b_z[v�ÂVzhW�EZWjwVza�pOhW[gcwaoX�XÁTI[gmW_Yk�Zfa4[gp³XÁ[^��a4e^XsÒXwVzXÁcDeghIn�a �� /�� e}XscDjwVzhW��[�pÂklVz�gVbcDX��Ëe¸|&kla��IhWa7e�nd[ghIXÁcDegh^c4h`mW��ÒZfatjt��SUTWVYX½VYX�egXDXwmW�Eatk}cD[�ZfaËe�h�[ln¥cDeg_Oh`mW��Z*adjmWhW_zatXDXËcDTWa�XÁcwjDVzhW��VYX<cDadjD��VzhIe�cwatkÐZ\|Ïe ifatjwVz[lk

l�<t� >4n¥�¸�ÂTWadh�V{c,VzXGVbh\cDadjDiWjwadcwaok4egXGe�klaon�Vz�Eeg_^h`mW��ÒZfatjt�� �� SUTWa7nuTfe�juegn¥cDadjb< �N>�VYX4mIXwatk�cw[&XwVb�^hWVbpr|&cDTIevc.cwTWajwaoXscÂ[gpºcwTIa�_bVzhWa�VYXÂeËn�[g�E�Eadh\c,� ��� ��pÂcs�8[&[gj4�E[gjDa7XÁcDe�cwad�Eath^cuX4[lndndmWj4[^h�cwTWa�Xweg��a_bVzhWa^�`cwTWat|7��mfXsc�Z*a4XÁatiIe�juevcDatk7Z\|BXÁat��VYn�[^_b[^hIX�� �� SUTWaUnuTIe�juegn�cwatj<d� >�VYXGmfXÁaok�cw[1klathW[�cDa$cDTWa�ndmWjDjwath^c_b[lntevcwVz[gh � 2� x�~���¾ egXDXÁat��ZW_zadj�mIXwatX8cwTIa1nuTfe�juegn¥cDadjuX���e�hIk3<� �>�ÂTWadjDa(cwTWa4Ä(Ì�Í egXDXwad��ZI_batjDX�mIXwaf<���>Ee�hIk <��d>jwaoXÁi*atn�cwVzygat_b|^�� ��� Ô�h�VzkWadh\cwV �Iadj�nd[ghIXwVzXÁcDX½[�p�eBXwa�c1[�p8eg_biITIe�h`mW�EadjDVYnnuTIe�juegn�cwatjDXpl¨Vbhfn�_zmIklVzhW�qcDTWaBmIhIkladjuXDn�[gjDa�n��r!½hW_z|cwTWa �IjuXscEadVz�gT\c<nuTIegjDe^n¥cwatjDX.e�jDaBXwVb�^hWV �fndegh^cËe�hfkcwTWa �IjuXÁc��Ee¸|7hW[�cÂZ*a�h\mI��atjwVYn�� G�� ~�eg��aoX(�ÂTWVznuT�[lndn�mIj½Vzh <¥Í ><iWjD[g�^jDeg�EX�pr[gj(yve�jDV{Òe�ZW_zatX��ÂTWVYnuTÓegjwaÑcw[LZfa ]`hW[v�Âh¿�^_b[^ZIe�_z_z|g�Ee�jDa�E[`kWV �Iaok4Z`|�cDTWa�e^kWklVbcwVz[gh�[�pfe½iWjDa �19�nd[ghIXwVYXscDVbhW�[�p³eËXwVbhW�^_ba�mWhIklatjDXDn�[^jwa^��SUT`mIX�pr[gj�aA9leg�EiW_ba4cwTWayve�jDVzegZW_bar< jDad�^_b[ln�>B�ÂTIVznuT�[lndndmWjuX1[gh�_zVbhWa}Öo�^�^�Vbh�cDTWa4egXDXÁat��ZW_z|<_Ye�hW�^mIe��^a �f_ba^�R<Á�Y$^�I� X >W�ljDa�pratjDXcw[ËcDTWaEXweg��a�y¸egjwVYe�ZI_ba�e^XE<wjwat�g_z[lnA>Eevc(_bVzhWa��g�\�^�[�pGcwTWa �I_zag� <scwjue�iº� n�> � �� SUTWatjwa�egjwaUcs��[4]`VzhIkWX³[gp�Xscuevcwat�Eadh\c8_Ye�Z*ad_YX��,hIeg��a_zegZfat_zX½e�hIk�h`mW�EatjwVYn4_Ye�Z*ad_YXd��SUTIa�_YevcÁcDadj(n�[ghfXÁVYXsc[�p�e4XwVbhI�g_za�klVz�gVbc$pr[g_z_z[v�8aokEZ\|Ee4nd[g_z[gh��`e�hIkEhIadatkhW[�c8Zfa�mIhWV � mWa^�OÔÏjwadpradjDadhIndaÂcw[ <Áhlp >4�ÂTWadjDas<Áha>VzXÂeËkWVb�^V{co�WjwadpradjuX8cw[EcwTIa �IjDXÁc�[lndndmWjwjDadhfn�a([�p,cwTWa_zegZfat_j<Áh � >&pr[gmWhIk�Z`|7XwategjDnuTWVzhW�.pr[gjD��egjDk��

ÔÐjDa�pratjwathIn�a�cw[ <wh`Za>�VYX�XwVz��Vz_Ye�j$aA9Wn�adiWc8cDTIevc8cwTWaXÁaoe�junuT�VYXËn�[ghfklmIn¥cDatk Vbh cwTIa�Zfegnu]`��egjDkIX�klVzjwaon¥ÒcwVz[gh

� ��� Ô�h}egXDXÁVz�ghW�Eath^c�XÁcDe�cwad�Eath^cÂ[gpGcDTWa1pr[gjD�Vzklath\cwV �Iadj � a�9liWjDatXDXÁVz[gh

e^XwXw[ln�VYevcDatX1e�yve�_zmWa /1��� cs|`ifa<�ÂVbcwT�cDTWaËVzkWadh\cwVbÒ�fadjo�O��hBcDTWa�a�9Weg��iI_ba

� � �^���\�cDTWa�[gi*adjuevcD[gjM'��o'fklad_zVby^adjuX8cwTWa�yve�_zmWa�[gpºcwTIa �IjuXsc[^ifatjDeghIk&eghIk�cDTWa�cs|\i*a�[�p³cDTWaËXÁaon�[ghfk}[gi*adjue�hIkl¨Vbh�cDTWVzX�ndegXwag��<w_b[lntevcwVz[ghO>on�

� � � SUTWa�XÁcwjDVbhW� � mW[gcwa4Xw|\�.Zf[^_zXUegjwau<��e>�e�hfk@<��e>W�� ��� �\cuevcDad�Eadh\cDX�[�pºcDTWa1pr[gjD�

� �g_z[gZI_�9¼�I|g�& XwadjDyga�cD[ �Ëe�]^a�cwTWa�hIe��EaoXP< 91>I�s<Á|y>�e�hIk�<� �>aA9`cwadjDhIeg_1

� 5�� SUTIaLhfe��EatX"< aokWevcuem>Óe�hIk < adhfk1> e�jDa�_z[^e^kladjifXÁatmIkl[�y¸egjwVYe�ZI_baoX��ÂTWVYnuTqcDTWaËkla �fhWa�cwTWaEXÁV� da�[�pcDTWa4kWe�cDe�XÁat�g�Eadh\ct�WeghIk7cwTWa�kWe�cDeEXÁat�g�Eadh\cUiW_zmIXcDTWa�ZIXDX�Xwad�g�Eath^cÂjDatXwifaon¥cDVby^ad_z|g�(< � : ���8�#&%:; �= � �� ���

%³jD[g�^jDeg�ËX�jDmWhWhWVzhW�}[^h�cDTWap%$Äd%�Ö^ÖE�Ee¸|�egkWkljDatXDX�klVbÒjDatn¥cD_b|1mWi�cw[(��$^ÃÎZ`|\cwaoXclk#^�gÃÎ�8[^jDkWX n¼[gpfXscD[gjue��^ag��SUTWVYXVYX<n�[^hIXÁVYXÁcwadh\cË�ÂVbcwTÐe�hÎegkIkljwaoXwXËXwV� da}[�p�XwV:9`cwatadhÎZWVbcDXt��`VzhIn�aEVbc4VzX1aon�[^hW[g�EVYnde�_OeghIk&hI[�c4mWhWjDate^XÁ[^hIe�ZI_ba�cw[qkl[Xw[4cwTIa½_Ye�jD�gatjc%$Äd%�Ö^Ö��E[lklad_YX��Ee¸|EZ*a½a � mWVbiIifaok7�ÂVbcwT_Ye�jD�gadj�e��E[gmIh^cuX�[�p��Ead�E[^jw| lrmIi cD[��^���gà Z`|\cwaoX.pr[gjcwTIa}%8Ä`%�ÖgÖ �N$^�4n�iW_bmfX}e��EatnuTIeghWVYXÁ� pr[^j�nd[gh`ygatjÁcDVbhW�XwV:9`cwatadh4ZIV{c�������0 $2���FlriIjw[^�gjue��pnFegkIkljwaoXwXwatXºVbh\cD[ � � 3#!�� .���egkIkljwaoXwXwatXº[�p*adVz�gT\cwatadh4ZWVbcDX¢[^jG�E[^jwa^�GSUTWaU�EatnuTIeghWVYXÁ����ÂTWVYnuT�VYX�]`hW[v�Âh�egX(cDTWaË�Ead�E[gjD|q�Ëe�hIeg�gat��ath\c1mIhWV{co�VYX(XwVz��iI_batj�[ghqcDTWas%$Äd%�Ö^Ö ��$\�EcwTfe�h&[^h&cDTWa�ÖgÖ���$\�Ë[gjcwTIaËÖgÖ �^�v�I�!½h3cwTWa %8Ä`%�ÖgÖ �N$^� cwTWaÏ�Eat��[^jw|¿�EeghIe��^ad�Eadh\cmWhWVbc7n�[^hIXwVzXÁcDXË[gp½cs��[�XÁadcDXË[gp(jDad�^VzXÁcwatjDX.pr[^j<�Ëe�iWiWVzhW�y`Vbjwcwmfe�_OegkWkWjwaoXwXwatX½cw[�iWT`|lXwVznte�_OegkWkWjwaoXwXwatXt�.SUTWaoXÁaËegjwa]`hW[v�Âh}egXE<wegn�cwVzyga�iIeg�ga4jDad�^VzXÁcwatjDX >�[gj <wXwad�g�Eath^cuevcDVb[^hjDad�gVYXÁcwadjuX >W�r!½hIa�Xwa�cEVzX.mIXwatk �ÂTWadh cwTWa�iWjD[ln�atXDXw[gj4VYXVzhÐmIXwadj7�E[lkla&eghIkÎcDTWa&[gcwTWatjBXwa�ct��VbhÏ]^adjDhWad_½��[lkla^�Í8TIeghW�gVzhW��cDTWa�n�[^h^cDadh\cDXB[�p.cwTWaoXÁa�jDad�gVYXÁcwadjuX�nuTIe�hW�^atXcwTIa4kla�cue�Vz_zXÂ[gpGcDTWatXwa1�Ëe�iWiWVzhW�\Xd�$SUTIa4e�ZWVz_bVbcs|ËcD[Ë�Eeg]gacwTIatXwa4nuTIe�hW�^atXUVYXÂeEiWjDVby`Vz_bat�ga(cwTIe�c�cwTIa�[gi*adjuevcwVzhW�ËXw|`XÁÒcwat�:]^adadifX �Ijw�E_z|Ëcw[EVbcDXwad_bps�

(< � $ ���� ��� �#"���� � �'" � �� ���� Ì$e^nuT�XÁadc�[�p�Xwad�g�Eath^cuevcDVb[^h�jDad�^VzXÁcwatjDX4VzX.n�[g�Ei*[^Xwatk�[�padVz�gT\c(iIe�VzjDXt�*ategnuTqnd[ghIXwVYXscDVbhW�B[�p$e3< �2���)� ��'�'����%!.! ��� � �� !�0 ��� >ul�%FÔ½ÅnUe�hIk�e}<,'���!� ���� ��0 � +�� ��� ��� !�0 �%� >ulk%$Ä(Ån¥�

Page 16: A Commentary on the Sixth Edition UNIX OS -- Lions

Ì$e^nuT�iIegVbj.[�p�jDad�gVYXÁcwadjuX�nd[gh\cwjD[g_YX�cDTWa��EegiWiWVzhW�&[gp[^hWa � ������V � ag�³[^hWa1adVz�gT\cwT�iIegjÁcÂ[gpGcDTWa�y`VbjwcwmIeg_ºegkIkljwaoXwXXwiIegnda1�ÂTWVznuTu(gÿZ`|^cDatXSl�$^à ��[gjukWX n¥�Ì$e^nuTqiIeg�ga��Ëe¸|�Z*a.jDad�\e�juklatk}e^X½egh�e��^�gjDad�\evcwa�[gpÖ¸��(1ZW_z[lnu]`Xt�gaoegnuTE[�p��m$4Z`|^cDatX`l�#^�(��[gjukWX n¥�¢SUTWVYX³_YevcÁcDadjXwV( ta&VYX<cDTWaW<Á�gjue�VzhÏXÁV� da�>�pr[^j7cDTWa&�Ead�E[^jw|Î�Ëe�iWiIVbhW�prmWhfn¥cwVz[ghº��e�hIkqe^X�e7iWjDe^n¥cDVznte�_¢n�[ghfXÁa � mIadhIndag�*V{c(VzX1e�_YXw[cDTWaf<Á�^jDegVbh�XÁV� da�>�pr[^jÂ�Ead�E[gjD|<e�_z_b[lntevcwVz[ghº�Ô�h`| y`Vbjwcwmfe�_Be^kWkljDatXDX�Z*ad_z[ghW�\X�cD[ [ghWa�iIe��^aÏ[gj[gcwTWatjt�,SUTWaÂn�[gjDjDatXwif[^hIklVzhW��iWT`|lXwVznte�_legkWkWjwaoXwXGVzX¢�^adhWatjÁÒe�cwatkEZ`|�egkWklVzhW�1cDTWa�jDad_YevcwVzyga�e^kWkljDatXDX¢�ÂV{cDTWVzhEcwTWa�ife��gacD[7cDTWa�nd[gh\cwath\cDX([�p³cDTWaËn�[^jwjDatXwif[^hIklVzhW�E%FԽŠcw[Bpr[gjD�egh�aA9`cwadhfklatkËe^kWkljDatXDXelsÖ�(1ZWV{cuX³[^hEcwTWa%8Ä`%�ÖgÖ���$^�(e�hfkÖ^Ö ��$`�&l�g�.ZWVbcDXÂ[^h7cDTWaËÖgÖ��g���on¥�SUT`mIX1ate^nuTqiIeg�gaEegkWkljDatXDX½jwat�gVYXscDadj1egn¥cuX1egX1e7jDad_z[�ÒntevcwVz[gh�jDad�gVYXÁcwadj�pr[^jÂ[ghWa1iIeg�gag�Ì$e^nuTBife��ga�nte�h�Zfa4kWVby`VYklatk�[gh}es#\����[gjuk<Z*[gmIhIk`Òegjw|qVzh\cw[�cs��[�ife�jwcDXt�Ge�h�mWiIifatj4iIe�jwc4e�hIk�_z[v�8atj1iIe�jwct�Ì8egnuTBXwmInuT�iIegjÁcÂTIe^XÂeËXÁV� da1�ÂTWVYnuT�VzXÂe���mI_{cDVbiW_za4[gp�#^���[gjukWXt�º��hËiIegjÁcDVzndmW_zegjO[ghWaÂife�jwc³�Ee¸|.ZfaÂh`mW_z_É�^VzhË�ÂTWVYnuTntegXwa½cDTWa�[�cDTWadjÂife�jwcÂnd[gVzhIn�VYklaoXU�ÂV{cDTBcDTWa��ÂTW[^_ba1iIeg�gag�!½hWa([�p�cDTWa½cs�8[.iIe�jwcDX�VYX8klatad�Eatk7cw[�n�[^h^cue�Vzh7yve�_zVYky`VzjÁcDmIe�_ºe^kWkljDatXDXÁaoXd�8Ô�kWkljDatXDXwatXÂVzh�cwTWa�jDad�ËegVbhWVzhW�ËiIegjÁcegjwaEklatnd_zegjwaok&Vzh`yve�_zVzkF�ËÔ�h\|�evcÁcDad�Eilc�cD[�jDa�pratjwathIn�aËeghVzh`y¸eg_bVYkÏegkIkljwaoXwX<�ÂVb_z_�Z*aqcDjDegiWifaokÎZ`| cDTWa&TIegjDkW��egjwa^�SUTWaËe^klyve�h\cDeg�ga�[�p$cDTWVYX4XwnuTIad�Ea.VYX1cDTIevc4XwiIegnda�Vzh�cwTWaiWT`|lXwVznte�_��Eat��[^jw|�hWadaok [ghI_b|LZfa e�_z_b[lntevcwaokLpr[gj&cwTWayve�_zVYkBj nsegjÁcU[�pOe�iIe��^ag�

(< �� 5 � �.� � � �!"�� �#"���� � � " � �� ��SUTWa�ife��ga1klaoXwndjwVzilcwVz[gh�jDad�gVYXÁcwadjÂkla��IhWaoX��� /�� cwTWaqXwV( ta�[�p�cDTWa}_z[v�8atj.iIegjÁcË[gp�cwTIa}iIe��^ag� l¨SUTWah`mW��Z*adjEXscD[gjDatk VzXEegn�cwmIeg_b_z|�cwTIaBh`mW�.Zfatj�[gp`#^��8[^jDk7ZW_z[`nu]lXU_zatXDXU[ghWa�n�� �� e�ZWVbc4�ÂTWVznuT�VYX�XÁadc4�ÂTWadh�cwTWaËmIiWifatj4iIegjÁc�VYX(cwTWayve�_zVzkÎiIegjÁco� l¨Ô�_zXw[ ]`hW[v�ÂhÏegX<cwTWaI<ÁaA9`ife�hIXwVb[^hklVzjwaon¥cwVz[ghO>�ZWVbc n%� ��� egntn�atXDX��E[`kWa(ZIV{cuXÂkla �IhIVbhW�r<whW[ËegndndatXDX >�[gjY<ÁjDate^k[ghW_z|7e^ndn�aoXwX >.[gjY<ÁjDate^k �¸�ÂjDV{cDa(e^ndndatXDX >I�~�[gcwaÂcDTIevc�V{p¼cDTWa�yve�_zVzkEife�jwc$VzX³h\mI_b_É�gcDTWVYXOp¨egn�c$��mfXscZ*a4XÁTI[v�ÂhBZ`|7Xwa�cwcwVzhW��cwTWa4e^ndn�aoXwX�ZWVbcDXÂcw[r<ÁhW[Ëe^ndn�aoXwX >W�

(< �� : ���8�2& ��� ��� � �2" ���SUTWa�TIegjDkl�Ue�jDaqkl[`atX�hW[gc�klVYn¥cuevcDa&cDTWa��Ue¸|Îe�jDategX7VbhiWT`|lXwVznte�_<�Ead�E[^jw| �ÂTIVznuTMnd[gjDjwaoXÁi*[ghIk cw[ cDTWaÐyve�_zVYkiIegjÁcuX�[�p�iIeg�gaoX.XwTW[gmI_zk Zfa}e�_z_z[`ntevcDatk l¨a�9Wn�atilcEcw[�cwTWaaA9\cDadh\cÂcwTfevcÂcwTIad|7�.mIXÁc�Zfat�gVzh�eghIk�adhIk�[gh�es#^�.��[gjukZ*[gmWhfkWe�jD|1n¥� SUTWaoXÁa�e�jDate^X��Ëe¸|�Z*a�eg_b_z[lnde�cwatk Vbh e�h`|[^jDklatjÂe�hIk��Ëe¸|Ë[vygatjw_Ye�i7cw[Ëe�h`|<aA9\cDadh\ct���hÐiWjuegn�cwVYn�a}cDTWa�eg_b_z[lnde�cwVz[ghÏ[�p4egjwaoegXË[gp1iIT\|lXwVznte�_�Ead�E[^jw|�VYXE��mInuTÑ�E[gjDa�klVYXDn�VziW_bVzhWaokÑe^X.��a}XÁTfe�_z_UXwadaVzhÏÍ8Tfe�ilcDadj7�`atygadhº� Ô�jwaoegX.pr[gjEiIeg�gatX��ÂTWVYnuTÎe�jDaBjDa�Ò_YevcDatkqegjwa.��[\Xsc([�pÀcDadh�eg_b_z[lnde�cwatk}nd[gh\cwVz�gmI[gmIXw_b|�e�hfk}Vbh

cwTIa�[^jDklatjB[gp4cwTIadVzj�ife��ga�h`mW��Z*adjuXd�(XÁ[ÑcwTfevc}e�_z_½cDTWaXwad�g�Eath^c�e�jDategX$egXDXÁ[ln�VYevcDatk��ÂVbcwTBe�XÁVzhW�g_za�iIjw[^�gjue��¿egjwan�[^h\cDe�VzhWaokB�ÂVbcwTIVbh}[^hWa�[gj�e�c��E[^XÁcÂcs�8[Ë_Ye�jD�ga�egjwaoegXU[�piWT`|lXÁVYndeg_¼��at�E[gjD|g�(< �� � : � � �2&�:; �= � �� ��� $��2 �#0�� � � �

" � �� �� ���hÏegkWkWV{cDVb[^hÎcw[�cwTIa&XÁat�g�Eadh\cuevcwVz[gh jDad�gVYXÁcwadjuXt�8[^hÑcDTWa%$Äd%�Ö^Ö �N$^��cwTWatjwa(e�jDaUcs�8[4�Eat��[^jw|.�Ëe�hIeg�gad�Eath^c�XscuevÒcwmfXÂjwat�gVYXscDadjuX��x�C Q n�[^h^cue�VzhIXÂe�Z*[gjwc�adjDjD[gj #fe��\XÂe�hIk�[gcwTWatj�atXDXÁath\cwVYe�_Vzhlpr[^jw�ËevcDVb[^hEpr[gj$cwTWa½[gi*adjuevcwVzhW��Xw|lXscDad���¢��hËiIe�jwÒcDVzndmW_Ye�j���at�E[gjD|.�Ëe�hfe��gat�Eadh\c$VYX$athIe�ZW_zatk<�ÂTWadhZIV{c��E[gp¢�lÅ��EVYXU[gh x�C+, VzX�_z[^e^klatk��ÂVbcwTÑcwTIa�Öo�&ZIV{cEy`VbjwcwmIeg_ÂegkWkljDatXDX�evccDTWa�Z*ad�gVzhWhWVzhW�Ë[gpGate^nuTBVzhIXÁcwjDmIn¥cDVb[^h�pra�cDnuTº�(< �� ( � "�� ��� � ���%$<� � ���h<cDTWaS%$Äd%�Ö^Ö ��$`�1e�hIk&ÖgÖ��g�v��XÁ|lXÁcwad�ËXt�\cwTWatjwa�e�jDa½e^k`ÒklVbcwVz[ghIeg_�Xwa�cuX�[gp½Xwad�g�Eath^cuevcDVb[^h�jwat�gVYXscDadjuXd��Ô�kWkljDatXDXwatXn�jDate�cwaok.mfXÁVzhW�1cwTIa�i¼nÂjwat�gVYXscDadjl¨j¥�mn¢e�jDa�XwegVzk�cD[4Z*ad_z[ghW�cw[f<wV?>�XwiIe^n�ag�\e�hIkEegjwaUcDjDeghIXÁ_YevcDatk.Z`|�e�klV �¼adjDadh\c8Xwa�c³[�pXwad�g�Eath^cuevcDVb[^h�jDad�^VzXÁcwatjDX½prjD[g� cDTW[^XwaEmIXwatk�pr[gj�cDTWaËjDa�Ò�Ëe�VzhWVzhW�7egkIkljwaoXwXwatXU�ÂTIVznuT&egjwa4XDe�VYk�cw[7Zfat_b[^hW�Ëcw[3<wk1>XwiIegndag�SUTWa1egklyve�h\cue��ga�[�pFcwTIVzXUe�jDjue�hW�^ad�Eadh\c³VYX³cDTIevcUZf[gcwT<ÁV >�e�hIkI<wka>�XwiIe^n�atX1�Ëe¸|q[lntn�mWi`|qmWi�cD[b#^��Ã:�8[^jDkIXd�cwT`mIXUeg_b_z[v�ÂVbhI��cwTWa1�ËeN9lVz��mW�MXwiIe^n�a��ÂTIVznuT�nde�hBZfa1e�_bÒ_z[`ntevcDatk&cw[}e�iWjD[g�gjue��"cD[}ZfaËVzhIn�jDate^XÁaok}cD[Bcs�ÂVYn�aEcDTWaXwiIegnda1e¸yvegVb_Ye�ZW_za([ghBcwTWa*%8Ä`%�ÖgÖ �N$^�I�(< �� , � � " �#"� � ) ��� � " �#" ������ÏTWath4cwTIa8Xw|`XÁcwat� VzX��IjuXsc¢Xscue�jwcwatk�evpÀcwatj,eg_b_^cwTIa�klaty`VzndatX[gh�cDTWa4x�hWVzZWmIX�TIe¸yga�Z*adath�jwatVbhWVbcwVYe�_zVYXÁaokF�lcwTIa4�Ead�E[gjD|�Ëe�hIeg�gat��ath\c4mWhWVbc�VYX.kWVzXDe�ZW_zatk�eghIk�cDTWa7iWjD[ln�aoXwXw[gj�VYXVzh�]^adjDhWad_¼�E[lklag�x�hIkWadjBcwTWaoXÁa�n�VzjDndmW�ËXscue�hIndatXt�Ây\VzjwcwmIeg_�l¨Z\|\cDa�n<e^k`ÒkljDatXDXÁaoX,Vbh�cwTIaÂjDeghW�gaU�½cw[4���^à e�jDa��EegiWi*atk�Vbh\cD[(VYklathlÒcwVYndeg_b_z|�yveg_bmWaok(iWT`|`XwVYnde�_^egkWkljDatXDXwatXt��È�[v��adygatj¼cwTWa$TWVb�^TlÒatXÁcOiIe��^aU[�pIcDTWaÂy`Vbjwcwmfe�_WegkIkljwaoXwX¢XwiIegnda8VYXO�Ëe�iIifaok.Vzh\cw[cwTIa�TWVz�gTWaoXsc½iIe��^a4[�p¢cwTIa�iWT`|lXÁVYndeg_Ge^kWkljDatXDX�XÁifegn�a^�IVÉ� a^�[ghBcwTIa*%$Äd%�ÖgÖ���$\�4[gj1Ö^Ö ��$`�l�legkIkljwaoXwXwatX�Vzh7cDTWa�jue�hW�^a

�IÖt�g�^�g�^�1cw[<�IÖ¸�g�^�g�^�e�jDa(�EegiWi*atk�Vbh\cD[EcwTWa�jue�hW�^a

�`�v�g�^�g�^�1cw[<�`�g�g�^�g�^�(< ���3 $<� �1" � .� ��=" � � � " � �� ����SUTWa<TIVb�^T�iIe��^aË[�p�iWT`|lXÁVYndeg_³�Ead�E[gjD|&VYX4jDatXwadjDygaok�pr[gjyve�jDVb[^mIXOXwifaon�VYe�_WjDad�^VzXÁcwatjDXOe^XwXw[ln�VYevcwaok��ÂVbcwTEcDTWa�iWjD[ln�aoXsÒXw[gj4e�hfk&cDTWaËi*adjDVbiWTIadjue�_³klaty\VYn�aoXd�B�8|�Xwe^n�jDV �*n�VzhW��[ghWa

(

Page 17: A Commentary on the Sixth Edition UNIX OS -- Lions

iIeg�ga.[�p³�Ead�E[gjD|}XÁifegn�a.Vbh&cwTWVYX½��e¸|^�fcDTWaY%$Äd%�ÖgÖ.kla�ÒXwVb�^hWadjuX(TIe¸yga�Z*adadh�egZW_ba�cD[��Ëeg]ga.cwTWaËyve�jDVz[gmIX1klaty\VYn�ajDad�^VzXÁcwatjDXGegndndatXDXÁVzZW_za³�ÂVbcwTW[^mlcGcDTWa�hWadaok�cw[½iWjD[vy\VYkla�XÁi*a�ÒndVzeg_FVbhIXÁcwjDmIn�cwVz[gh�cs|`ifaoXd�SUTWa��Ea�cwTI[`k�[�p$e^XwXwVz�ghW�Eadh\c([�p8e^kWkljDatXDXÁaoXÂcw[�jDad��ÒVYXscDadjuX<VzhÏcwTIVzX�iIeg�gaqVYX7e ZW_ze^nu] egjÁc ��cwTWa�y¸eg_bmIatX�e�jDaTIeg_b_z[v��atk.Z\|.cwjuegkWV{cDVb[^hEeghIkËe�jDaUhW[�c$cw[4Z*a � mWatXÁcwVz[ghIatkF�

×

Page 18: A Commentary on the Sixth Edition UNIX OS -- Lions

� � ��� ���A��� �q��� � � ��� � ���

ƺate�jDhWVzhW��cw[ËjDate^k7iWjD[g�^jDeg�ËX8�ÂjDVbcÁcwath�Vbh�cwTIab<uÍ >�_Ye�hlÒ�^mIe��^a(VYX�[^hWa4[gp,cDTWa4T`mWjukl_zatXUcDTIevc��.mIXÁc½Z*a4[vygatjDnd[g�EaZ*a�pr[^jwa�|^[gm��ÂVb_z_ºZ*a4e�ZW_za1cw[<XÁcwmfkl|<cDTWa�Xw[gmWjun�a�n�[lkla�[gpx½~���¾ a �¼atn�cwVzygat_b|^�Ô�X½�ÂVbcwT&hfevcwmIjDeg_º_Ye�hW�^mIe��^atXt�WjwaoegklVzhW�<VYX�eghqate^XÁVzadjXw]`Vb_z_IcD[�egn � mWVbjDaÂcDTIe�h<�ÂjDVbcwVzhW�I�¢Ì³y^adh<Xw[4|g[^mË�ÂVb_z_fhIadatkcD[�Z*a}ndegjwadprmW_Â_baoXsc<Xw[g�Ea�[�p(cwTWa��E[gjDa�XwmWZlcD_ba}i*[gVzh\cDXiIe^XwXU|^[gm�Z`|g�SUTWatjwa�egjwaUcs��[�[�p¼cDTWap<wx½~���¾LÄ�[ln�mI��ath\cDX >��ÂTWVYnuTjDad_YevcDa1kWVbjDatn�cw_z|Ëcw[EcDTWaf<uÍ >._zeghW�gmfe��ga �<uÍ ÅÂadpradjDadhInda1Ç&e�h`mIe�_ >W�`Z`|BĽadhIhWVzX�ÅÂV{cunuTWVza< %$jw[^�gjue��E�EVbhI� Vzh Í � Ô�SGmlcD[gjDVzeg_?>I�½Z`| ��jDVzeghÃ1atjwhWVz�gTfe�h ³[gm�XwTW[^mW_zk�jDate^kqcDTWad��hW[v���¢egX1p¨egj�egX4|g[gm�nte�h��eghIk}jDa�cwmIjwh�cD[7jDadjDategk�cDTWad�"prjD[g�"cwVz�Ea�cD[<cDVb�Ea��ÂVbcwTVzhIn�jDate^XÁVzhW�En�[^��iIjwatTWadhIXwVz[gh��Æ�aoe�jDhWVzhW�(cw[��ÂjDV{cDas<uÍ >(iWjD[g�gjue��ËX,VYXOhW[�c³jDa � mWVzjDatkF�È�[v�8atygadjEVbp(|^[gm TIe¸ygaBcwTIa}[giWi*[gjwcwmWhIV{cs|^�8|^[gmÎXÁTW[^mW_Yke�cÁcwat�Eilc}cw[Î�ÂjDV{cDa�e�c}_baoegXÁc}eÑprat��Xw�Ëe�_z_�iWjw[^�gjue��ËXt�SUTWVYX�kl[`atX�jwatiWjDatXwadh\c<cwTIa�e^ndn�atilcwaokÏ�Ue¸|ÑcD[ _zategjwh eiWjD[g�^jDeg�E��VzhW�._zeghW�gmIeg�ga^�`eghIkB|g[gmIj�mIhIkladjuXÁcDe�hfklVbhI��[gpcDTWa�iWjD[gi*adjÂmIXwa1[�pOXÁmInuT�Vbcwad�ËX�e^X��Xwad�EVznd[g_z[ghIX�

< �d>.eghIk < � �d><��>�e�hIk <��>< � �d>.eghIk3< ���e>klaon�_Ye�juevcDVb[^hIX�jDad�^VzXÁcwatj�yvegjwVYe�ZW_zatX�<wV{p >ËeghIk@<spr[gj >�Xscuevcwat�Eadh\cDX

³[gm��ÂVz_b_ �Ihfk<cDTIevcY<uÍ >.VzXUe.ygatjw|<nd[gh`ygathWVbath\c8_Ye�hlÒ�^mIe��^a7pr[^j<egndndatXDXÁVzhW��e�hIkÑ�Ëe�hWVziWmW_YevcDVbhW��kWe�cDe�XÁcwjDmIn¥ÒcDmWjwaoX4e�hfk�nuTfe�juegn¥cDadj�XÁcwjDVbhW�\Xd�º�ÂTWVznuT�VYX��ÂTIe�c�e�_zegjw�^aiIegjÁc}[gp.[gi*adjuevcDVbhI� Xw|lXscDad�ËX�VzX}egZf[^mlct� Ô½X�Zfa��WcDXqecDadjD��VzhIeg_*[^jwVzadh\cDatkË_Ye�hW�^mIe��^ag�\�ÂTWVYnuT7jDa � mWVzjwaoX8nd[ghIndVzXwag�nd[g�EiIegn�c�a�9liWjDatXDXÁVz[ghº��<¥Í >�mIXÁaoX�eE_Ye�jD�ga�nuTIe�juegn�cwatjUXwa�ceghIk��Ëe�]^atX��Ëegh\|�Xw|`��Z*[g_YXGXwmInuT�e^X<� N>�eghIkf<��S>��8[^jw]TIegjDk��3��h cwTWVYX�jwaoXÁi*atn�c�Vbc�Vbh`y`V{cDatX�n�[^�EiIe�jDVzXw[ghÏ�ÂVbcwTÔ`%$Ƴ�SUTWatjwa4�Ëegh\|7prate�cwmWjDatXÂ[gpd<¥Í >E�ÂTWVYnuTqe�jDa(jDad�EVzhWVYXsÒndadh\c�[�pR%8Æ �`Ö^�WZWmlc(V{c½�g[`atXÂ��ad_z_ºZ*ad|^[ghIk�cDTWa�_Yevcwcwatj�VbhcDTWaËjDeghW�ga�[�p8p¨egndVb_zV{cDVbaoX�iWjD[vy`Vzklaokqpr[^j4XscDjwmfn¥cwmIjwaok&iWjD[�Ò�^jDeg���EVzhW�I�,< �� $����� $� �� � �� ��� � � � �� �SUTWa�aA9We��EiW_zatXU�ÂTWVYnuT�pr[g_z_b[v� egjwa(cue�]gath�kWVbjDatn�cw_z|<prjD[g�cDTWa4XÁ[^mWjun�a1n�[lklag�,< )( � � � � �� �SUTWa.XÁVz�EiW_baoXsc½if[\XwXwVbZI_ba4iIjw[ln�aoklmWjDag�W�ÂTIVznuTqkl[`aoX�hW[gcwTlÒVzhW�I�l[lntn�mWjuX8cs�ÂVzndaol * n�Vzh7cDTWa4XÁ[^mWjun�a1n�[lkla�egX�<Áh`mW_z_YXÁ|lX >lÉ��(g�m$4n8e�hIk <wh\mI_b_Ykladyy>+l¨�\�^�g�mn¥�WXwVzng�

:���F�F ��� �0���>=�� �"���

�ÏTWVz_baÂcDTWadjDaÂe�jDaUhW[1iIe�jue��Ea�cDadjuXd�¸cDTWa�iIegjwath\cwTWaoXÁaoXd�<�lk>Âe�hIku< n >I�oegjwa$XÁcwVz_z_gjDa � mWVzjwaokF�ºSUTWa³ZIjDe^nu]ga�cuXj<���>Ue�hIk<��>.kWad_zVb�EVbcÂcwTWa�iWjD[ln�aoklmWjDa(Z*[lkl|g�I�ÂTWVznuT�VYXÂad�Eilcs|^�,< -, � � � � �� (SUTWa1hWaA9\c�aA9We��EiW_za(VYX�e�_zV{cwcw_za�_baoXwX�cDjwVzy`Vzeg_ �

:���:�: � 0��=��&��������� ;0=��0����������! #"$��%'&�

SUTWa$e^kWklVbcwVz[ghIeg_�Xscuevcwat�Eadh\cºVYX�e�h�egXDXwVb�^hW�Eadh\cºXscuevcDa�Ò�Eadh\ct�,��c$VYXOcDadjD��VzhIe�cwatk�Z`|.e�Xwad�EVYn�[^_b[^h��ÂTIVznuTEVYX³iIegjÁc[�pUcDTWaBXÁcDe�cwad�Eath^co�OhW[�c�eqXscuevcDad�Eadh\c�Xwadife�juevcw[^j4egX�VbhÔ�_z�g[^_{Ò�_zVb]^a½_Ye�hW�^mIe��^atXt�<wÌ8~d!(Ä(ÌR]`><VzX1e7kWa �IhWaok&Xw|`��Z*[g_É�*VÉ� ag��e7Xw|`��Z*[g_�ÂTWVYnuTBVYXUjDadiW_Yegndatk<Z`|7egh�e^XwXw[ln�VYevcDatk7nuTfe�juegn¥cDadjUXscDjwVzhW�Z`|(cwTWaÂn�[^�EiWVb_zadj,iWjDadiWjD[ln�aoXwXw[gjGZfadpr[gjDa�e^n¥cwmfe�_`n�[g�EiWVz_YevÒcwVz[ghº�<wÌ8~d!(Ä(ÌR]d>UVzX,kla �fhWatk�[^h4_zVbhWa���$4(�$�egX$Öt×I�ºSUTWax�~���¾¿n�[^h`ygadh\cDVb[^h7VYXUcwTIe�c�kla �fhWatk�Xw|\�.Zf[^_zX�e�jDa(�ÂjDVbcÁÒcwath�Vzh mWiWi*adjEnde^XÁa^�Oe�hIk�eg_b_�[�cDTWadj�XÁ|`�.Zf[^_zX.Vbh _b[v��adjnde^XÁa^�< �d>�VzX,cDTWaÂegXDXÁVz�ghW�Eath^c,[gi*adjuevcD[gjo��e�hIk <Ám�� m adjDjD[gj >VYXÂe�h�ad_zad�Eadh\cÂ[�pGcwTWa�XÁcwjDmIn¥cDmWjwau<wma>W�jl �lada1_bVzhWa4�m$IÖt×I� n~�[gcwaËcDTWa<mIXwa<[gp�<t� >/egX1cDTWa7[^ifatjDe�cw[gj��ÂTIVznuT�Xwad_zatn�cDXe�hÎat_bat��ath\c7[�p4e�XÁcwjDmIn¥cDmWjDag� SUTWa&at_bat��ath\c7hIe��Ea}VYX

<Ám atjwjD[gj >Â�ÂTWVYnuT��Ëe¸|1Z*a$cue�]gath.e^XGe½iIe�juegkWVb�^� pr[^jGcDTWa�Ue¸|4hIe��EaoX³[�p�XÁcwjDmIn¥cDmWjDaÂad_zad�Eadh\cDX8e�jDa�n�[^hIXscDjwmfn¥cwaok�VbhcwTIa�x�~���¾�Xw[gmIjDnda&n�[lkla ��eÑklVYXscDVbhW�^mWVYXÁTWVzhW��_za�cwcwatjBVYXpr[g_z_z[v�8aok<Z`|BeghBmWhfkladjuXwnd[gjDa�pr[^_b_z[v��atk<Z`|�e.hfe��Eag�,< 43 � � � � �� ,

:���(��R98��J#*)&�O+0��Q � N /� �� ����N ��Q�>N AJ+���$ � A N +&��>=-, � � N =��<A��/� A$9 � �.&�/�E+���$0&91� N +&�2�B�J ���>N &��

A$9�*�*��BA��0*�*+&3$4 � �0= � 3�3>���>�5&�

SUTWaÂprmWhfn¥cwVz[ghE[gp*cDTWVYXOiWjD[`ndatklmIjwaÂVYXOygatjw|.XÁVz�EiW_ba �GVbcn�[^iWVzatX�e<Xwi*atn�V �Iaok�h\mI��Z*adj�[gpO�8[^jDkWXÂprjw[^�/[^hWa4XÁadc�[�pn�[^hIXwatn�mWcwVzyga(_b[lnde�cwVz[ghIX�cD[Ëe�hW[gcwTWatj�XÁadct�SUTWadjDa�e�jDa(cwTWjDada1iIegjDeg��adcwatjDXt�,SUTIa4XÁaon�[ghfk7_zVbhIa�Q�>N AJ+0�>$ � A N 6&

Öo�

Page 19: A Commentary on the Sixth Edition UNIX OS -- Lions

Xwifaon�V �IatX�cDTIevcUcDTWa �IjDXÁcUcs�8[�yve�jDVzegZW_zatXUe�jDa�i*[gVzh\cwadjuX�cw[Vzh\cwad�^adjuXd�Ë�`VzhIn�aËhI[�Xwi*atn�V �fntevcwVz[gh�VYX�XÁmWiIiW_bVzatk�pr[^j1cwTWacDTWVbjuk}iIegjDeg�Ea�cwatjt�fV{c1VYX½e^XwXwmW�Eatk�cD[7Z*a�eghqVbh\cDad�gatj�Z`|kladp¨e�mW_bct�SUTWa�cwTWjDada�_z[lndeg_Iyve�jDVzegZW_zatXt�^eW�^Z��le�hIkËng�^Tfe¸ygaÂZ*adadhe^XwXwVb�^hWatk�cw[�jwat�gVYXscDadjuXd�vZ*atnte�mIXwaÂjwat�gVYXscDadjuXOe�jDaÂ�E[gjDaUe^n¥ÒndatXDXÁVzZW_za�eghIkÑcwTWa}[^Z&4satn�c<n�[lkla�cw[�jDa�pratjwathIn�aBcwTIad� VzXXwTW[gjwcwatjt�3<wem>�eghIkW<ÁZa>�e�jDaËi*[gVzh^cDadjuX(cw[qVzh\cwat�gadjuX�e�hfk<DnA>�VYX<e�hÏVzh\cwad�^adjo��SUTWa}jDad�^VzXÁcwatj7klaon�_Ye�juevcwVz[ghÎn�[^mW_YkTIe¸y^a½Z*adath��ÂjwVbcÁcDadh��E[gjDa(i*atkIe�h\cwVYndeg_b_z|7egX

��=-, � � N =�� �Q��N AJ�/� AQ9 � �.&cD[�at�EiWTIegXwVYXÁa(cwTIa4n�[ghIhWatn�cwVz[gh��ÂV{cDT}Vbh\cwat�gatjDXt�SUTWa�cwTIjwata�_zVzhWatX(Z*ad�gVzhWhWVzhW���ÂVbcwTW<wkl[4>BXwTW[gmI_zk&ZfaXÁcwmIkWVbaok ndegjwadprmW_z_b|^����pE<wZa>qVYX�e <Ái*[gVzh\cwatj�cD[&Vzh^cDad�^adj >cs|`i*ag�lcDTWadh

A$9klathW[�cDatX4cwTWaBVbh\cwat�gatj�i*[gVzh^cDatk�cD[I�&SUT`mIX4cw[&nd[gi`|�cwTWayve�_zmWa4i*[gVzh\cwaok�cw[BZ\| <weo>�cw[ËcDTWa�_z[lnde�cwVz[ghqklaoXÁVz�ghIe�cwaokZ`|P<wZa>W�l��a�n�[gmI_zk��ÂjDV{cDa

A$9 �BAJ�+&��p¢�8a1�ÂjD[�cDa(VzhIXÁcwaoegk

9 �<�+&cwTIVzX.�8[^mW_Yk��Ëe�]gaEcDTWa7yveg_bmWaB[�ps<ÁZO>�cwTWa�Xweg�Ea7egXcDTWa<yve�_zmWaË[�pY<weo>W��VÉ� ag�3<wZa>}e�hfkI<Dem>B�8[^mW_Yk�i*[gVzh\c4cw[cDTWa<Xweg�Ea.iW_Yegndag�ËÈ�atjwaËe�c1_zate^Xsco�FcwTfevc4VYX1hW[�c��ÂTIe�c4VzXjDa � mWVzjwaokF�È�e¸y`VzhW��n�[^iWVbaok.cwTWa �IjuXÁc¢��[gjuk�prjw[^�¿XÁ[^mWjun�a8cw[4klaoXsÒcDVbhIe�cwVz[gh��I�8a1hWatatk7cw[ËVzhIn�jDate^XÁa½cwTWa�yveg_bmWaoXU[�pd<ÁZa>Ee�hfk

<Dem>�Xw[�cwTIe�c<cwTWa&if[^Vbh\c7cD[�cwTWa�hWa�9`c7��[gjukWXË[gp1cwTWatVbjjDatXwifaon¥cDVby^a1Xwa�cuXd�OSUTWVYX�nte�h�Zfa4kl[^hWa�Z`|<�ÂjDV{cDVbhW�9 � 9�*%, & ���E�0*%, &

ZWmWc�<uÍ >1iIjw[vy`VYklatX³e�XÁTW[^jÁcDadj8hW[�cuevcwVz[ghfl¨�ÂTWVznuT7VzX$��[^jwamIXwa�prmI_��ÂTWadh�cDTWa�yve�jDVzegZW_ba(hIeg��aoXÂe�jDa1_b[^hW�gatj n8y`V( ^�9�*�*+& ��*�* &~�[v�"cDTWadjDaqVYXËhW[ klV �¼adjDadhIndaqZfadcs�8atadhÎcDTWa&XÁcDevcDa�Ò�Eadh\cuXs<ÁZ�� � >�e�hIk@< � �½Z >.TWadjDag�È�[v��ady^adj@<ÁZ�� �d>Ñe�hIk < � �½Za>��Ëe¸|ÎZ*a�mIXwatk�egXcDadjD�EX�Vbh�e�h}a�9liWjDatXDXwVb[^h��IVzhq�ÂTWVYnuTqnde^XÁa�cDTWad|}egjwa4klVbpÀÒpratjwath^co�¢��h7Z*[�cwT�nde^XÁaoXOcwTIa½a��*aon¥cU[�p�VzhIn�jDad�Eadh\cDVbhW�t<ÁZa>VYX�jDa�cue�VzhWatk��*ZImlc½cDTWa�y¸eg_bmIa��ÂTWVYnuTqadh\cDadjuX�cDTWa.aA9liWjwaoXsÒXwVb[^hÐVYX<cDTWa�VzhWVbcwVYe�_1yve�_zmWaqpr[^j@<wZ�� �d>�eghIkÏcDTWa�fhIe�_yve�_zmWa(pr[gjs< � �½Za>W�SUTWa <���e>1[gi*adjuevcD[gjO[^Zfat|`X³cwTWa(Xweg�Ea�jwmI_baoX³egX³cwTWa

< � �d>Ë[gi*adjuevcD[gjo�*aA9Wn�adiWc½cDTIevc�Vbc1klaon�jDad�Eadh\cuX½Z`|}[^hWag�SUT`mIXS< ����nA>(adh\cDadjuX³e�hËaA9`iIjwaoXwXwVb[^h�e^X¢cwTIa�yve�_zmWa�evpÀcDadjklaon�jDad�Eadh\cuevcwVz[ghº�SUTWa+< � �d>�eghIkP< ���e>1[gi*adjuevcw[^jDX8e�jDa�ygatjw|�mIXwa�prmW_É�eghIk�e�jDaËmIXwatk�cDTWjw[^mW�gTI[gmlc�x½~���¾��R!(ndntegXwVb[^hIe�_z_z|q|g[^m

�ÂVz_b_GTIe¸yga1cD[<�g[<Zfegnu]<cD[ �IjuXsc½iWjwVzhIndVbiW_zatX�cw[<��[gjD]7[^mlca�9We^n¥cw_z|E�ÂTIevc�cwTIadVzjÂmIXÁa(Vz��iI_bVzatXt�O~�[�cDa(eg_zXw[.cwTWatjwa(VzXUeklV �*atjwathIn�a1Z*a�cs��adath A$9�*�* e�hIk �"A$98� *�* �SUTWatXwa�[gi*adjuevcD[gjuXBegjwa�e�iWiW_zVYnde�ZI_ba�cw[ i*[gVzh^cDadjuXBcw[XÁcwjDmIn¥cDmWjwaoXUegXU��ad_z_�egX8cw[ËXwVb�EiW_za4kWevcue4cs|`i*atXt�O�ÏTWadh}ei*[gVzh^cDadj��ÂTWVYnuT�TIegX1Z*adath�klatnd_zegjwaokq�ÂVbcwT�jDa�pradjDadhfn�a.cw[eqife�jwcwVYn�mW_Ye�j.cs|`ifa�[�p(XscDjwmIn�cwmWjDa�VzX�VzhIn�jDad�Eadh\cDatkF�OcDTWaegn�cwmIeg_Uy¸eg_bmIaB[gp�cwTIa�i*[gVzh\cwatj�VYXEVzhIn�jDad�Eadh\cDatk�Z`|�cDTWaXwV( ta([gpGcDTWa4XÁcwjDmIn¥cDmWjwa^���a4nde�h�hW[v�LXÁata½cDTWa��EateghWVbhI��[gpGcDTWa�_zVbhWaA$9>*�*��BA���*�* &

SUTWaÎ��[gjuk¿VYX�n�[^iWVbaokÓeghIkÓcwTWaÏi*[gVzh\cwatjDX�e�jDaÎVbhfn�jDa�Ò�Eadh\cwaokF�Ieg_b_FVzh�[ghWa1TWVbct�SUTWa1_zVbhWa3�4 � �0= � 3�3����5&

klat_bVz�EV{cuXUcwTWa1athIk�[�pºcDTWa4Xwa�cÂ[�pOXscuevcDad�Eadh\cDXU�ÂTIVznuT�ZfadÒ�^egh&evpÀcDadj½cwTWar<Dkl[o>I�(SUTWa�a�9liWjDatXDXwVb[^h}Vbh�iIe�jDadh\cDTWatXwatX<����n�>W�³VYXËaty¸eg_bmfevcwaokÎe�hIk cwaoXscDatk lÀcDTWa}yve�_zmWa�cwaoXscDatkVYX1cwTWa7y¸eg_bmIa7evpÀcDadj�klaon�jDad�Eadh\cuevcwVz[gh n¥����p�cDTWa<yve�_zmWaËVYXhW[^hlÒ tadjD[I�¸cDTWa�_z[\[^iEVzXOjDadi*ate�cwaokF�gat_zXwaÂV{c8VzX¢cDadjD�EVbhIe�cwaokF�

!½Z`y\Vz[gmfXÁ_z|�VbpÂcwTIaBVzhWVbcwVYe�_�y¸eg_bmIa<pr[gjt<wnd[gmWh\c >q�8atjwahWat�^evcDVby^ag�UcDTWa&_z[`[giÐ��[gmW_YkÎhW[gc7cwatjw�EVzhIevcDa&iWjD[gi*adjD_z|g���p�cDTWVYXË�8atjwa�e�XÁatjwVz[gmfX.i*[^XDXwVbZWVz_zV{cs|�cDTWadh cDTWa}jw[^mlcwVzhWa��[gmW_Yk7Tfe¸yga½cw[ËZ*a���[lklV �IaokF�,< (� � � � � �� 3

:�:8, � ,�= N +!��+�����=-, � � N =��6AJ+�# � �>+ &�>+ � + &� +2���>+�� ����� �>+��#�/�! 8H��$�8�,� N R9 �0� &

+�#1� � ��� ;00+ � ��=� �>+��+&� +2��+�#�� �/�����������= N$� � � �O+�#%�5&

9 �0���� ��� ;0=�������������>K$"�'&��= N$� � � ���������'�5&�

SUTWaÂiIegjDeg��adcwatjS<sp >1VYX³e1iWjDatXwmW�Eatk�Vzh^cDad�^adjo�ge�hIk�VYXn�[^iWVzatk�kWVbjDatn�cw_z|�Vbh\cw[½cwTIa�jDad�^VzXÁcwatjGyvegjwVYe�ZW_za�<Ájwp >W� l¨SUTWVYXiIe�cÁcwatjwh �ÂVz_b_�Z*atnd[g�Ea}XÁ[�p¨eg��Vz_zVzegjEcwTIe�c<�8a��ÂVz_b_�hI[v�n�aoegXwa�cD[Ëjwat�Ëe�jD]ËmWif[^h�V{co� nSUTWa(cwTIjwata4XÁVz�EiW_ba1jDad_YevcDVb[^hIe�_FaA9`iIjwaoXwXwVb[^hIX�>+���� ��+��#�$�! �8H��$� +�#�� �/�������

e�jDa}ate^nuTÐegntn�[gjuklaok cDTWa&yveg_bmWa&[ghWaqVbp�cwjDmWa^��e�hIk cDTWayve�_zmWa datjw[�Vbp½p¨eg_zXwag�ÏSUTWa �IjuXÁc�cDatXÁcDXËVbp(cwTWa}yve�_zmWa�[�p<Ájwp >EVYX�_zatXDXÂcDTIe�h tadjD[I�WcDTWa�Xwatnd[ghIkF�fV{p*<wjÁp >EVzX��gjDatevcDadjcwTfe�h4cDTWaUyve�_zmWaÂkla �IhIatk.Z\|f<D~d!d),�sƺÌc>½eghIk�cDTWa�cwTWVzjukF�VbpGcDTWa�yve�_zmWa1[�pM<spria>�VYXUhW[�c�a � mfe�_¼cw[r<D~�x�ÆGÆ�>ulr�ÂTIVznuTVYXÂkla �IhIatkBcw[ËZ*a� datjw[Fn¥�

ÖgÖ

Page 20: A Commentary on the Sixth Edition UNIX OS -- Lions

SUTWaUn�[^hIklVbcwVz[ghIXGcwaoXscDatk�Z\|(cDTWa�<wV{p >½XÁcDe�cwad�Eath^cuX¢e�jDacDTWa4e�jDV{cDTW�Ea�cDVzn(a�9liWjDatXDXwVb[^hIXUn�[gh\cue�VzhWatkB�ÂV{cDTWVzh}iIe�jDadhlÒcDTWatXwatXt���p,cwTWa�aA9`iIjwaoXwXwVb[^h<VYXÂ�gjDate�cwadj8cwTfe�h dadjD[�cwTWa(cDatXÁc�VzXXwmIndndatXDXsprmI_ºe�hIk7cwTIa�pr[g_z_b[v�ÂVzhW�ËXÁcDevcDad�Eadh\c�VYXUa�9latndmlcwaokF�SUT`mIX�Vbp4pr[gj�VbhfXscue�hIndag�E<Ápria>ÑTIegkÎcDTWa�yve�_zmWa��^�WÖ�#`���W�cDTWadh+�# � ���������

VYXGcwjDmWag��eghIk�e^XGe�cwatjw� Vzh.egh.e�jDVbcwTW�Ea�cDVzn8a�9liWjDatXDXwVb[^h��¸VzXe^ndn�[^jDkWatkBcwTWa.yve�_zmWa4[ghIag��SUTWVYX�yveg_bmWa�VzX½�gjDate�cwadjUcDTIe�h tadjD[I�We�hfk7TWathIn�a1cDTWa4XÁcDevcDad�Eadh\c

��= N-� � � �O+�#%�5&��[gmW_Yk}Z*a.aA9latn�mWcwatk��fcD[<cDadjD��VzhIe�cwa.prmWjÁcDTWadj(a�9laon�mlcDVb[^h[gp+<w�ga�cwp >W�Ue�hfk�cD[�jwadcwmWjDh cDTWa}yve�_zmWa}[�p+<spria>�cD[�cwTWante�_z_bVzhW�EiWjD[`ndatklmIjwa1egX�cDTWa�jwaoXÁmI_{c�[gp`<Á�^a�cwp >W�SUTWa�aA9`iIjwaoXwXwVb[^h

�>+�� ����� �>+��-�/� �8H��$�VYX�cDTWa7_z[g�^Vznte�_8kWVzX 4smWhIn�cwVz[gh lA<Á[gj >on([gpÂcwTWa7cs�8[qXwVz��iI_bajDad_YevcDVb[^hIe�_¼a�9liWjDatXDXwVb[^hIXd�Ô�h�aA9We��EiW_zaË[�pÂe <Á�g[gcw[4>�XÁcDe�cwat��ath\c�e�hIk�egXDXw[`ndV{Òe�cwatkB_Ye�Z*ad_��ÂVz_b_ºZfa�hW[gcwaokF�

<spriO>�VzX.egXDXÁVz�ghWaok�e�yve�_zmWa^�G�ÂTWVYnuT�VzX.e�h /1�����N2F6�6 �prjD[g� cwTWa <wjÁp >vÒÉcwTÎad_zad�Eadh\c<[gp(cDTWaqe�jDjue¸|�[�p�Vbh\cDad�gatjDX<wm [ �I_za�>I�l�ÂTWVznuT�VYXUad�.ZfaokWklatk�Vzh�cwTWa4XÁcwjDmIn¥cDmWjDa+<wma>W�SUTWa�iIjw[ln�aoklmWjDas<Á�^a�cÁp >1jwadcwmWjDhIX³e1yve�_zmWaÂcD[�V{cuX$nte�_z_{ÒVzhW��iWjD[`ndatklmIjwa^��SUTWVYX1VYX1adVbcwTWatj1cwTWaËyve�_zaE[�p�<spria>rlrVÉ� ag�egh�e^kWkljDatXDX n8[gjs<D~�x½ÆºÆ�>I�,< �' � � � � �� �

��,�,$L 3 � � = � #!�"� 4 � � ���>=-, � � N =��6� N � � � N #>�� ��A$#'&�>=-, � � N =��6�@� � &� �B� 4�� � &#*���0#��� � )��� &� �/��M0P! �� &�� �

� +!�)#'3��J#'; 38� 4 � � ��� �>� ���= N � ��� ��#8�5&�

#>*�* &�3�4 � �0= � 3�3 � � &�

SUTWatjwa�e�jDa1e.h`mW�.ZfatjÂ[�pOXÁVz�EVb_Ye�jDVbcwVzatX�Zfadcs�8atadhBcwTWVYXaA9leg�EiW_ba½e�hIk�cDTWa�iWjDady`Vz[gmIXO[^hWag�¢��a�TIe¸y^a�e�hWad�Ïnd[ghlÒndadilc1TW[v��adygatjt�*e�h&egjwjue¸|7[gp$XscDjwmfn¥cwmIjwaoXd�1Sº[BZfa 4smIXÁc1e_zV{cwcw_za}n�[ghWprmIXÁVzhW�f�³Vbh cwTWVYX�a�9We��EiW_za�V{c�cwmWjDhIX�[gmWc.cDTIevcZ*[�cDT�cwTWa�egjwjue¸|7eghIkBcwTWa�XscDjwmIn�cwmWjDa4e�jDa4ndeg_b_zatk <wiWjw[ln�>l¨|gatXt�R<¥Í >Ëe�_z_b[v��X�cDTWVzX n¥�USUTWat|�egjwa�klaon�_Ye�jDatk�[ghq�`TWata�c�o#.Vzh�cwTWa(pr[^_b_z[v�ÂVbhI�.pr[^jw� �

��L���(6� N � � � N #>������ 4 ����#';�� N � N &���������$����������Q�>N #'; 38� 4 � � &���������$����������#>�� � ��M�P! ���� &

<Áia>�VYX<e�jwat�gVYXscDadjEyve�jDVzegZW_za�[gp�cs|`i*a}if[^Vbh\cwatjEcw[�eXÁcwjDmIn¥cDmWjwa1[gpºcs|`ifaf<wiWjD[`n�>W�# ����#>�� � ��� &

egXDXwVb�^hIX4cD[ <Áia>&cwTWaqe^kWkljDatXDX�[gp�cDTWa �IjuXscEad_zad�Eadh\cË[�pcwTIa�e�jDjDe¸| <ÁiWjD[lnA>W�,SUTWa�[^ifatjDe�cw[gjS< �S>(VbhEcDTWVzX�n�[^h\cwa�9`c�EateghIXY<scDTWa�egkWkljDatXDXU[�p >W�~�[gcwaBcwTIe�c�Vbp(egh e�jDjDe¸|�TIe^X�hÑad_zad�Eadh\cDXt�OcDTWa�ad_za�Ò�Eadh\cDXUTfe¸yga1XÁmWZfXwndjwVzilcDXÂ�I��Ög�F�z�z�ZlrhlÒuÖ�n��³Ô�_YXÁ[EVbc�VzXÂi*adjwÒ�EVzXDXwVbZW_za1cw[Ë�ÂjDVbcwa1cwTIa�e�Z*[vyga�XÁcDevcDad�Eadh\c��E[gjDa�XÁVz�EiW_z|egX# ��#��� �.&SUTWadjDaËe�jDa�cs��[}XscuevcDad�Eadh\cDX1Vzh�Zfadcs�8atadh�cwTWaz<Dkl[o>e�hfk�cwTWa+<Á�ÂTWVz_za�>W�¢SUTWa �IjDXÁc8[gp¼cwTWaoXÁa(n�[gmI_zkËZ*a�jDad�ÂjDVbcÁÒcwath���[^jwa1XwVb�EiW_z|Be^X� +!��#'3��J#�38� 4 � � �$�B�>����= N � ��� ��#8�5&

VÉ� a^�7cDTWa7ZWjuegnu]^a�cuX�e�jDaEXwmWi*adj #ImW[^mIX4Vzh�cwTWVYX�ntegXwag�,e�hIkXwVbhInda <¥Í >�VYXÂe�prjwata½pr[^jw�?_Ye�hI�gmIeg�gag�^cwTIa1egjwjue�hI�gad�Eath^c[�pGcwaA9\c�Z*a�cs��adath�_bVzhWatXUVYXÂhW[gc�XÁVz�ghWV �fnte�h\ct�SUTWa�XÁcDevcDad�Eadh\c��= N � ��� ��#8�5&

Vzh\y^[g]^atXGcwTWa�iWjw[lndatklmWjDas<wXwa�cDjwmIha>(iIegXDXÁVzhW�1cDTWa�yve�_zmWaÂ[�p<ÁiO>7egX1eBiIe�jue��Eadcwadj�l¨Ô�_b_OiIegjDeg�Ea�cwatjDX(e�jDa�ifegXDXÁaokqZ`|yve�_zmWag� n¥�³SUTIa(jDad_YevcDVb[^h

#'3��J#'; 38� 4 � � �$�B�

cwaoXscuXUcwTIa�a � mIe�_zVbcs|<[�p,cwTWa�y¸eg_bmIa([gpd<DnA>Ee�hfk7cDTWa�yve�_zmWa[�pOcDTWa�ad_zad�Eadh\c <wi �UnuTIe�ha><[�pOcwTIa�XÁcwjDmIn¥cDmWjDa�i*[gVzh^cDatkcw[7Z\| <ÁiO>W�Â~�[gcwa�cDTIevc(V{c(�8[^mW_zk�Tfe¸yga�Z*adadh}�ÂjD[ghI�Ecw[TIe¸y^a½�ÂjDV{cwcwath# � #'; 38� 4�� � ��� �

Z*atndegmIXwa+<wia>�VzXUhI[�cÂcwTIa ��/1032 [�pOe�XÁcwjDmIn�cwmWjDag�SUTWa�Xwatnd[ghIkÎXÁcDe�cwad�Eath^co�Â�ÂTWVYnuT ndeghWhW[�c<Z*a�nd[g��ÒZWVzhWatk&�ÂV{cDT&cDTWa �IjDXÁct�FVzhIndjwat��ath\cDX+<Áia>7Z`|�cwTWaËXwV( ta�[�pcwTIa <ÁiIjw[lnA>ËXÁcwjDmIn�cwmWjDag�*�ÂTIevcDady^adj�cDTIevc(VzXt��l SUTWa.nd[g��ÒiWVz_batj�ndegh��I�^mWjDa(Vbc�[gmWct� n��h [gjuklatj}cw[Lkl[ÏcwTIVzX�ndeg_zndmW_ze�cwVz[gh n�[^jwjDatn�cw_z|g��cDTWan�[^�EiWVb_zadj hWatatkWX cw[ ]`hW[v� cwTIa?]\VzhIk�[�pÎXscDjwmfn¥cwmIjwai*[gVzh^cDatk�evco�.�ÏTWath&cDTWVYX1VzX1hW[gc4e�nd[ghIXwVYkladjuevcDVb[^h��¼|g[gm�ÂVz_b_FhW[gcwVYn�a½cwTIe�cÂ[�pÀcwathBVzh�XÁVz�EVb_Ye�j�XwV{cDmIevcDVb[^hIXt��<wia>.�ÂVb_z_Z*a4klatnd_zegjwaok7XwVb�EiW_z|Be^XÖ¸�

Page 21: A Commentary on the Sixth Edition UNIX OS -- Lions

��=-, � � N =��<AQ# &Z*atnte�mIXwa�Vbc½�UegX�ategXwVzadj�pr[^j�cDTWa.iIjw[^�gjue��E�Eadjo�Ie�hIk}cwTWand[g�EiWVz_batj�kl[`atXUhW[gc�VbhIXwVYXsco�SUTWa�_Yevcwcwatj&iIegjÁcq[gp�cDTWVYXqiWjD[ln�atkWmWjwa�nd[gmW_Yk TIe¸y^aZ*adath��ÂjDVbcÁcwath�a � mWVzy¸eg_bath\cw_z|<ZWmlc�_zatXDXUa�<n�Vzadh\cD_b|�egX

���������$���������$���� �E�+&�>

� +&��#>�> � � � � #'; 38� 4 � � ��� �>���= N � �0� � �0#>���� � ��� &

3�4 � �0= �O*0* � ����M0P! ����5&,< �� � � � � �� '

�0L�L�:2,�= N =������� �O��9�#%�� N � � � N 9 � +<A���90# &�

�>=-, � � N =��6� N � � � N 9 � +49�# &90#1�E��9�# &� +2��90#'3��J9 +����-,�� � � ;#��P�P! JP8�

� +!��� � � � ;0=����>��*��9�# 3��J9 ;�=�������8� �$���'������ ;0=��0����2�/�8H# 6&�

SUTWVYX�iIjw[ln�aoklmWjDa�XwVb�EiW_z|}nuTWatnu]lX�VbpOcwTIadjDa�TIe^X�Z*adadhegh}adjDjw[^jt�IeghIk�Vbp,cDTWa�atjwjD[gjÂVzhIklVYnde�cw[^jE<Ámº� m atjwjD[gj >�TIegXhW[gc�Zfatadh}Xwa�ct�WXwa�cuXÂVbcÂcw[Ëe��gadhIadjue�_¼adjDjw[^jUVbhIkWVzntevcwVz[gh<w� Ì8Å�Åe!(Åe>1TIegX³cwTWa½yve�_zmWa½�m$El¨Xwada�_zVzhWa$`�^���on¢XÁ[cDTIevco�I�ÂVbcwT�[ghW_z|7[^hWa�ZWVbc½Xwa�ct�IV{c½nte�h�Z*a�mIXÁaok}egXU�ËegXw]cD[ËVzXw[g_YevcDa(ZIV{c�h`mW�.Zfatj��l�$SUTIa�[gi*adjuevcw[^js<��S>�egXÂmfXÁaokVzh9�#'3��J9';�+����-,�� � �';#�0P�P! �P

VYX�cwTWa�ZWVbcs�ÂVYXÁa�_z[g�gVYndeg_Ân�[gh�4smWhIn¥cDVb[^hWlA<weghIk1>on�egiWiW_zVbaokcD[EegjwVbcwTI��adcwVYn1yve�_zmWatXt�SUTWaEe�Z*[vyga4aA9liWjwaoXwXwVz[gh}VYX½�^jwaoevcDadjÂcDTIe�h�[ghWa.V{p$ZIV{c��[�p(cwTIa}ad_zad�Eadh\cz<ÁZ #*e��^X >�[�p�cDTWa <ÁZImlp >�XÁcwjDmIn¥cDmWjwai*[gVzh\cwatkBcD[�Z`|@<ÁZWia>I�lVzXÂXwa�co�SUT`mIXÂVbpGcDTWadjDa1TIegXUZ*adath}e�h�adjDjw[^jt�^cwTIa�a�9liWjDatXDXÁVz[gh� � � � ;0=����>��8� ��9�#'3��J9';0=��0����8�

VYX�adyve�_zmIevcDatkBe�hIk�n�[^��ife�jDatkË�ÂVbcwT datjw[f�,~�[v�ÏcwTWVYXUa�9`ÒiWjDatXDXwVb[^h.VzhIn�_zmIklaoX³e�hËe^XwXwVb�^hW�Eadh\cO[gi*adjuevcD[gjM< �d>I�GSUTWayve�_zmWa<[gpUcwTWa<aA9liWjwaoXwXwVz[gh�VzX4cwTWaBy¸eg_bmIaË[�ps<Ám�� m atjwjD[gj >/�� ��2o� cwTWa(yve�_zmWa½[gp<ÁZIilÒ �ÂZ #*e��^X >4TfegX8Zfatadh�egXDXÁVz�ghWaokcD[�Vbct�SUTWVYXÂmIXwa1[�pOe�h�egXDXÁVz�ghW�Eath^cÂegXUife�jwcU[gp¢eghBaA9liWjwaoXsÒXwVb[^hBVYXÂmIXwa�prmI_ºe�hIk � mWVbcwa4n�[^�E��[^h��,< �� � � � � �� �

L�����(6� N8� �=&�"��� +2�"� � ��=��.�"��� �

N8� �=� )����� � ��� ;������� P>��� &

N8� 8=� 1, ��� � ��� ;0������ P-, � &3 � � = � #!� N �>N �5&�

��hqcDTWVzX1aA9We��EiW_zag�¼|g[^m�XwTW[gmW_YkqhI[�cwa.cwTfevc(cwTWa�iWjD[�Òn�aoklmWjDas<wXwmIXwadj >½jDa�cDmWjDhIXOe�yve�_zmWaÂ�ÂTWVYnuTËVzX³mIXÁaok�pr[gjOcDTWa<ÁVbp >�cDatXÁct� SUTWaqcwTWjDada&XÁcDe�cwat��ath\cDX<�ÂTI[^Xwaqa�9latndmlcwVz[ghklatifathIkWX([gh}cDTWVYX½yveg_bmWaEe�jDa�athIn�_z[^XwatkqVbh&cwTWa�ZWjuegnu]gadcDX<���>.eghIk@<��>I�~�[gcwa�cwTIe�c³e½nte�_z_\[^h�e½iWjD[ln�atkWmWjwa8�ÂV{cDT.hI[(ife�jue��Ea�ÒcwatjDXG��mfXsc³XÁcwVz_b_`Z*a��ÂjDVbcÁcwathlÒ��ÂV{cDT.e(XÁadc,[gpIad�Eilcs|�iIegjwathlÒcwTIatXwatXt�WXÁVYn��

� � ��=��!���

,< � � � � � �� �

<uÍ >�iWjD[vy`VzkWatXUeEn�[ghfklV{cDVb[^hIe�_ºa�9liWjDatXDXÁVz[gh��OSUT`mIXUVbpS<wem>e�hfk3<wZa>Ee�jDa(Vzh\cwat�gadjUyve�jDVYe�ZW_zatXt��7���R9 � � � 9%�

VYX8egh7a�9liWjDatXDXwVb[^hË�ÂTW[^Xwa�yve�_zmWa½VzX8cwTfevcU[�p�cDTWa½_Ye�jD�gatj³[�p<weo>.eghIk@<ÁZa>I�È�[v��ady^adj�cDTWVYX(kW[\aoX�hI[�c½��[gjD]�V{pi<Dem><eghIk <wZa><egjwacw[.Zfa(jDad�^egjDkWatkEegX8mWhIXwVb�^hWatk<Vbh\cwat�gatjDXt�,È�adhInda�cDTWadjDa�VYXe�mIXwa½pr[^jUcwTWa�iIjw[ln�aoklmWjDa:�L���: 8���!�7��� 98�

� 4 ���BAJ�/� A$9 &�� +2�O���49%�

��= N$� � � �O�'�5&��= N$� � � ��9%�5&�

SUTWa½cwjDVznu]�TWadjDa�VYX8cwTIe�c�<Dem>4eghIkz<ÁZO>W�`TIe¸y`VbhI�4Zfatadhklaon�_Ye�jDatk egXEi*[gVzh^cDadjuXEcw[�nuTIegjDe^n¥cDadjuX�egjwa�cDjwaoevcwaokÑpr[gjn�[^�EiIe�jDVzXw[ghBiWmWjDif[\XÁaoXUegXUmWhIXwVz�ghWaokBVzh\cwat�gadjuXt�SUTWa³Z*[lkl|½[gp`cwTWa³iIjw[ln�aoklmWjDa³n�[^mW_zk1Tfe¸yga¢Zfatadh4�ÂjDVbcÁÒcwath}egX8���2�O�/� 98�� 4���� A��/� A$9 &�

� +!�7���R9%��>= N$� � � �7�'�5&

=>����=�>= N$� � � ��9%�5&�

ZWmlc�cDTWaËhIe�cwmWjDaE[�pY<ÁjDa�cwmIjwha>BVYX4XÁmfnuT&cDTIevc�cDTWaP<Áat_zXwa�>VYXUhW[�c�hWatatklaok�TWadjDa�*Ö�#

Page 22: A Commentary on the Sixth Edition UNIX OS -- Lions

,< �� � � � � �� �

È�adjDa�e�jDa1cs�8[ � mWVYnu]`VbaoXÂ�ÂTWVYnuT}Vbh\cDjw[lklmInda4XÁ[^�Ea�klV �*atjÁÒath^c�eghIkBa�9l[�cDVzn(_z[\[^]`VbhW�EaA9`iIjwaoXwXwVb[^hIXt��),VzjDXÁc �F0:�F � ��� 4 ���.����

�>= N$� � � A � ��� ;�� � �0#�*�* � ��L0F�F'�5&�

�ÂTWatjwa(cDTWa4klatnd_zegjDe�cwVz[gh� 4 ���BA � ;�� � ��# &

VYXUiIe�jwc�[�pGcwTWa4kWatn�_Ye�juevcDVb[^h7[gpGcDTWa4XscDjwmfn¥cwmIjwau<ÁmO>W�<Ámº� m kWVbjDia>4VYXUe�nuTIegjDe^n¥cDadj³i*[gVzh\cwadjo�OSUTWadjDa�pr[^jwa�cwTWayve�_zmWa.[�pS<� vm�� m kWVbjDi�� �d>ËVYX�eBnuTIe�juegn�cwadjo�Slr��hIndjwat�EadhlÒcuevcwVz[gh�[�p,cwTIa�if[^Vbh\cwatjÂ[lndn�mIjDXÂe^XÂe�XwVYkla1a �¼atn¥co� n�ÏTWathÐe�nuTfe�juegn¥cDadj�VzXE_z[^e^klatkÑVzh^cD[�e�XÁV 9`cwadathÑZIV{cjDad�^VzXÁcwatjt�UXÁVz�ghÎaA9\cDadhIXwVz[ghÎ�Ëe¸| [lndndmWjt� ��|&<De�hIk1>gVbhI�cDTWa��8[^jDk7�ÂV{cDTq�m#`�g��egh`|<a�9`cwjue�hIad[gmfX8TIVb�^T�[^jDkWadjUZWVbcDXegjwa4at_bVz�EVbhfevcwaokF�1SUT\mfX�cDTWa�jDatXwmW_bc½jDa�cwmIjwhWaok�VzX(XwVb�EiW_z|eEnuTIegjDe^n¥cwatjt�~�[gcwa�cDTIevc�egh`|7Vzh^cDad�^adjÂ�ÂTWVYnuT}Zfat�gVzhIXÂ�ÂVbcwTqe tadjD[

l¨ag� �I�³�m#`�g�mn³VYXUVbh\cDadjDiWjwadcwaokBe^XÂe�h�[`n�cDeg_�Vbh\cDad�gatjt�SUTWa4Xwatnd[ghIkBa�9We��EiW_za1VzX �,QF�F8, � ��=-,/� � ��

�>= N$� � � �0� � *%,$�0F'�����0F �5&�

SUTWa yve�_zmWaÑjDa�cDmWjDhWatk VYX�hÓklVzy`Vzklaok Z`| Öo�m( e�hfkjD[gmWhfklatkBmWi�cw[�cwTIa�hWa�9`c�TWVz�gTWaoXscp<wVbh\cDad�gatj >I�~�[gcwaÂcDTWa�mIXwaÂ[�p*cwTIa�jwVz�gT\c³XwTWV{pÀc8[gi*adjuevcw[^jS<�� �e>½VbhiWjDa�pratjwathIn�a(cD[.cDTWa4klVzy`VzXwVb[^hB[^ifatjDe�cw[^j�< �N>I�,< ��8� � � � � �� � Çqegh`| [�p�cwTIa�if[^Vbh\cuX}�ÂTWVYnuTLTfe¸yga�Zfatadh Vzh\cwjD[`kWmIn�aokegZf[vy^a(egjwa�n�[^_b_zatn�cwaok7Vzh�cwTWa1pr[^_b_z[v�ÂVbhI�.iWjD[ln�aoklmWjDa �

��,$L�� ��= N � ��� ��#%���>=-, � � N =��6� N � � � N #>�� ��A ��# &��#1��# &��#'3��J#'; 38� 4 � � �6�6&��#'3��J#';>� N � N �EI�P��*�'&� +2����#'3��J#'; #>� � �<� � �0#�� � �

� ��� � ��� *�*+&� +2��� ��� �>N ���E� � �

���0#'3��J# ;�+��0�-, �<I�� �K�"8� �$�6�'� �� �0� �>N �E�+&3 � � = � #!� �0� ��� ��N �5&�

Í8TWaonu]�|g[gmIj�mWhIkWadjuXscue�hIklVzhW�q[gpE<uÍ >qZ\| �I�^mWjDVbhW��[gmlc�ÂTIe�cÂcwTWVYXU[ghIa4kl[`atXt�

SUTWadjDa�egjwaUcs��[4egkWkWV{cDVb[^hIe�_IpratevcDmWjDatXO|^[gmË�Ëe¸|�hWatatkcw[E]`hW[v�Le�Z*[gmlc �<����S>EVYXÂcDTWa4_z[g�gVYndeg_ºn�[^h�4smWhIn�cwVz[ghPlA<we�hfk1>on�pr[^j�jDa�Ò_YevcwVz[ghfe�_¼a�9liWjDatXDXÁVz[ghfXd�jlÉÍ$ps�S< ��� >.Vzh^cDjw[lklmfn�atkBategjw_zVzadjo� nSUTWa�_YegXÁcÂXÁcDe�cwat��ath\c�n�[gh\cue�VzhIX8cwTWa�aA9`iIjwaoXwXwVb[^h��� ��� �>N�ÂTWVYnuTÏVzX<Xw|`h\cDegn�cwVYndeg_b_z|ÑeghÐegkWkljDatXDXEyve�jDVzegZW_za}ZWmlcXwad�Ëe�h\cwVYndeg_b_z| 4smIXÁc�eEmWhWV � mWa1ZWV{c½iIevcwcwadjDh��SUTWVYX7VYX7eghÏa�9We��EiW_zaq[�p4e�kWady`Vznda&�ÂTWVYnuTÏVYX<mIXwatkcwTIjw[^mW�gTW[^mlc�x�~���¾��¸SUTWaOiWjD[g�gjue��E�Eadj¼hWatatklaok1eUmWhWV � mIaZWVbcqiIevcwcwatjwh�pr[gj}e iIe�jwcwVYn�mI_zegj�iImWjwi*[^Xwag� SUTWa�aA9le^n¥cyve�_zmWa.kWVzk}hI[�c½�Ëe�cÁcwatj(e^X�_z[ghW�BegX�Vbc1��e^X�mWhWV � mWag�(Ô�hegkWa � mIevcDaqXÁ[^_bmWcwVz[gh cw[�cDTWaqiWjD[gZW_zad� ��e^XEcw[�mfXÁa}cDTWaegkIkljwaoXwX�[gp¢eEXwmWV{cue�ZW_za1�g_z[gZIeg_Fyve�jDVzegZW_ba^�

,< �� ( � � � � �� �8�

� (���:R9 �#3�� �$N = �)9�#%�� N � � � N 9 � +<A$90# &�

��=-, � � N =��6� N � � � N 9 � +BA ��9�# &�09�# ��90# &�09�#'3�� 9';�+��0�#,�� � � �';JK�I���� �+&9�3>� �$N = ���09�#%� &�

SUTWaÂXÁaon�[^hIk4_YegXÁc¢XÁcDe�cwat��ath\c¢VYX¢Vzh^cDadjDatXÁcwVzhW�(Zfaonde�mfXÁaVbc�n�[gmI_zkBTIe¸yga1Z*adath��ÂjDVbcÁcwath�e^X�09�# 3��J9';�+>�0�-,�� � �090#'3��J9';�+��0�-,�� � � ;�K�I���� � &��h&cDTWVYX�Xscuevcwat�Eadh\c1cwTWaEZWVbc4�ËegXw] <w� Ô½� (~(Í >�VYX

<Á[^j >gatk7Vbh\cw[r<wjwZWiWÒ �ÂZ #feg�^X >W�OSUTWa4Xw|\�.Zf[^_j< � >.VzXUcDTWa_z[g�gVYndeg_FklVzX 4smWhIn�cwVz[gh�pr[gj�egjwVbcwTI��adcwVYn1yve�_zmWatXt�SUTWVYX<VYX<e�hÎa�9Weg��iI_baq[gp1e�y^adjD|�mIXwa�prmW_(n�[^hIXscDjwmfn¥ÒcwVz[gh�Vzh4x�~���¾��o�ÂTWVYnuT4nde�h4XDe¸yga,cDTWa$iWjD[g�^jDeg�E��atj¼��mInuT_Ye�Z*[gmWjo�¢��pd< !d>�VYX�e�h`|ËZWVzhIegjw|<[^ifatjDe�cw[^jt�\cwTIadh� � � �6&

�ÂTWatjwat<wem>EVYX1e�hqaA9liWjwaoXwXwVz[gh��*nde�h&Zfa�jwat�ÂjwVbcÁcDadhq�E[^jwaXwmIndndVbhIn�cw_z|7egX� � �+&Ô�iWjw[^�gjue��E�Eadj<mfXÁVzhW�ÑcwTWVYX�n�[ghfXscDjwmIn�cwVz[ghÐTfegX7cw[Z*a�ndegjwadprmW_We�Z*[gmlc$cwTWa�iI_ze^n�ad�Eath^c³[gp*ZI_zeghW]�nuTfe�juegn¥cDadjuXd�XwVbhInda� ��* , &

VYXÂklV �¼adjDadh\cÂprjD[g�� �E*8, &

�ÏTIe�c�VzX�cD[ËZfa1cDTWa��Eate�hIVbhW�E[gp� ��*%, & �

Ö�$

Page 23: A Commentary on the Sixth Edition UNIX OS -- Lions

,< �� , � � � � �� � (

:$(���� � +>�>�0�0 � �����>=-, � � N =�� � &+��� � � �>�+& � � �! �8H��-�'& � *�*'�

� +!� � ��� ;00+ � ��=� � ���$�$��� ���'� ������ ;0���>�� P���� � � &�>= N$� � � � � �5&�

����� ;0=��0�����������8H��$�'&�>= N$� � � �73�,��5&�

SUTWVYX�a�9We��EiW_za�Vzh\cwjD[lklmIn�aoXBcwTWaW<spr[^j >�XÁcDe�cwat��ath\ct��ÂTWVYnuT TfegX�e y^adjD|Î�gadhIadjue�_1XÁ|`h\cDe�9Î�Ëeg]\VzhW�ÑV{c}Z*[�cwTi*[v�8atjÁprmI_�e�hIk�n�[^��ifegn¥co�SUTWaÎXscDjwmfn¥cwmIjwa�[gpËcwTWa"<spr[^j >ÏXÁcDe�cwat��ath\c�VYX�e^kla�Ò� mIe�cwad_z|&klaoXwndjwVzZ*atkq[^h�ife��ga�Öt��[gp$cwTIa}<¥Í SGmlcw[^jwVYe�_ >W�eghIk<cDTIevc�kWatXDn�jDVbilcDVb[^hBVYXÂhW[gcÂjwatifaoevcwaok�TWadjDag�SUTWa�Ô�_z�g[g_8a � mWVzyve�_zadh\c�[�pUcDTWaBegZf[vy^az<spr[gj >}XÁcDevcDa�Ò�Eadh\c���[gmW_YkBZfa

+>�� � � �%,R� N =�#�, ����N8� � �! �8H��$� 3�, ��

SUTWa�if[v��adj<[gp1cwTWaI<spr[gj >�XÁcDevcDad�Eadh\c7Vzh <uÍ > kla�ÒjDVby^atX1prjD[g� cwTIa<�gjDate�c�prjwatatkl[^� cDTWa<iWjD[g�^jDeg���Eatj�TIegXVzhqnuTW[`[^XwVbhI���ÂTfevcÂcw[ËVzhInd_bmIkWa4Zfadcs�8atadh�cDTWa4iIegjwath^cDTWa�ÒXwatXt�ËÍ8atjÁcue�VzhW_z|�cwTWatjwaEVYX1hW[�cDTWVbhI���ÂTIVznuT�jwaoXscDjwVYn¥cuX½cwTWante�_Yn�mW_YevcDVb[^hIX.cw[�Vzh^cDad�^adjuXd��egX�cwTIa�hIa�9`c<a�9We��EiW_za��ÂVb_z_klat�E[ghIXÁcwjuevcDag�,< ��13 � � � � �� � ,

L � � � � � , � �>� � N # � � � ,8���>=-, � � N =��6� N � � � N #>�� ��A$#'&+��� �)# ��#>����.&)# � ��#>�� � ���M0P ���6&)#�*0*'�

� +!��#'3�� # N0N )0# ��� N #%�#�� � , � ������# �1� � ,8�5&�

��h?cDTWVzX a�9We��EiW_zaÐ[gp�cDTWa <Ápr[gj > Xscuevcwat�Eadh\ct�7cwTWai*[gVzh\cwadjËyvegjwVYe�ZW_za <Áia>�VYX<XÁcwadiIifaok cwTWjD[gmW�^TÑaoegnuT ad_za�Ò�Eadh\c�[gpºcwTIa4e�jDjDe¸|z<wiWjw[ln�>�Vzh7cDmWjDh��Ô�n�cwmIeg_b_z|<cDTWa�[gjDVz�gVzhIe�_Fn�[lkla�Tfegk+>��!��# � ��#>�� � ��� &)# � �0#����� ���M�P! ���+&)#�*�*��

ZWmWc$V{c8�8[^mW_zkWhZ' c �Wc$[ghEcDTWa�_zVbhIa�*OÔ�XOhI[�cwaokEategjw_zVbatjt��cwTWamIXwa}[�pu<ÁiIjw[lnA>�e^XËe�hÏe�_bcwatjwhIe�cwVzyga�cw[�cDTWaqaA9`iIjwaoXwXwVb[^h< �1iWjw[lno{ ��| >�VzX�e^ndndadilcue�ZW_za1VbhBcwTWVYX�nd[gh\cwaA9\co�SUTWVYX1]`VbhIk&[�p�<spr[gj >7XÁcDe�cwat��ath\c(VYX1e�_z��[\Xsc�e�n�_zVznuTWaVzhÏx�~���¾ Xw[�|g[^mÑTIe^k ZfadcÁcwatj<_zate�jDhÑcw[�jwaon�[^�ghWVYXÁa�Vbct�ÅÂaoegkBV{c�e^X�%+�� ��� ���� � ���.+� ��%!.!���� 01$&���

~�[�cwa�cDTIevcI<ÁiWjD[lnm{ ~%$Åe!�Í | > VYX}cDTWa e^kWkljDatXDX�[�p�cwTWal ~%$Åe!�Í �.Ö�n�ÒÉcwT�ad_zad�Eath^c�[�pÂcDTWa�egjwjue¸|@l¨�ÂTWVYnuT kl[`atX

hW[gc4[�pÂn�[gmIjDXwa.aA9lVzXÁc n(VÉ� a^�7Vbc4VzX�cwTWa �IjuXÁc4_b[lnde�cwVz[gh�ZfadÒ|g[^hIk7cwTWa�athIk7[gpGcDTWa4e�jDjue¸|g�Ô�cUcwTWa(jwVYXw]Ë[�pº[vy^adjD]\Vz_z_I��a½��[gmW_Yk<i*[gVzh\c�[^mlcÂe��^egVbhcwTfevc��ÂTWatjwaoegX�Vbh�cDTWa�iWjDady`Vb[^mIX�a�9We��EiW_za� *0* &�Eate�h\c�e^kWk7[^hWa(cw[EcDTWa�Vbh\cDad�gatjY<ÁV >W�lTWatjwa#�*0* &�Eate�hfXY<wXw]\Vzi�iBcD[Ëif[^Vbh\cUcw[EcDTWa�hWaA9\c�XÁcwjDmIn�cwmWjDa�>I�

,< ��#� � � � � �� �13

(�(�F�� �J#�3�� �$N = �"���>=-, � � N =�� �Q�>N �.&3$4 � �0= ���"� �'�$# � �0�(����� �-� �'�

�J#8��� � � �"���5&�

SUTWVYX7VYXBeghÏa�9We��EiW_za&[gp�cwTWaI<Á�ÂTWVz_za�>�XÁcDe�cwad�Eath^co��ÂTWVYnuT4XÁTI[gmW_Yk(Zfa�n�[g�EiIegjwaok��ÂVbcwT4cwTWa*<Dkl[��z�b�G�ÂTWVb_za��z�z� >n�[^hIXÁcwjDmIn¥cDVb[^h}adhInd[gmWh\cwatjwaok}ategjw_zVzadjo�ilÉÍ$ps�½cwTWa}<Á�ÂTIVb_za�>e�hfk3<wjwatifaoevc >�XÁcDevcDad�Eadh\cuXÂ[�p�%OegXDnde�_É� nSUTWa1�EateghWVbhI��[gpGcDTWa�iWjD[ln�atkWmWjwa1VYX� �.� � ������ ��� ��� �2�#!�!�� � ���(��0 � � �.��!�$&� 0 � ! �2+#!���0 � �#���

��� ' � ��!�! 0 � � ���%!�$&� 0 �#! � �2����� � ��0 ��� 0 + � ������ +�� � � � ���� +��� ~�[gcwa(cwTWa�jDatkWmWhIkWegh^cs<wVbh\c >.VzhBcDTWa�klatnd_zegjDe�cwVz[gh7pr[gj<wn�>W�¢��c�VYXÁhZ' c�e�_z��e¸|lX�[g�EVbcÁcDatk1*,< ��#' � � � � �� � �SUTWa(hWa�9`c�a�9We��EiW_za½VYX�e�ZWZWjDady`VYevcDatkEprjD[g� cDTWa½[^jwVz�gVzhIeg_ ���(�:8,R��=�= � �"��

�Q�>N�� )���+&��=-, � � N =��6AJ+�# � N &+�#1��,�= N +!� � ��� ;0������ P������5&���������$���������$�N � � ��� ;�����, 1, � &� 3 �$N � 4!� N � ���� ��=B, ���� ��=4� �

� ������*E+�#'3���+�;�0+�+'��= N )��� &��#��0���&� � � +�#'3���+�;00+0+'��= N , ��� &9>�>=�� � &

�>=0+>� � � N �� ������*E+�#'3���+�; �Q� 0�>=�3�� � � ��� =�� �6��L�F0F+&��#��0���/� � ��+�#'3���+�; �Q� ��>=�3�� � ;�� ��� =�,�� &

��� ��=������� ��=�L��&

Öo�

Page 24: A Commentary on the Sixth Edition UNIX OS -- Lions

��$���������$����������

~�[gcwa(cwTIa4e�jDjDe¸|Eklatnd_zegjDe�cwVz[ghËpr[^jUcwTWa(cs��[.��[gjuk7egjÁÒjue¸|=<wha>W��eghIkÎcDTWa�mfXÁa�[�p4�gadcÁp l¨�ÂTWVYnuT e�iWi*ategjwaokÎVbhÌR9leg�EiW_baM$Fn¥�SUTWa*<DXÁ�ÂVbcDnuTO>�XÁcDe�cwat��ath\cº�Ëe�]gaoXFeU��mW_bcwVz�Ue¸|�ZWjue�hInuTklatifathIklVzhW�<[^hBcDTWa�yve�_zmWa�[�p¢cDTWa�a�9liWjDatXDXÁVz[gh�Vzh}iIe�jDadhlÒcDTWatXwatXt�³SUTWa1VbhfklVby`VYklmIeg_�iIe�jwcDXUTfe¸yga+<wnde^XÁa1_Ye�Z*ad_YX >�� ��pe<sc >�VzX8[ghIa�[gj$pr[gmWjo�^cwTWath7[ghIa�XÁadc8[gpºegn¥cDVb[^hIX8VzXVbh�[gjuklatjt� ��pi<sc >7VYX datjw[B[gj(cwTIjwatag�FhW[gcwTWVzhW��VzX(cD[BZ*aËkl[ghWaevc�e�_z_É� ��ps<sc >qVzX.e�h`|\cwTWVzhW�qat_zXwag�,cwTIadh eqXwa�c.[�p�egn�cwVz[ghIX_zegZfat_b_zatk@<wkWa�p¨e�mI_{c >.VYXUcD[�Z*a�a�9laon�mlcDatkF�~�[gcwa�cDTWa�mIXÁa�[gpt<ÁZIjwaoe�]y> e^X�egh�aoXwnte�i*a&cD[ cwTWahWaA9`cÂXÁcDe�cwat��ath\cÂe�pÀcwatj8cDTWa1adhIkB[�pGcwTWau<DXÁ�ÂVbcDnuTa>�XÁcDevcDa�Ò�Eadh\co���ÏVbcwTI[gmlc�cwTWa=<ÁZWjDateg]F>I�(cwTWa�hI[gjD�Eeg_4a�9laon�mlÒcDVb[^h4XÁa � mIadhIndaO�8[^mW_zk1Z*aOpr[^_b_z[v�8aok(�ÂV{cDTWVbh1cDTWai<DXÁ�ÂVbcDnuTO>XÁcDe�cwad�Eath^co�SUT`mIX1e3<wZWjDate�]y>Ë��[gmI_zk}hI[gjD�Eeg_b_z|�ZfaEjDa � mWVzjwaokqevccDTWa�adhIk�[gpGcDTWaf<wkladp¨e�mW_bc >Ee^n¥cwVz[ghfXd�¢��c�TIe^XÂZfatadh�[g�EVbcÁÒcDatkÐXDevprat_b|ÎTWatjwa�Zfaonde�mfXÁa}cDTWa�[ghW_z|ÑjDad�ËegVbhWVzhW� ndegXwatXe^n¥cwmfe�_z_b|<Tfe¸yga(h\mI_b_ºe^n¥cDVb[^hIXÂegXDXÁ[lndVze�cwatk7�ÂV{cDT�cwTWat���SUTWa&cs�8[�hI[ghlÒÉcwjDVby`VYe�_�ife�VzjDX7[�p4egn�cwVz[ghIX7jwatiWjwaoXÁath\ccDTWa�e^kWklVbcwVz[ghq[gp³[ghWa�#^�EZIV{c1Vbh\cDad�gatj�cD[�eghW[�cDTWadjo��SUTWa_YevcDadj y^adjuXÁVz[ghfX�[�p�cwTWa <uÍ > nd[g�EiWVz_batj��ÂVz_b_�XÁmIiWif[^jÁc

<w_b[^hW�o>�yve�jDVzegZW_zatX�e�hfk��Eeg]gaEcDTWVzX.XÁ[^jÁc4[gpUnd[lkla<��mfnuTaoegXwVbatj8cD[Ë�ÂjwVbcwasl e�hIk�jDategkOn¥�~�[gcwa4eg_zXw[�cwTIe�c�VbhBcwTWa�aA9liWjwaoXwXwVz[gh+�#'3���+�; �Q� 0�>=>3�� � ;�� � � =0�

cDTWadjDa�e�jDa½cs��[E_batygat_zXU[gpGVzhIklVzjwaon¥cwVz[ghº�,< �� � � � � � �� � '

:0:�F��6���0 �J= � � � # � �$38��Q�>N A � #'&�

�>=-, � � N =��6A � � # &�>=-, � � N =����>=��.� �� ? &� � #1� � # &��=�� ��� � # 3�� � ;0�����0� )��� &�� ? ��� � # 3�� � ;0�����0� )��� � � 8� ? ��'&� 3 �$N � 4!��� � #'3�� � ;Q80��=��8H��� � � ��J� ��=<H� ���0P �

�"A�� �>=���� 3 8� ? � � ��;��J�0 �J= �%�O�0=����)�-38�5&9>��=0� � &

�J� ��=<H��� ��G ��"A$9>�>=���� 3 8� ? � � ��;��J�0 �J= �%�O�0=����)�-38�5&�

� # �>N ��� � #%�5&�

SUTWVYX�aA9leg�EiW_ba7TIegX.e}h`mW��Z*adj.[�p�Vzh^cDadjDatXÁcwVzhW�}praoevÒcwmIjwaoXd�SUTWa4klaon�_Ye�juevcwVz[gh7pr[gjs<Dk �Ëe�4s[gj >.VzX� N � � � N �

� 4 ���E�>;Q �Q� ��'&� 4 ���E�>;Q8� ? ��'&�

Xw[ÂcwTIe�c�cwTIa$yve�_zmWa8e^XwXwVz�ghWaok�cD[p<Á�Ëe�4 >ÂVzX�cwTWa8TWV � T�[gjukladjZ`|\cwa1[�p,cwTWa�yveg_bmWa�e^XwXwVb�^hWatk7cw[r<Dkladyy>W���h¿cDTWVYX�aA9We��EiW_zag�.cwTWa�<wXw�ÂVbcDnuTa>�Xscuevcwat�Eadh\c�TfegX[ghI_byËcs��[�hW[ghlÒ�h`mW_z_�ndegXwatXt�We�hfk7hW[r<Dkla�p¨egmW_{c >W�³SUTWa�e^n¥ÒcwVz[ghfX�pr[gjUcwTIa�jwaon�[g�^hWVYXÁaok7nde^XÁaoXd�la^� �f��1A$9��>=��'� 3 8� ? � � ��;�������J='�-���>=��.�)�$3%� &

_z[\[^]Ëpr[gjD�EVzkIe�ZW_za),VbjuXsc�V{cUXÁTI[gmW_YkEZfa½hW[�cDatkEcDTIevc8cwTWVYX8VzX8e�iWjD[`ndatklmIjwandeg_b_É�l�ÂVbcwT�iIe�jue��EadcwadjuX�<wklatyy>.eghIk <ÁjD�e>W��`atnd[ghIk <wZ*kWadylXÁ�e>fl e�hIk <wndkWadylXÁ�e>4nUe�jDa4e�jDjDe¸|lX�[�pXÁcwjDmIn¥cDmWjwaoXd�I�ÂTW[^Xwaf<wk nd_b[\XÁa�>�ad_zad�Eadh\c�VYX�eEi*[gVzh\cwadj�cw[e.prmWhIn�cwVz[gh��WVÉ� ag�

9>�>=���� 3 8� ? �VYX�cwTWa�hIeg�Ea�[�p,eEXÁcwjDmIn¥cDmWjDag�We�hfk

9>�>=���� 3 8� ? � � ��;��J�0 �J=VYXOe�hEad_zad�Eadh\c³[gpIcwTfevc$XÁcwjDmIn¥cDmWjwaÂ�ÂTIVznuT�TIe�iIifathIX¢cw[�Z*ae�if[^Vbh\cDadjUcw[<e.prmWhfn¥cwVz[ghº�IXÁ[�cDTIevc

AQ9��>=���� 3 8� ? � � ��;����0��J=VYX�cDTWa.hfe��Ea�[gp8eËprmWhfn¥cwVz[ghº�1SUTIa �IjuXÁc½iIegVbj([�p³iIegjwathlÒcwTIatXwatX�VzX�<DXÁ|`h\cDe^n¥cwVYndeg_*XwmW�\e�j >1cw[EiWmlcUcDTWa(nd[g�EiWVz_batjUVbhcwTIa�jwVz�gT\cUprjDeg�Ea([gpG�EVzhIk1*,< �� � � � � � �� � ���a�[ �¼adjUcwTIa1pr[g_z_b[v�ÂVzhW�EegXÂe �IhIeg_�a�9We��EiW_za �

������LR#8� � ,2�"����=-, � � N =�� � � # &���������$�������� 3 �$N � 4!� � � ���� ��=�I'H���� H � ���� ��=�I'H��'H ��I����� ��=�I'H�� � P ������ ��=�I'H��'H# � ���� ��=�I'H��-��� � ���� ��=�I'H��-��M � ���� ��=�I'H������'I����� ��=�I'H���I-�����

Öo�

Page 25: A Commentary on the Sixth Edition UNIX OS -- Lions

�J� ��=�I'H��>I ��I������� ����, )����� � &� +!�1�����=��"���

� ��*6�0�����+&������ ;0���$, )������� � ��� ;������ P���� ���$(�� � � &=�� �$N ���5&�

È�atjwa1cDTWaf<wXw�ÂVbcDnuTa>�XÁat_baon¥cuXÂn�adjwcDegVbh�yve�_zmWatX�pr[^js<Áha>pr[^j4�ÂTWVYnuT�cDTWaË[ghIa<XÁadc�[�pÂegn�cwVz[ghIX�XwTW[gmI_zk�Z*a7ndegjwjDVbaok[^mlct�Ô�h.e�_bcwadjDhIe�cwVzyga¢�8[^mW_Yk½Tfe¸yga¢Zfatadh1cD[��ÂjwVbcwa³eY<w�E[ghlÒXÁcwatj >}<ÁVbp >EXÁcDevcDad�Eadh\c�XwmInuT�egX� +&� � ���>I H�� ���-H � ��� � ���>I H���H ��I ��� �$�������� ��� � ���>I H��>I���I �

ZWmWc$cwTfevc8��[gmI_zkËhI[�c8Tfe¸ygaÂZ*adadhBadVbcwTWatj³cDjDeghIXÁife�jDadh\c³[gja �ËndVbath\ct�~�[gcwaBcwTWa}e^kWklVbcwVz[gh�[gp½e�hÑ[`n�cDeg_�nd[ghIXÁcDegh^c�cw[I<Áha>eghIkqcDTWaE�Ea�cwTI[`k�[gp�n�[^�Eif[\XÁVzhW��e�Öo�7ZIV{c4yve�_zmWa�prjD[g�cs��[EadVz�gT\cÂZWV{c�yveg_bmWaoXd�

ָ�

Page 26: A Commentary on the Sixth Edition UNIX OS -- Lions

� � ������� � � �����

SUTWa(iWmWjDi*[^Xwa½[gpºcwTIVzXÂnuTIegilcwatj8VYX8cw[ËXwmWjwy^ad|�cwTIa1Xw[gmIjDndand[`kWa�e^X(e��ÂTW[^_ba�VÉ� a^�4cw[�iWjDatXwadh\c(cwTWar<w�8[`[lk1><Z*a�pr[^jwacDTWaf<scDjwatatX >Ì�9Weg��VzhIe�cwVz[gh7[gp�cwTIa1Xw[gmIjDnda(nd[`kWa½�ÂVz_b_FjDady^ateg_IcDTIevcVbc�n�[^hIXÁVYXÁcDXU[�p¢XÁ[^�Ead$o$ËklVzXÁcwVzhIn�c �I_baoXd�I[�pG�ÂTIVznuT � cs�8[�egjwaOVzh�e^XwXwad�.ZW_b|½_zeghW�gmfe��ga^�teghIk1TIe¸ygaOhfe��EatXadhIkWVbhW�EVzh <wX > ��(�e�jDaËVzh�cwTWa@<uÍ >�_Ye�hW�^mIe��^aEeghIk�TIe¸ygaËhfe��EatXadhIkWVbhW�EVzh <wnA>2 ÖA$&egjwa7Vbh cwTWa@<uÍ >q_Ye�hI�gmIeg�gag�,ZWmlcËe�jDa<hW[gc�VzhlÒcwathIklatk�pr[gj,VbhIkWadi*adhIklath\c¢nd[g�EiWVz_ze�cwVz[gh���eghIk�TIe¸y^ahIe��EaoXUadhIklVzhW�EVzh <wTa>W�SUTWa �I_zatXËeghIk cwTWatVbj<nd[gh\cwath^cuXE�8atjwa�e�jDjue�hW�^atk�Z`|cDTWa}iWjD[g�gjue��E�EadjuX.iWjwaoXÁmI�EegZW_z|�cw[�XwmWV{cËcDTWadVzj<n�[^h`yga�ÒhWVzadhfn�aÂe�hIk.hW[gc,pr[^jO[gmWjuXt�º��h��Eegh`|���e¸|lXGcwTWaÂklVzy`VzXwVz[ghIXZ*a�cs��adath �I_baoXÂVYX�VzjwjDad_zadyve�h\cUcw[<cwTWa4iIjwaoXÁath^c�kWVzXDn�mIXDXwVb[^heghIk7�EVz�gT\c���ad_z_FZfa4egZf[^_bVYXÁTIatkBadh\cwVzjwat_b|^�Ô�X���ath\cwVz[ghWaokBeg_bjDate^kl|ËVbh&Í8TIegilcwatj`!½hWag�`cDTWa �I_zatXTIe¸y^a³Z*adadh.[gjD�^eghWVzXwatk(Vzh\cw[ �fyga8Xwatn�cwVz[ghIXt�GÔ½X�p¨egj,e^Xº�UegXi*[^XDXÁVzZW_zag�IcwTWa�XÁaon¥cwVz[ghfXÂ�8atjwa.nuTW[^Xwadh�cw[7Zfa.[�pOjw[^mW�gTI_b|a � mfe�_OXÁV� da^�¼cw[}n�_zmIXÁcwatj �f_baoX1�ÂTWVznuT�e�jDa�XÁcwjD[ghI�g_z|�e^XwXw[�ÒndVze�cwatk�e�hfkqcD[�Xwadife�juevcwa �I_zatX1�ÂTWVYnuT�egjwa�[ghI_b|q��ateg]`_b|e^XwXw[ln�VYevcwaokF�

3= �� � �!"� � �� ��� � ��� �#"����

SUTWau%$Äd%�Ö^ÖBegjDnuTWVbcwaon¥cDmWjwa�e�_z_b[v��X.a�<ndVbath^c<e^ndn�aoXwX�cw[yve�jDVYe�ZW_zatXF�ÂTI[^Xwa³e�ZIXw[g_zmlcwa³e^kWkljDatXDXFVYXF]`hW[v�Âh��o[gj��ÂTW[\XÁae^kWkljDatXDX�jDad_YevcDVby^a4cw[BcwTIaEXÁcDe^nu]�if[^Vbh\cwatj�nde�h�ZfaËkladcwatjÁÒ�EVzhWatk�a�9We^n¥cw_z|7e�cÂnd[g�EiWVz_ba1cDVb�Ea^�SUTWatjwa�VYXÂhW[ETIegjDkl�Ue�jDa1XÁmWiIif[^jÁcÂpr[^jÂ��mW_bcwVziW_za4_baA9lV{Ònte�_W_zady^ad_YX¢pr[gj8y¸egjwVYe�ZI_baÂklaon�_Ye�juevcwVz[ghfXOXÁmInuT<e^X³e�jDa�e¸yve�Vz_{ÒegZW_ba(Vzh7ZW_z[lnu]<XscDjwmIn�cwmWjDatk<_zeghW�gmIeg�gaoX8XwmInuT7e^X�Ô�_b�^[g_*[gj%Oe^Xwnte�_É��SUT`mIX <uÍ >qe^X�Vb�EiW_zad�Eath^cDatk�[^h�cwTWa+%$Äd%�Ö^ÖXwmWiWi*[gjwcDXU[^hW_b|<cs�8[E_za�9lVznte�_F_zady^ad_YX��¢�g_z[gZfe�_�e�hfk7_z[lnde�_É��(_z[gZIeg_�yve�jDVzegZW_zatX<egjwa&eg_b_z[lnde�cwatkÎXÁcDe�cwVYnde�_z_z|�(_z[`nte�_yve�jDVYe�ZW_zatXUe�jDa1e�_z_b[lnde�cwaok7kl|`hIeg��VYndeg_b_z|Ë�ÂVbcwTWVzh�cwTWa�n�mIjÁÒjDadh\c<Xscuegnu]�egjwaoe&[^j�VzhÑcwTWa}�^adhWatjDeg_�jDad�^VzXÁcwatjDX+lrj¥�l�8j #eghIk7j $Ëe�jDa1mIXÁaok7Vzh�cwTWVYXÂ�Ue¸|1n¥�3= )( � ��� � � � � " � � �

��hËx�~���¾Ð�ÂVbcwTEygatjw|�prat�ÑaA9Wn�adiWcwVz[ghIXt��cDTWa�klatnd_zegjDe�cwVz[ghIXpr[^jÂ�g_z[gZIeg_*yvegjwVYe�ZW_zatX�TIe¸y^a1Zfatadh�e�_z_��^e�cwTWatjwaok<Vzh^cD[�cwTWaXwa�c�[gp`<ÁTO> �f_baoXd�³SUTWa1aA9lndadilcDVb[^hIXÂe�jDa �� /�� cwTWa$XÁcDe�cwVYn¢yve�jDVzegZW_baM<wia>Sl �WÖ�(g�4n*klatnd_zegjwaok½Vzhu<wXw�UcDnuTa>�ÂTWVYnuT�VYX³XÁcw[^jwaok.�^_b[^ZIe�_z_z|g��ZWmWc$VzX8egntn�atXDXwVbZW_zaU[ghW_z|prjw[^�?�ÂV{cDTWVzh7cDTWa1iWjw[lndatklmWjDaE<DXÁ�UcunuTa>El Ô�n�cwmIeg_b_z|

<Áia>1VYX�e�ygatjw|.if[^iWmW_Ye�j$hfe��EaÂpr[gj8_b[lnte�_IyvegjwVYe�ZW_zatXVbh�x�~���¾�� n�

� � e<h`mW��Z*adj([�pOyve�jDVYe�ZW_zatX½XÁmInuT�egXp<DXÁ�ÂZImlp > l�$`�g�lÖ�n�ÂTIVznuT4egjwa¢jDa�pradjDadhfn�atk([^hW_b|�Z\|(iWjD[ln�atkWmWjwaoX¼�ÂV{cDTWVzhe(XwVbhW�^_ba �I_zag�geghIk�e�jDa8klaon�_Ye�jDatk�e�cGcDTWaUZfat�gVzhWhWVzhW�[gpGcDTIevc �f_ba^��(_b[^ZIe�_�yve�jDVYe�ZW_zatXÑ�Ëe¸|3Z*a klatnd_zegjwaokMXwadiIegjDe�cwad_z|�ÂVbcwTWVzh&aoegnuT �I_za.Vzh&�ÂTIVznuT}cDTWad|qegjwa�jwadpradjDadhIndatkF�(��c½VYXcwTIadh�cwTWa 4s[gZE[�p*cwTWaÂ_z[^e^kladjo���ÂTWVYnuTE_bVzhW]lX¢cDTWa�n�[^��iIVb_zatkygatjDXwVz[ghIXÂ[gpOcwTWa.iWjD[g�gjue�� �I_zatX�cw[g�^a�cDTWadj�cw[<�ËevcunuTqmWicwTIa4klV �¼adjDadh\c�klaon�_Ye�juevcwVz[ghfX$pr[^jUcwTWa4XDe��Ea1yve�jDVzegZW_zag�

3= -, ��� ) 9 5 � � � � � � � �8�

��p1�g_z[gZIeg_�klatnd_zegjDe�cwVz[ghIXE�.mIXsc<Z*a}jDadi*atevcDatk VzhÑprmI_b_½Vbhate^nuT��f_baPl egXEVYXËjwa � mWVbjDatk Z`|@)W[^jÁcDjDegh��³pr[^jËVbhfXscue�hInda�ncwTIadh4cDTWa�ZWmW_z]�[�plcwTIa8iWjD[g�^jDeg��VYXGVbhIndjwaoegXwatkF�veghIk��E[lk`ÒVbpr|\VzhW��e�klatnd_zegjDe�cwVz[gh�VYXËevcËZ*atXÁc7e�h\mIVzXDe�hIndag�$eghIk evc��[gjuXsco�\TIVb�^TW_b|BadjDjw[^jÁÒ�iWjD[ghWa^�SUTWatXwa�klV �<n�mW_bcwVzatX�e�jDa�e¸yg[^VzkWatk�Vbh<x½~���¾�Z\|�mIXwa�[�pcwTIa�iWjwatiWjD[`ndatXDXÁ[^j�p¨egn�Vz_zV{cs|B[�p¢cwTWaf<¥Í >Ën�[^��iIVb_zadjo�$SUTWVYXe�_z_z[v��X½klaon�_Ye�juevcDVb[^hIX�pr[^j1��[\Xsc1�g_z[gZfe�_,y¸egjwVYe�ZI_baoX�cD[BZ*ajDatn�[^jDkWatk<[^hIn�a1[^hW_b|7Vbh�[ghIa([gpGcDTWa1prad� <ÁTO>��I_zatXt��ÏTWadhIadygatjºcDTWaÂklatnd_zegjDe�cwVz[gh1pr[^j,e½iIe�jwcwVYn�mI_zegjº�g_z[gZfe�_yve�jDVzegZW_za,VYXFjDa � mWVzjwaok½cwTWa$egiWiWjD[giWjDVYevcwad<ÁTO> �I_ba8nde�h(cDTWadhZ*af<ÁVzhIn�_zmIklaok1>�Vbh�cwTIa �I_ba1Z*adVzhW�<n�[^�EiWVb_zatk��x�~���¾ eg_zXw[�mfXÁaoX$cDTWa+<ÁTa> �I_zatXUegX8ygatTWVznd_baoX8pr[gj�_bVYXscuX[�p�XÁcDeghIkWegjDkÏkla��IhWVbcwVz[ghIXBpr[^j7�Ëe�h`|ÏXÁ|`�.Zf[^_bVYnqhIeg�EatX�ÂTWVYnuT�jDadiIjwaoXÁath^c�n�[^hIXÁcDe�h\cuX(eghIk�egk#4smIXÁcDegZW_za�ife�jue��Ea�ÒcwatjDXt�We�hfk<pr[^j�klatnd_zegjDe�cwVz[gh�[�p,Xw[g�Ea�XÁcwjDmIn¥cDmWjwa(cs|`i*atXt�)W[^j½aA9leg�EiW_ba^�¼V{p³cDTWa��f_ba�Zf[gcÁcD_ba^� n�n�[^h^cue�VzhIX�e7iWjD[�Òn�aoklmWjDa <Á�g_zmW�4>Ñ�ÂTIVznuT �g_z[gZfe�_�yve�jDVzegZW_za�nde�_z_zatk <Á�gVzha>�ÂTWVYnuT�VYX4klaon�_Ye�jDatk�Vbh�cDTWa �I_zaz<ÁZ*[�9¼� Ta>BcwTIadh�e}XscuevcDa�Ò�Eadh\c �

� �Q� ��� � �>= �"9 �� � 4����mfXsc(Zfa.VbhIXwadjwcwaokqevc½cwTWa.Zfat�gVzhWhWVzhW�7[gpOcwTWa �I_za <wZf[gcÁÒcw_zag� nA>��ÏTWath7cDTWa �I_zau<ÁZ*[�cÁcD_ba^� n�>�VzXÂnd[g�EiWVz_baokF�Ie�_z_�klaon¥Ò_Ye�juevcwVz[ghfX�Vbh=<ÁZ*[�9F� Ta>&e�jDa7n�[^��iIVb_zatkF�8e�hIk�XwVzhIn�a7cwTWat|e�jDa�pr[^mWhIkBZfadpr[gjDa(cwTWa1Z*ad�gVzhWhWVzhW��[�p¢e�h`|EiWjw[lndatklmWjDa(Vbh<ÁZ*[�cwcw_zag� nA><cwTWat|qe�jDa�#feg�g�gaokqegX½a�9`cDadjDhIe�_,Vbh&cwTWaEjDad_z[�Ònde�cDegZW_ba1�E[lklmW_za��ÂTWVYnuTBVYXÂiWjD[lklmIn�aokF��ÏTWadh"e�_z_<cDTWa�[^Z&4satn�c �E[lklmW_zatX e�jDaÐ_bVzhW]^atk cD[�Ò�gadcwTWatjt�FeBjwadpradjDadhInda4cD[@<w�gVzha><�ÂVz_b_OZ*a�pr[gmWhfkqVzh�atygadjD|�I_za�pr[^j8�ÂTWVYnuTËcDTWa(Xw[gmIjDnda�Vbhfn�_zmIklatk3<ÁZ*[�9F� Ta>�Ô�_z_fcDTWatXwajDa�pradjDadhfn�atX��ÂVz_b_GZfa4nd[ghIXwVYXscDadh\c�e�hIkBcwTIa�_b[\egklatjÂ�ÂVb_z_ºe�_bÒ_z[`ntevcDa�e�XwVbhW�^_ba}XwiIegnda7pr[^jz<Á�^Vbha>�e�hfkÑe^k#4smIXÁcËeg_b_UcDTWajDa�pradjDadhfn�atXUe^ndn�[^jDkWVbhW�^_b|^�3= 43 $ � �2" ��� � �

�`aon¥cwVz[ghf!½hWa1n�[gh\cue�VzhIX$�Ëegh\|Ë[gp�cwTIa <wTa>��f_baoX�eghIkËcDTWaegXDXwad��ZI_b|Ë_Ye�hW�^mIe��^a �f_baoXd���c³e�_YXÁ[1n�[^h^cue�VzhIX¢e(h\mI��Z*adj¢[�p��I_baoXOn�[^hIn�atjwhWaok4�ÂVbcwTXw|`XÁcwat�MVzhWV{cDVzeg_bVYXDevcwVz[gh�e�hfkBiIjw[ln�aoXwX��Ëe�hfe��gat�Eadh\ct�Ö�(

Page 27: A Commentary on the Sixth Edition UNIX OS -- Lions

3= �� ��� � " � � � � � � 0 � ��� � 9 � " � �

��/y�N/10 � � { �`TWata�cE�WÖ�|Un�[^h^cue�VzhIX�hW[�yve�jDVzegZW_ba<kWatn�_Ye�juevÒcwVz[ghIXt�`ZWmlcÂ�Ëe�h`|<kla��IhWVbcwVz[ghIX8pr[gjU[^ifatjDe�cwVzhW�.Xw|lXsÒcwat�¿n�[^hIXscue�h\cDXOeghIk.iIe�jue��Ea�cDadjuXd��eghIk�cwTWa�klaon�_YevÒjDe�cwVz[ghIXÂpr[gj�cDTWjDada�XwVb�EiW_za.XÁcwjDmIn�cwmWjDatXt��SUTWa�nd[ghlÒygath^cDVb[^h �ÂVz_b_�Z*a�hW[gcwatk�[�pEmIXwVbhI�=<wmWiWi*adjqnde^XÁa[ghW_z|y>4pr[^j�kla �fhWatk�n�[^hIXÁcDe�h\cuXd�6 �Z6A��0 � � { �lTWadadc��^� (Í8TIegilcwatjqÖt×�|½n�[^hIXÁVYXÁcDXËath^cDVbjDad_z|[�p³klaon�_Ye�juevcwVz[ghfXSlr�ÂVbcwT&kla��IhWVbcwVz[ghIX�[�pOcDTWa�XÁcwjDmIn¥ÒcwmWjDatX <wnte�_z_b[^mlc >Be�hIk <Á�E[gmIh^c >Be^X½XwVYkla�Ò�a �¼atn�cDX n¥�~�[gcwaEcwTfevc4hW[^hWaË[�pUcwTIaËy¸egjwVYe�ZI_baoX1VzX�VzhWVbcwVYe�_zVzXwatka�9liW_zVzndV{cD_b|^�ge�hfk�TWathIn�aÂeg_b_Wegjwa�VbhIV{cDVzeg_bVYXÁaok4cD[ dadjD[I�

SUTWaEklVb�EathIXÁVz[ghfX�pr[^j½cDTWa �IjDXÁc(cwTWjDadaEe�jDjDe¸|lX½e�jDaiIe�jue��EadcwadjuX¼kla �fhWatk�Vzh�iIegjDeg��� T��ºÈ�adhInda³e�h`| �f_ba�ÂTWVYnuT@<wVbhInd_bmfklatX > <DXÁ|lXÁcw��� Ta>��.mIXÁcUTfe¸yga(iWjwaty`V{Ò[gmIXw_z|ËVbhInd_bmfklatk <wiIe�jue���� Ta>W�6�2FG � � { �`TWata�c��o#N|fnd[gh\cDegVbhfX$e1prat�ÎkWa �IhWVbcwVz[ghfX8eghIkE[ghWaklatnd_zegjDe�cwVz[gh��t�ÂTWVYnuT4e�jDa³mIXwatk(pr[gjGjwadpradjDadhIndVbhI�UcwTWaXÁat�g�Eadh\cuevcwVz[gh7jwat�gVYXscDadjuXd�¢SUTWVYX �I_ba�nd[gmW_Yk<Z*a�e�ZlÒXÁ[^jwZ*atk(Vzh\cw[s<Áife�jue���� TO>�eghIku<wXw|lXscD��� Ta>U�ÂVbcwTI[gmlce�h`|ËjDate�_F_z[^XDXt����N�Z� � � { �`TWata�c4�m#2,Í8TIegilcwatj.��|³n�[^h^cue�VzhIX½cwTWaEVz�Eif[^jÁÒcDegh^c<klaon�_Ye�juevcDVb[^h pr[^jz<ÁiWjD[lnA>��ÂTWVYnuT VYXËZ*[�cDTÎeXscDjwmfn¥cwmIjwa�cs|`ifa�eghIk e�h e�jDjue¸|Ï[�pËXÁmInuT XÁcwjDmIn¥ÒcwmWjDatXt�7Ì8egnuT�ad_zad�Eadh\c4[�pUcDTWaz<ÁiWjD[lnA>�XÁcwjDmIn¥cDmWjwaTIegXEe�hIeg��a��ÂTWVYnuT Zfat�gVzhIXË�ÂVbcwT"<Ái >�e�hfk hW[[�cDTWadj.y¸egjwVYe�ZI_ba<VYX�XÁ[�hIe��Eatk����`Vz�EVb_Ye�jEn�[^h\y^adhlÒcwVz[ghIXUegjwa½mIXÁaokËpr[^j�hfe��EVbhI�4cwTIa(at_bat�Eadh\cDX�[�pºcwTWa[�cDTWadj�XÁcwjDmIn¥cDmWjDatXt�

SUTWaEXÁadcDX½[�p$yve�_zmWaoX�pr[^j�cDTWa �IjuXsc½cs�8[�ad_zad�Eadh\cuXd�<Ái XÁcDe�c >�e�hIkI<Ái #fe��4>7TIe¸y^a.VzhIklVzy`VzkWmIe�_³hfe��EatX�ÂTWVYnuT�egjwa�kla��IhWag�

��6�24� � � { �`TWata�c���$ WÍ8Tfe�ilcDadj���|ºnd[gh\cDegVbhIX$cwTIa1kWatn�_Ye�juevÒcwVz[gh�pr[^jÂcwTWa.ygatjw|BVb�Ei*[gjwcDe�h\cE<wmIXwadj >�XÁcwjDmIn�cwmWjDag�iW_zmIXÂeEXÁadc�[�pOkla �IhIatk�yve�_zmWatX�pr[^js<Ám adjDjD[gj >W�!½hW_z|&[ghIa<VbhfXscue�hInda<[�pUcwTIa3<ÁmfXÁatj >�XÁcwjDmIn¥cDmWjwa7VzXady^adjOegntn�atXDXwVbZW_zaÂevc³[^hWa�cwVz��a^�OSUTWVzX³VzX¢jDa�pratjwathIn�aokmWhIklatj³cDTWa�hIeg�EaE<ÁmO>4e�hIk<VzX$VbhËcDTWa(_b[v�ÏegkIkljwaoXwXiIe�jwc�[gp�e�Öt�\�N$}Z`|\cwaBegjwaoe�]`hW[v�Âh egX4cwTWa@<Ái*adjiWjD[`ndatXDXUkWevcue�egjwaoem>I���hE�gadhIadjue�_\cwTWa�nd[g�EiW_za�cDas<ÁTa> �I_zatX³egjwaUhW[gc$e�hIeg_{Ò|lXÁaok.Vzh7kladcDegVb_f_ze�cwadj$VbhEcDTWVzX$cwaA9`ct�¢��c$VYX³a�9li*atn�cwatkcwTIe�c1cwTWaËjDate^kladj1�ÂVz_b_OjDa�pratj1cw[�cwTWat� prjD[g� cDVb�Eacw[&cwVz��azl¨�ÂV{cDT VzhIn�jDate^XÁVzhW�qp¨eg�EVb_zVzegjwVbcs|�e�hIk mWhlÒkladjuXÁcDe�hfklVbhI�4n¥�

3= �' ��� � ��� � & � ��� 0= � � " �� �

SUTWatjwa8e�jDa¢cs�8[ �I_zatXGVzh4egXDXÁat��ZW_z|�_Ye�hW�^mIe��^aO�ÂTWVYnuT4n�[g��ÒiWjDVYXÁaEe�Z*[gmlcËÖo�&*/[�p8cwTWaËXw[gmWjun�a�n�[lkla^�.Ô jDategXw[ghfe�ZW_zae^n � mIe�Vzh\cDeghIn�a(�ÂV{cDT�cwTWaoXÁa �I_zatXUVYXÂhWaon�aoXwXDe�jD|g�

5��F[ �?6 { �`TWata�c��^�W�,Í8TIegilcwatj�×N|$nd[gh\cDegVbhIX1Vzhlpr[^jw�ËevcDVb[^h��VzhInd_bmIkWVbhW��cDTWaEcwjue�i�ygaon¥cD[gjo�Fpr[gj�VzhWVbcwVYe�_zVzXwVbhI�BcDTWa_z[v�ÐegkIkljwaoXwX³iIe�jwc8[gp��EegVbh7��at�E[gjD|g�¢SUTWVzX �I_za�VYX�^adhWatjDe�cwaokÎZ\|Îe�mWcwVz_bVbcs|ÎiWjw[^�gjue�� nde�_z_zatk�<Á�E]\Ònd[ghlp >ÐcD[LXwmWVbc�cDTWa Xwa�c�[�pBifatjwVziWTWatjDeg_�klaty`VzndatXiIjwaoXÁath^c�e�c�e.ife�jwcwVYn�mW_Ye�jUVzhIXscue�_z_ze�cwVz[gh��0P7�Q �?6 { �`TWadadcDX��g�I�b�zÖA$ BÍ8TIe�ilcDadjuX&�I�i(W��×W�<Öo�W�.�^��|nd[gh\cDegVbhfX�eBXwa�c4[gp8jD[gmlcDVbhWaoX1e�iWiWjD[giIjwVYevcDa�cD[BcDTWa

%8Ä`%�ÖgÖ���$^�I��cw[¿nte�jDjw| [^mlc e yve�jDVbadcs|¿[gp�XwifadÒndVzeg_bVYXwatk prmWhfn¥cwVz[ghfX �ÂTWVYnuT nte�hWhW[gc�Z*a¿Vz�EiW_badÒ�Eath^cDatk�klVzjwaon¥cD_b|<Vzh <uÍ >I��`atn�cwVz[ghIX�[�p,cwTWVYX �I_ba.e�jDa(Vzh\cwjD[lklmIn�aok�Vbh\cD[EcwTWa�klVzXÁÒn�mfXwXwVb[^h&egX1eghIkq�ÂTWatjwaEe�iIiWjw[^iWjDVze�cwag�pl SUTWa�_zegjw�^atXÁc½[�pcwTIa�e^XwXwad�.ZW_batj�iWjD[ln�aoklmWjDatXt�d<wZIegnu]`mWiO>}TIegX�Z*adath _za�pÀccw[�cDTWa�jwaoegklatj�cw[<XwmWjwy^ad|<e^XÂe�h�a�9ladjun�VYXÁa^� nSUTWadjDa�VYXÂe�h}e�_bcwatjwhIe�cwVzyga(cw[z<w�Y$^�W� X >��ÂTWVYnuT�VzXÂhI[�ciWjDatXwadh\cwaok�TWatjwa^�³hIe��Eat_b| <w��$`�l� X >q�ÂTWVznuTÑVzX�mIXwatkÑ[gh

%$Äd%�Ö^Ö �N$\�y' X$eghIkq�v�a' Xt�3= � � � � �� � " � ��" � $ � �2" ��� � �

0P/1�k� �?� { �`TWata�cDX Ö¸�l�z�bÖv� ÏÍ8TIe�ilcDadjuXÏ�W����|&n�[^h^cue�VzhIX<w�Ëe�Vzha>��ÂTWVYnuT�i*adjwpr[gjD�ËX�yve�jDVb[^mIX1VzhWV{cDVzeg_bVYXDevcwVz[ghcuegXw]lX(cw[��gadc�x�~���¾?jDmWhWhIVbhW�f�E��c�e�_YXÁ[�n�[^h^cue�VzhIX<DXÁmIjwat�o>(e�hIk}<ÁaoXscue�ZWmIj >(�ÂTWVYnuTËXÁadcOcwTWa�mfXÁatj³XÁat��Ò�Eath^cuevcDVb[^h�jDad�^VzXÁcwatjDXt�

6�5 � � � { �`TWata�cuX4Ö�(I�b� �g� fÍ8TIe�iWcwadjuXÂ�W�F�`�a(I��ÖA$m|ºn�[^h^cue�VzhIXcDTWa �Ëe�4s[gjÑiWjD[`ndatklmIjwaoX jDa � mWVzjwaok pr[gj iWjD[ln�atXDX�ËeghIe��^ad�Eadh\c}Vbhfn�_zmIklVzhW� <ÁhWat�ÂiWjD[`n�>W�u<wXDnuTWaok1>W�<DXÁ_zadatia>Ee�hIk@<wXw�UcDnuTO>W�

��� � �?� { �`TWata�cuX.��#I�¢��$2$Í8TIegilcwatj���|�n�[gh\cue�VzhIXf<Áife�hWVYnA>eghIk7e�h`mW��Z*adjU[�p�[gcwTWatj8iIjw[ln�aoklmWjDatX8�ÂTWVYnuT<iWjD[�Òy`VYklaqe�XwVb�EiW_za}�EatnuTIeghWVzXw� pr[^j<klVYXÁiW_Ye¸|`VbhI��VzhWVbÒcDVzeg_bVYXDevcwVz[gh.�EatXDXweg�gatXGe�hIk�adjDjw[^jº�EatXDXDe��gaoX�cD[�cDTWa[^ifatjDe�cw[^jt�0P/15k5��Z��� � { �`TWata�c4�g� �Í8Tfe�ilcDadj���|On�[gh\cue�VzhIXE<w�Ëe�_z_b[lnA>eghIkP<w��prjwata�>4�ÂTIVznuT7egjwa½mIXwatkËcD[.�ËeghIe��^a��Ead��Ò[^jw|7jwaoXÁ[^mWjDndatXt�3= � $ � �2" ��� � ��`aon¥cwVz[ghqSU��[ËVYX�n�[^hIn�atjwhIatkB�ÂV{cDT}cwjue�iIXt�WTIegjDkW��egjwa1VzhlÒcwatjwjDmWilcuXÂe�hIk�Xw[�pÀcs�Ue�jDa½Vzh\cwadjDjDmWilcDXt�Sºjue�ifXËe�hIk TIegjDkl�Ue�jDa�Vbh\cwatjwjDmWilcuXËVzh^cDjw[lklmfn�aqXwmIk`Òklath<XÁ�ÂVbcDnuTWaoX³Vzh\cw[�cDTWa(Í %$xi' X$hW[gjD�Ëe�_WVzhIXÁcwjDmIn¥cDVb[^hËa�9`ÒatndmlcwVz[ghÑXÁa � mIadhIndag��SUTWVzX.iWjD[vy`VzklaoX�e&��aonuTIe�hIVzXw��pr[gjTIeghIkl_zVbhW��Xwifaon�VYe�_Wnd[ghIklVbcwVz[ghfXO�ÂTWVYnuT.[lndndmWjO[gmWcDXwVzklaUcDTWaÍ %$xi' XUVz�E�EatklVYevcDa4n�[gh\cDjw[^_ �x�Xwa7VYX��Ee^kla7[gpÂcwTWVYX.p¨egndVb_zV{cs|�e^X4iIegjÁc�[�p�e�hI[�cwTIadj�EatnuTIeghWVYXÁ� ndeg_b_zatkEcDTWaE<DXÁ|lXÁcwat�3nte�_z_?>��ÂTIadjDadZ`|�e�mIXwadjiWjD[g�^jDeg�¿�Ëe¸|Ea�9latndmlcwa(eb<scDjDegia>�VzhIXÁcwjDmIn¥cDVb[^hËcw[�nde�mfXÁae(cwjue�iËklat_bVzZ*adjuevcwat_b|�e�hIkËXw[1[gZlcue�VzhEcwTWa�[gi*adjuevcwVzhW��Xw|`XÁÒcwat�u' X�e�cÁcDadh\cwVz[gh�e�hIk�egXDXwVzXÁcDeghIn�a^�

Öt×

Page 28: A Commentary on the Sixth Edition UNIX OS -- Lions

SUTWa�Xw[�pÀcs�Ue�jDa1Vbh\cDadjDjwmWiWcilr[gjE<wXwVb�^hIe�_ >�VzX�eE�EaonuTIevÒhWVYXw�?pr[gjÂn�[^�E��mWhWVYnde�cwVz[ghBZfadcs�8atadh7iIjw[ln�aoXwXwatXt�\iIe�jwcwVYn¥ÒmW_Ye�jD_z|<�ÂTWadhBcwTIadjDa�VzXY<wZIegkBhWad��X >W��N2FG � � { �`TIada�c��g� GÍ8TIegilcwatj�Öo�N|³kla��IhWatX1e�XÁadc�[�p8nd[ghlÒXscue�h\cDX½�ÂTWVYnuT&e�jDa�mfXÁaok}Vbh�jwadpradjDadhIndVbhI�ËcwTWa�iWjDa�Òy`Vb[^mIX,mIXÁatjO�E[`kWa�jDad�^VzXÁcwatj¢y¸eg_bmIatX¢�ÂTWath�cDTWad|�e�jDaXscD[gjDatk7Vbh�cwTIa�]gadjDhWat_�Xscuegnu]¼�����/�� �?� { �`TWata�cuXÑ���I�b� ��(2�Í8TIe�iWcwadjÏÖ¸��|Bnd[gh\cDegVbhfX�cwTWa

<uÍ >�iWjD[ln�atkWmWjwa <Ácwjue�ia>��ÂTWVYnuTÏjDatn�[^�ghWVYXwatXËe�hfkTIe�hfkl_baoX�cwjue�iIXU[gpGyve�jDVz[gmIXU]`VzhIkWXt�6 �Z6�2F��� � � { �`TIada�cO��×2^Í8TIe�ilcDadj8Öo��|`n�[^h^cue�VzhIX¼cDTWa8klaon�_YevÒjDe�cwVz[gh<eghIk<VzhWVbcwVYe�_zVzXDevcDVb[^h<[�p�cDTWa1e�jDjDe¸|t<wXw|`Xwadh\c >�ÂTWVYnuT�VYX1mIXwatk�Z\| <scwjue�iO><cD[�e^XwXw[ln�VYevcDa�cDTWaËe�ilÒiWjD[giWjDVze�cwa1]gatjwhIad_��E[lkla4jD[gmlcDVbhIa��ÂV{cDT}ategnuT}Xw|lXsÒcwat�/ndeg_b_¼cs|`i*ag�6 �Z6�5 � � { �lTWadadcDXz#g�I�b� #m#2&Í8TIe�ilcDadjuX Öo�l�}Ö�#N|7nd[gh\cDegVbhIXyve�jDVb[^mIX³jD[gmlcDVbhIatX�egXDXÁ[ln�VYevcDatkË�ÂVbcwT�XÁ|lXÁcwat�Mnde�_z_YXd�Vbhfn�_zmIklVzhW�r<Áa�9laonA>t<Áa�9lVbc >}<Á�Ue�Vbc >�e�hfk@<Ápr[gjD]y>W�6 �Z6�7 � � { �`TWadadcDX�#�$f�b� #g�2�Í8Tfe�ilcDadjuX³Öo�W�^Ö�#W�`Öt×�|\nd[gh\cDegVbhIXjw[^mlcwVzhWaoXºpr[^jS<ÁmWhI_bVzhW]y>W� <w]\Vz_z_?>(e�hIk.yve�jDVb[^mIX,[�cDTWadj�EVbhW[^j�XÁ|lXÁcwat�:ndeg_b_YXd��o5��Z� � � � { �`TWata�cDX�#\�l��#m(2vÍ8Tfe�ilcDadj³Ö^Ö�|^nd[gh\cDegVbhIXq<Dn�_z[lnu]F>�ÂTWVYnuT7VYX$cDTWa1TIe�hfkl_batj$pr[^jÂn�_z[`nu]ËVzh\cwatjwjDmWilcuXd�le�hfk�ÂTWVYnuTEkW[\aoX³�.mInuTË[�p¼cwTIa�Vbhfn�VYkladh\cDeg_ITW[^mIXwad]gatadilÒVbhI�EeghIkBZIegXwVzn1e^ndn�[^mWh\cwVzhW�I�6���G � � { �`TIada�cuXe#g×I�b� $\� fÍ8TIe�iWcwadj�Ö�#N|ºnd[gh\cDegVbhIX�cDTWa4iWjD[�Òn�aoklmWjDatX.�ÂTWVznuT TIe�hIkW_ba <wXwVb�^hIe�_YX >}[gj}<wXw[�pÀcs�Ue�jDaVbh\cDadjDjwmWiWcDX >BSUTWaoXÁa�iWjD[vy`Vzkla.p¨egndVb_zVbcwVzatX1pr[^j(Vzh\cwatjÁÒiWjD[`ndatXDXUn�[g�E�.mWhWVYndevcDVb[^h�eghIk7cwjuegn�VzhW�f�3= �� $� � �#"���� ��� � �`aon¥cDVb[^h�SUTWjDada�VYX,nd[ghIndadjDhWatk��ÂV{cDT.ZfegXwVzn8VbhIiWmlc �v[gmlcDiWmlc[^ifatjDe�cwVz[ghIXFZ*a�cs��adath�cwTIa$�Ëe�Vzh4�Ead�E[gjD|1e�hIk�klVYXw]1XÁcw[^jÁÒeg�gag�SUTWaoXÁa½[gi*adjuevcwVz[ghfX³e�jDaÂprmWhIkIe��Eadh\cDeg_IcD[�cwTIa½egn�cwVzy`V{ÒcDVbaoXU[�pGiIjw[^�gjue�� XÁ�Ue�iWiIVbhW�Ee�hfk<cDTWa�n�jDatevcDVb[^h7e�hfk7jDa�pÀÒatjwathIn�VzhW�E[�p¢klVzXw] �f_baoXd�SUTWVYX�XÁaon¥cDVb[^h�e�_YXw[7Vzh^cDjw[lklmfn�atX½iWjD[ln�atkWmWjwaoX�pr[^j(cwTWamIXwa³e�hfk½�ËeghWVbiImW_ze�cwVz[gh�[gp^cDTWa³_Ye�jD�gajl �WÖo�8Z`|^cDa�n*ZWm��*atjDXt���2 � � � � { �`TWadadcE$o#2(Í8TIegilcwatjqÖA$m|�kla �IhIatXEcDTWa <scDa�9`c >XscDjwmfn¥cwmIjwaEe�hIk�e�jDjDe¸|^�i!½hWar<scwaA9`c >�XscDjwmIn�cwmWjDa�VzXmIXwatk�cw[�kla �fhWa�cDTWa½XÁcDe�cwmIX8[�pºe�XÁTIegjwaok�cwaA9\cÂXwad��Ò�Eadh\ct���2 � � � � { �`TWadadcDX�$o#W��$m$ �Í8Tfe�ilcDadj³Ö�$�|gn�[^h\cDe�VzhIX¼cDTWa³iWjD[�Òn�aoklmWjDatXB�ÂTWVznuT �EeghIe��^aqcDTWa�XwTIegjwaokÎcwaA9\c}Xwad��Ò�Eadh\cDXt����� � � { �`TWata�cz$\� &Í8TIe�ilcDadjÎÖo�N|<kla �IhIatX�cwTWa�<wZWmlp >XscDjwmfn¥cwmIjwa}e�hfk egjwjue¸|g�$cwTWaqXÁcwjDmIn�cwmWjDa <wklaty\cDe�ZO>e�hIk¿hIe��EaoX�pr[gj�cwTIa yveg_bmWaoX�[�p <ÁZ adjDjD[gj > Ô�_z_cwTWaoXÁa<egjwaEhWatatklaok�pr[gj�cDTWaË�Ëe�hIeg�gat��ath\c4[�p�cwTWa_zegjw�^a�lÉ�lÖ¸�4Z`|\cwa�n�ZWm��¼adjuXd�

�m� ��� � � { �`TIada�c $^� 1Í8TIe�ilcDadj�Öo��|�kWa �IhWaoXËcDTWa&e�jDjue¸|`X[gp�XscDjwmfn¥cwmIjwaoXf<ÁZ¼kladylXw�e>qe�hfk <wndkWadylXÁ�e>��ÂTIVznuTXwi*atn�Vbpr|.cwTWa�klaty`VzndaÂ[gjDVbath^cDatk.iWjD[`ndatklmIjwaoX¢hWadaoklatkcD[<ndegjwjD|Ë[gmlcÂ_z[g�^Vznte�_ �I_za1[gi*adjuevcwVz[ghfXd��m� ��� �?� { �`TIada�ct$^� 7Í8TIegilcwatj Ö¸��|�VYXq�^adhWatjDe�cwatk���_bVz]ga

<w_b[v��� X >�Z\|ÑcwTIa <Á�E]\n�[ghWp >�mlcwVz_zV{cs| cw[ÑXÁmWVbc7cDTWaXwa�cU[�p�i*adjDVziWTWadjue�_¼klaty\VYn�aoX$iIjwaoXÁath^cUevcÂe4iIegjÁcDVzndmlÒ_Ye�j�VzhIXÁcDeg_b_YevcDVb[^h��.��c�nd[gh\cDegVbhfX�cDTWaËVzhWV{cDVzeg_bVYXDevcwVz[ghpr[^jUcwTWa4egjwjue¸|lX*<wZ*klatylXÁ�e>�e�hIk <Dndklaty`Xw�e>4�ÂTIVznuTnd[gh\cwjD[g_¼cDTWa�ZIe^XÁVYn(V �v[.[^ifatjDe�cwVz[ghIXt����� � � { �`TWata�cuX $l�`�z� �m# �Í8TIegilcwatjDX�Öo�W�4Öt�I�4Ö¸��|½VYX7cDTWa_Ye�jD�gaoXsc �f_ba�evpÀcwatjp<Á�Y$\�W� X >E��c½nd[gh\cDegVbhfXÂcwTIa4iWjD[�ÒndatklmIjwaoX�pr[gjÂ�Ëe�hWVziWmW_YevcDVb[^hB[gpºcDTWa1_zegjw�^a½ZWm��*atjDXt�eghIkBpr[gjÂZIe^XÁVYn(ZW_z[`nu]7[gjDVbath^cDatkBV �v[I�� � � � { �`TWadadcDX¢��#I�v��$2^Í8TIegilcwatj8Öo�N|`VzXºcwTIa8klaty\VYn�aUkljDVby^adjpr[^jUcwTWa4Å�ÃEÖgÖ ��Ã��^��klVzXw]7nd[gh\cwjD[g_z_batjt�3= �� $� � �#"���� � � 0 ��`aon¥cwVz[gh*)I[gmWjºVzXGn�[ghfn�adjDhWaok½�ÂVbcwT��I_baoXºeghIk �I_za$XÁ|lXÁcwat�EXt�Ô �I_za�Xw|lXscDad�"VzX(e<Xwa�c�[gp��f_baoX½eghIk}egXDXÁ[lndVze�cwatkBcuevÒZW_zatXÂeghIkBkWVbjDatn�cw[gjDVzatX8[gjD�^e�hIVzXwatk7[gh\cw[EeEXÁVzhW�g_za1XscD[gjue��gaklaty\VYn�a�XwmInuT�egXÂeEklVYXÁ]BiIegnu]¼�SUTWVYX�Xwatn�cwVz[gh n�[vygatjDX4cwTWa��EateghIX.[�p½ndjwaoevcwVzhW��e�hIkegntn�aoXwXwVbhI� �I_zatX�\_z[lnde�cwVzhW���I_zatX�y`VYe�klVzjwaon¥cD[gjDVbaoX$[^jw�\e�hWVYXsÒVzhW�&e�hfk��EegVbh\cue�VzhWVbhI� �I_zaBXw|`XÁcwat�ËXd�}��cEe�_YXÁ[}VzhIn�_zmIklaoXcwTIa4n�[lkla(pr[gj�eghBaA9`[gcwVYn1ZWjDadatkB[�p��I_za4nde�_z_zatk�er<ÁiWVzifa�>W�

� 5�2 � � { �lTWadadcÐ�^�&ÑÍ8TIegilcwatj Ö�(N|}kla��IhWatXÑcDTWa < �I_za�>XÁcwjDmIn�cwmWjDa�e�hIk�e�jDjue¸|g�� 5�6 �Z6 � � { �`TWata�c½�g� fÍ8TIe�iWcwadj��g�N|�kla��IhWatXÂcwTWaf< �I_zXw|lX >XÁcwjDmIn�cwmWjDa8�ÂTIVznuT.VzX¢n�[^iWVzatk�cD[(eghIk�prjw[^��cDTWaY<wXwmlÒi*adj�ZW_b[lnu]y>.[gh <Á�E[gmIh^cDatk1> �I_za4XÁ|lXÁcwat�EXt������ � � { �`TIada�cO����|\klaoXwndjwVzZfaoXFcDTWa8XÁcwjDmIn¥cDmWjDa³[�p�<ÁVzhW[lklaoX >e^XÂjDatn�[^jDkWatkB[gh�cwTWaf<w�E[gmWh\cwaok1>Ëklaty\VYn�aoXd���`Vbhfn�acDTWVYX �I_za�VYX½hW[�cE<wVbhfn�_zmIklatka>ËVbh�e�h`|B[gcwTWatjt�*Vbc½jDa�Òeg_b_z|<aA9`VYXÁcDXUpr[^jÂVbhlpr[^jw�Ëe�cwVz[gh�[ghW_z|g������Z��2 � � { �`TIada�c³���2^Í8TIe�iWcwadj�Ö�(�|`kWa �IhWaoX�cDTWa�<ÁVzhW[lkla�>XÁcwjDmIn�cwmWjDa�eghIk egjwjue¸|g� <wVbhW[lklaoX >�e�jDa7[gp�prmWhIkWe�Ò�Eath^cue�_¢Vz��i*[gjwcDeghIn�a�Vzh��Ëe�hfe��gVzhW�7cwTWaËegntn�aoXwXwatX[gp,iIjw[ln�aoXwXwatX8cD[ �f_baoXd�6 �Z6�, � � { �lTWadadcDX��^�l�b� ��×2�Í8Tfe�ilcDadjuX�Ö�(W�¢Öt×�|Ond[gh\cDegVbhfX½eXwa�c¢[�pWjD[gmWcwVzhWatX,egXDXÁ[lndVze�cwatk1�ÂVbcwT�XÁ|lXÁcwat� nte�_z_zXGVzhlÒnd_bmfklVbhI�z<ÁjDategka>W��<Á�ÂjDVbcwa�>I��<wndjwaoevc >I��<Á[^ifatha>Ee�hIk

<Dn�_z[^Xwa�>6 �Z6�B � � { �lTWadadcDX(�g�W�*�WÖ��Í8Tfe�ilcDadjuX4Öt×I�¼�g�N|¢n�[gh\cue�VzhIX�eXwa�c([�pOjD[gmlcDVbhWaoX�e^XwXw[ln�VYevcwaok��ÂV{cDTqyve�jDVb[^mIXÂ�EVbhI[gjXw|lXscDad�"nde�_z_YXd��N��[Y�N� �?� { �`TWata�cuX$�^�W�g�m#2`Í8TIegilcwatj�Ö�(�|fn�[^h\cDe�VzhIX¢Vzh\cwadjwÒ�EaoklVze�cwa<_zady^ad_³jD[gmWcwVzhWatX�Vbh`yg[^_by^atk��ÂV{cDT�jwaoegklVzhW�eghIk��ÂjwVbcwVzhW� �I_zatXt�

�g�

Page 29: A Commentary on the Sixth Edition UNIX OS -- Lions

6����� � � { �lTWadadcDX��m$I�º�\�&³Í8TIe�iWcwadj7Ö�(N|$nd[gh\cDegVbhfX1��[^jwaVbh\cDadjD��aoklVYevcwa�_batygad_,jD[gmlcDVbhWaoX�pr[^j½V �¸[f�faoXÁi*atndVzeg_b_z|<ÁZW�Ëegia><�ÂTWVYnuT�cwjue�hIXw_ze�cwaoX½_z[g�^Vznte�_��I_za�i*[gVzh\cwatjDXVbh\cD[�iIT\|lXwVznte�_�klVYXw]7egkWkWjwaoXwXwatXt�

� � �?� { �`TWata�cuX8�^�W�z� �2`Í8TIegilcwatjDX�Ö�(W�fÖt×�|*n�[^h\cDe�VzhIXOVzh\cwatjÁÒ�EatklVYevcDaÂ_batygad_ljD[gmWcwVzhWatX,pr[^j �I_zaÂ[gi*adhWVzhW�I�\n�_z[^XwVbhI�e�hIk�n�[^h\cwjD[g_¼[�pOegntn�atXDXt�/15k5��Z��� � { �lTWadadcDX��g×W�z� ���&lÍ8TIe�iWcwadjÂ����|*nd[gh\cDegVbhIX8iWjD[ln�a�ÒklmWjDatX��ÂTWVznuT&�EeghIe��^a�cwTIa.e�_z_z[`ntevcDVb[^h}[�p³adh\cDjwVzatXVbh1cDTWai<wVbhI[`kWa�>�egjwjue¸|½eghIk1[�pWZW_z[lnu]lX�[�pWklVYXw]1XÁcw[^jÁÒe��^ag��kGO24� �?� { �`TWata�cuX��g�l�z� �N$2BÍ8TIegilcwatjDXÑÖ�(I�<Öt×I������|�nd[ghlÒcDegVbhIXEiIjw[ln�aoklmWjDatXËnd[ghIndadjDhWatkÑ�ÂV{cDTÏjwadpradjDadhIndVbhI�e�hIkBmWi¼kWevcDVbhI�z<ÁVzhW[lklatX >W���/10P� � � { �`TWata�cuX��g�l���v�21Í8TIegilcwatj&Öt×�|(nd[gh\cDegVbhIXËcwTWaiWjD[`ndatklmIjwap<whIe��EatV?>��ÂTWVznuT�XÁaoe�junuTWatX³cwTWa �I_za(kWV{Òjwaon¥cD[gjDVbaoXd���� � 2 �?� { �`TWadadcDXË�g�l�³��( 8Í8TIegilcwatjE�WÖ�|�VzX4cwTWa@<wklaty\VYn�akljDVby^adj >7pr[^jb<ÁiIVbi*atX >��ÂTWVYnuT�e�jDa<e}XÁi*atndVzeg_³pr[gjD�[�pFXÁTI[gjwcOkWVzXw]��I_za�mIXwatk.cD[1cwjue�hIXw�EV{c³Vzhlpr[gjD�ËevcDVb[^hprjw[^�M[ghIa(iIjw[ln�aoXwX8cD[<e�hW[gcwTWatjt�3= ��8� $� � �#"���� � " �� �`aon¥cDVb[^h )GVzyga&VzX<cwTWa �fhIe�_(XÁaon¥cwVz[ghº�L��c�VzX7n�[ghfn�adjDhWaok�ÂVbcwT�VzhWiWmlc��¸[^mlcwiWmWc�pr[gjFcDTWa$Xw_b[v��adjo�tnuTfe�juegn¥cDadj¼[gjDVzadh\cwaoki*adjDVbiITWadjue�_�klaty`VzndatXt��`mInuTEklaty\VYn�aoX¢XÁTIegjwaUe(n�[g�E�E[gh.ZWm��¼adjOi*[`[g_É���ÂTWVYnuTVYXU�Ëe�hWVziWmW_YevcDatk�Z`|7eËXÁadcÂ[�pOXscue�hIkWegjDk7iWjD[`ndatklmIjwaoXd�SUTWa<Xwa�c4[gp�nuTIegjDe^n¥cwatj1ifatjwVziWTWatjDeg_¢kWady`VzndatX4egjwa�a�9`Òat��iI_bV �Iatk�Z`|ËcDTWa1pr[g_z_b[v�ÂVzhW� �

��� � ���e� � Vzh\cwadjuegn�cwVzyga½cwatjw�EVzhIe�_LiJE�O� iIegifatjUcDegifa�jDate^kladj��¸iWmIhInuT� LY� � _zVbhIa�iWjwVzh\cwatj

��� � � � { �`TWata�c$�v× ^Í8Tfe�ilcDadjuX,�m#W���N$m|`kla��IhWaoX�cDTWa�<Dn�_zVzXÁc >XscDjwmfn¥cwmIjwa3l¨mIXwatkÐe^XBe�_zVYXsc�TWate^kÎpr[gj�nuTIe�juegn�cwatjZWm��¼adj � mWatmWatX n¥�vcDTWaY<scwcs|F>(XÁcwjDmIn¥cDmWjwaMl¨XÁcw[^jwaoX,jwat_{Òadyve�h\cEkWevcueqpr[^j�nd[gh\cwjD[g_z_bVzhW�&egh VzhIklVzy`Vzklmfe�_�cwatjÁÒ�EVbhIeg_ n��,kWatn�_Ye�jDatX(cDTWaP<wiIe�jwcDegZa>BcDe�ZI_ba l¨mIXwatk�cw[n�[^h^cDjw[^_,cwjue�hIXw�EVzXDXÁVz[gh�[�pUVzhIklVzy\VYklmIeg_8nuTIegjDe^n¥cDadjuXcw[.cwatjw�EVzhIe�_YX n8e�hfkBkla��IhWaoX8hfe��EatX8pr[gjÂ�Ëegh\|<e^XsÒXÁ[lndVze�cwatkBiIegjDeg��adcwatjDXt��Z5 � � { �`TIada�c (^� \Í8Tfe�ilcDadjuX¢��$I�g�^��|WVYX,cwTWaÂklaty\VYn�aÂkljDVzygadjpr[gj¢cDadjD��VzhIeg_zXOnd[ghWhWaon¥cDatk�y`Vze�Ã�Æ$ÖgÖ�[gj³Ä(ƳÖgÖÂVzhlÒcwatjÁp¨e^n�atXt���� � � � { �`TWadadcDXM(WÖ^�b� (^� FÍ8Tfe�ilcDadjuX½��#I�¼��$I�F�g�N|¢nd[gh\cDegVbhIXn�[^���E[^h�iWjD[ln�atkWmWjwaoXº�ÂTIVznuTEe�jDa8VzhIklatifathIklath^c³[gpcwTWa�e�cÁcuegnuTWVzhW��Vzh^cDadjwp¨egndatXt�vpr[gj$nd[gh\cwjD[g_z_zVbhW�(cDjDeghIXsÒ�EVzXDXÁVz[ghBcw[E[^jUprjw[^�?cwatjw�EVzhIe�_YXd�WeghIk��ÂTWVYnuT7cue�]gaVbh\cD[Ee^ndnd[gmWh\cÂyve�jDVb[^mIX8cwadjD�EVbhfe�_FVYklVb[\XÁ|`hIndjDe^XÁVzatXt�

� ��� � { �`TIada�cuX`(^�W� (\�&¼Í8TIegilcwatj1�^��|ºVYX�cDTWa.kWady`Vznda�TIeghlÒkW_batjËpr[gjËcDTWa %UͽÖgÖ�iIe�i*adj<cDe�i*a}jDategkWadj��¸iWmWhfnuTnd[gh\cwjD[g_z_zadjo�5 � � � { �`TWadadcDXe(o(W�a(^× *Í8Tfe�ilcDadj½�^��|ºVYXUcwTIa�klady`VYn�a�TIeghlÒkW_batjÂpr[gjUcDTWa4Æ�%�ÖgÖ(_bVzhWa1iWjDVbh\cwatj�n�[^h^cDjw[^_b_zadjo�0P2F0 �?� { �`TIada�c4×^�N|On�[gh\cue�VzhIX�iIjw[ln�aoklmWjDatX��ÂTWVznuT�iWjD[�Òy`VYklaÂegntn�atXDXºcw[1�Ëe�Vzh��Ead�E[gjD|4egXGcDTW[gmW�^T�VbcO�8atjwaegh�[gjuklVzhIe�jD| �I_zag�,SUTWVYXGnd[`kWa³TIegXºZfatadh4_za�pÀcGcw[ÂcDTWajDate^kladj�cD[<XÁmWjDygat|<egXÂeghBaA9`atjDndVzXwag�

�lÖ

Page 30: A Commentary on the Sixth Edition UNIX OS -- Lions

�E��� ������� � �u�

�������� ��� ������������������������������������! �" �#$��"&%'�(�)" �)*+���� ��, " �(�-���$%.�����/���0�����1#'" �2" ���� �3��� '� , " �(�(4

5 �6��" �07����8���������6�2�'3��1#)�)*9)� , " �:�;������:�)*<����%.=6� ����������>�)�?���)� �� ��" � ����� ��1����%A@�*B&���(���C�����$�� ����8�)���:4

D E ��� � � ���e

SUTWVYX(nuTIe�ilcDadj(VzX(Vzh\cwadhfklatkqcw[7iIjw[vy`VYkla�e<�^adh\cw_za�Vbh\cwjD[�Òklmfn¥cwVz[gh�cD[1cwTWa�Xw[gmWjun�aÂnd[`kWa�Z`|._b[`[g]`VzhW��evc¢cs��[ �I_baoX¢Vbh�`aon¥cDVb[^h}!½hWa4�ÂTWVYnuT&nte�h}Z*a�VYXÁ[^_ze�cwatk�jDate^XÁ[^hIe�ZI_b|B�8at_b_prjD[g�?cDTWa�jDatXÁct�SUTWa$kWVzXDn�mIXDXwVb[^h([gp`cwTWaoXÁa �f_baoXºXwmWiWiW_zad�Eadh\cuXFcwTIa$klVYXsÒndmIXwXwVz[ghË[�p,Í8Tfe�ilcDadjUSUTWjwata�e�hfkËVbhfn�_zmIklatX�e4h`mW�.Zfatj8[gpe^kWklVbcwVz[ghIeg_¢nd[g�E�Eadh\cDX(jDad�\e�juklVbhI�ËcwTWaËXw|`h^cueN9&eghIk&Xwa�Ò�Ëe�h\cDVzntXU[�p,cwTWaf<¥Í >�_Ye�hW�^mIe��^ag��< �� ��� � " � � � � � � � 9SUTWVYX �I_za<VYX1pr[gmIhIk�[gh��`TWata�c��^��[�p�cwTWa��`[gmWjun�a<nd[lklag�eghIkBnd[ghIXwVYXscuXU[�p�4smIXscÂcs��[EiWjD[`ndatklmIjwaoX��

8�>���0�� �7������( � �+���=�= �7�����0:'�SUTWaoXÁa e�jDa n�[^hIn�atjwhWaok �ÂVbcwT cDTWa eg_b_z[lnde�cwVz[gh e�hfkXwmWZIXwa � mWath^cÎjDad_zategXwa [gpqcs��[¿]`VbhfkWXÎ[�p&�Eat��[^jw| jDa�ÒXw[gmWjun�aoXd�`hIeg�Ead_z| �

0P/a��� 0P2F0P�a� � Vzh�mIhWV{cuXÂ[�p�#^����[gjukWXSl¨�m$.Z`|\cwaoX n%����6 �36�[i/�� /y�N2F/ VbhEmWhWVbcDX³[�p��g���½��[gjukWXjl �WÖo�½Z`|^cDatX n¥�

)W[^j aoegnuT [�p�cwTWaoXÁa cs�8[?]`VzhIkWXÐ[gp�jDatXw[gmIjDndag��e_zVzXÁc}[�pEe¸y¸egVb_Ye�ZI_ba�e�jDate^X7VYX��Ëe�Vzh^cue�VzhWatk��ÂVbcwTWVzh e jDa�ÒXw[gmWjun�a <Á�Ëe�ia> lradVbcwTIadj <wn�[^jwat�Ëe�ia>�[^j3<wXw�Ue�iW�Ëe�iO>on¥�Ô i*[gVzh\cwatjÂcw[EcDTWa�e�iIiWjw[^iWjDVze�cwa1jwaoXÁ[^mWjun�a+<Á�Ëe�ia>EVYX�eg_{Ò�Ue¸|lX�iIegXDXwatk�cw[I<Á�Ëe�_z_z[`n�>}e�hIk�<Á��prjwata�>qXw[}cDTIevc.cwTWajD[gmlcDVbhIatX½cwTWat�ËXÁat_by^atX1kl[�hW[�c1TIe¸y^a�cD[B]`hW[v� cDTWaE]`VbhIk[gpGjDatXw[gmWjun�a(�ÂV{cDT��ÂTWVznuT�cDTWad|�e�jDa(klaoe�_zVbhI�I�Ì$e^nuTÐ[�pt<wn�[^jwat�Ëe�ia>�eghIk <DXÁ�Ue�iI�Eegia>�VYX�e�h�egjÁÒjue¸|7[gp$XscDjwmIn�cwmWjDatX�[�pOcDTWa�cs|`i*a <w�Eegia>ËegX(klaon�_Ye�jDatk}evc_zVbhIa��g�WÖo�W��SUTWVYX½XÁcwjDmIn¥cDmWjDa�n�[^hIXÁVYXÁcDX�[gpOcs�8[�nuTIe�juegn�cwatji*[gVzh\cwadjuXUVÉ� a^�¢cs�8[EmWhIXwVz�ghWaok7Vzh\cwad�^adjuXd�SUTWa�klaon�_Ye�juevcwVz[ghfX8[gp<wnd[gjDad�Ëe�iO>�e�hfk3<DXÁ�Ue�iW�Ëegia>egjwa�[gh _zVzhWatX}�\���m#I���^�g��$f� È�adjDa&cDTWa <Á�Ëe�iO> XÁcwjDmIn¥ÒcDmWjwa½VzX8n�[^��iI_badcwad_z|EVb�^hW[gjDatk ��e�jwat�gjDa�cwcDe�ZI_baÂiWjD[g�^jDeg��Ò�EVzhW�&XwTW[gjwcÁÒ�n�mlc4�ÂTIVznuT�VYX4i*[^XDXÁVzZW_za<Z*atndegmIXwa<V{c�VzX�hW[�ckladcwaon¥cwaok�Z`|&cDTWa7_z[^e^kladjo��SUT\mfX�cwTIaBegn�cwmIeg_$h`mW�.ZfatjDX[gp�_zVzXÁc�at_bat��ath\cDX�Vzh <wn�[^jwat�Ëe�ia>�e�hIkW<DXÁ�Ue�iW�Ëegia>�e�jDa<¥Í�ÇqÔ%��`� ���m>�eghIk <D�lÇqÔ`%8�`� ����>�jwaoXÁi*atn�cwVzygat_b|^��< )( � 0�� � � �8� � " � � :; �" ���� �= ��� � /�� Ì$egnuT�e¸yvegVb_Ye�ZW_za7egjwaoe}VzX�kla��IhWatk�Z\|�VbcDXEXwV( taBe�hfkjwat_ze�cwVzyga�e^kWkljDatXDXlrjDatnu]^[ghWaok�VbhËcDTWa(mWhWVbcDX�e�iWiWjD[�ÒiWjDVze�cwa(cw[�cwTIa�jwaoXÁ[^mWjDnda�n%

� � SUTWa�ad_zad�Eadh\cDX�[gp�ate^nuT _zVzXÁcEegjwa�e�jDjDeghW�gaok�evc<e�_z_cDVb�EaoX�Vbh�[^jDklatj1[�p8VzhIndjwaoegXwVbhW��jDad_YevcwVzygaEegkIkljwaoXwXt�Í�egjwa½VzX$cDeg]gathËcwTIe�c�hI[4cs��[�_zVzXÁc�at_bat�Eadh\cDX�jDadiWjDa�ÒXwadh\cOn�[^h^cDVb�^mW[gmfXºe�jDate^X �(cwTWaUe�_bcwatjwhIe�cwVzyga$nd[gmWjuXwag�cD[��EadjD�ga,cwTIa³cs��[UegjwaoegX¼Vzh\cw[�eÂXwVbhI�g_zaO_zegjw�^adj�e�jDateVYX�eg_b�Ue¸|lX³cue�]gath � � � SUTWa}�ÂTW[g_za�_bVYXÁc7nde�h Z*aqXwnte�hWhWaok Z`|Ñ_b[`[g]`VzhW��evcXwmIntn�atXDXwVby^a8at_bat��ath\cDX¢[�p*cwTIaUegjwjue¸|g�vXÁcDegjÁcDVbhW�1�ÂVbcwTcDTWa �IjuXsco�FmWh\cwVz_¢egh&at_bat��ath\c(�ÂVbcwT�e tadjD[BXwV( ta�VYXathIn�[^mWh\cwatjwaokF�,SUTIVzXO_YegXÁcOad_zad�Eadh\c³VYX³e+<wXwadh\cwVzhWat_?>�ÂTIVznuT�VYXUhW[�c�iIegjÁcÂ[gpGcDTWa�_bVYXÁcUiIjw[^ifatjt�SUTWa&egZf[vy^a}jwmW_zatX<iWjw[vy`VYklaqe�n�[^�EiW_badcwa&Xwi*atn�V �fntevÒcwVz[gh�pr[gjr<Á��prjDada�>I�Oe�hIkÑe&Xwifaon�V �fnde�cwVz[gh�pr[^j}<w�Ëe�_z_b[lnA>�ÂTWVYnuT&VYX�n�[^��iI_badcwa�a�9Wn�atilc�Vbh�[ghWaEjDatXwifaon¥c �½��aEhWatatkcw[�Xwi*atn�Vbpr| TI[v�:cDTWa}jwaoXÁ[^mWjun�a}e�_z_b[lntevcwVz[gh VYX<egn�cwmIeg_b_z|�Ëegkla1�ÂTWath�cwTWatjwa1a�9lVYXscuXÂ�E[gjDa(cwTIeghB[^hWa���e¸|Ë[gp,i*adjwÒpr[gjD�EVbhI��Vbct�SUTWa4�Ea�cDTW[lkqegkW[gilcDatk�Vzh <Á�Ëe�_z_b[ln�>EVzX�[ghWa4]`hW[v�ÂhegX�< ),VzjDXÁc ),Vbc >�pr[gj�jwaoegXw[ghIX$�ÂTWVYnuTBXwTW[gmW_YkËZ*atnd[g�Ea½[^ZlÒy`Vb[^mIXt�Ô�XBe�hÏVz_b_zmIXÁcwjuevcwVz[ghÏ[gp�TW[v�:cDTWa&jDatXw[gmIjDnda <w�Ëe�ia>VYX8�ËegVbh\cDegVbhIatkF�lXwmWiWi*[^Xwa�cwTIa�pr[^_b_z[v�ÂVbhI�4cwTIjwata½jDatXw[gmWjun�ae�jDate^X��8atjwa1e¸yve�Vz_zegZW_ba � egh�e�jDate�[�pIXwV( ta�Öo��Zfat�gVzhWhWVzhW�½e�cG_z[lndevcDVb[^h*$`�Âe�hIkathIklVzhW�<evcÂ_z[lndevcDVb[^h��IÖ� egh<e�jDate([�pFXwV( ta4Ö�#�XwiIe�hIhWVbhI�4egkWkljDatXDXwatX³�^��cD[*#g×VzhInd_bmIXwVzyga� egh}e�jDate.[�p,XwV� da��.Zfat�gVzhWhWVzhW�Ëevc�_z[lndevcDVb[^h��\�l�

SUTWath7cDTWaf<Á�Ëe�iO>.��[gmI_zk�n�[^h^cue�Vzh ��d���A� � x��GFm2 TE������2F6�6� Ö�# �\�Ö Ö¸� $l�� � �\�

# � % %$ % % % %

��p8eBjwa � mIatXÁc�pr[gj1e�XÁiIe^n�a.[�p8XwV( taE�Ë�8atjwa.jwaon�adVzygaokF�cwTIa½e�jDate1��[gmI_zkËZ*a½eg_b_z[lnde�cwatkËXÁcDegjÁcDVbhI��evc�_b[lnde�cwVz[gh7�\�`�e�hfk<cDTWaf<Á�Ëe�iO>.��[gmI_zkBZfaon�[^��a ��d���A� � x��GFm2 TE������2F6�6� � #m$Ö Ö¸� $l�� � �\�

# � % %$ % % % %

��p¼cwTWa�egjwaoe½XwiIe�hIhWVbhI�4egkWkljDatXDXwatX�$^�½cw[S$\�(VbhInd_bmfXÁVzygaVYX�jwadcwmWjDhWaok&cD[}cwTIa7e¸yve�Vz_zegZW_baE_zVzXÁct�GcwTIaP<Á�Ëe�iO>��8[^mW_zkZ*atn�[^�Ea ��^�

Page 31: A Commentary on the Sixth Edition UNIX OS -- Lions

�d���A� � x��GFo2 T �����N246�6� �m( #�$Ö � �^�� � % %# % % % %

~�[gcwaÎTW[v� cDTWaÎh`mW��Z*adj�[�p�ad_zad�Eadh\cuX�TfegX�egn�cwmlÒeg_b_z|Óklaon�jDate^XÁaokÓZ`|3[ghWaÏZ*atnte�mIXwaÐ[gp�eg�Eeg_b�\e��ËevcDVb[^hcDTW[gmW�^T�cwTWa4cw[�cue�_,e¸y¸egVb_Ye�ZI_ba1jDatXw[gmWjun�aoXUTIe¸yga�[gpOnd[gmWjuXwaVzhIn�jDate^XÁaokF�Æ�adc8mIX$hW[v�ÑcwmWjDhEcw[�e�nd[ghIXwVYkladjuevcDVb[^h�[gp¼cwTWa�e^n¥cDmIe�_Xw[gmWjun�a1n�[lkla^��< ), � � � ����� ( �8(����SUTWa(Z*[`kW|Ë[�p�cDTWVzXUiIjw[ln�aoklmWjDa½nd[ghIXwVzXÁcDX8[�p,eb<spr[^j >�_b[`[^icD[EXwategjDnuT7cwTWaf<w�Ëe�ia>Ee�jDjue¸|�mIh^cDVb_ºadVbcwTWatj �� /�� cwTWa.adhIk}[gp¢cwTWa._bVYXsc([�p$e¸yve�Vz_Ye�ZW_za�jwaoXÁ[^mWjun�atXUVYX½adhlÒn�[^mWh\cwadjDatk \[^j� �� e�h<egjwaoe1_zegjw�^a�adhI[gmW�^TEcw[�TI[ghW[^mWjOcwTIa½n�mIjwjDadh\c$jDa�Ò

� mWatXÁcÂVzXUpr[^mWhIk�, gaBO7@� SUTWa�<spr[^j >�XÁcDe�cwat��ath\cGVzhWV{cDVzeg_bVYXwatXd<ÁZWiO>Âcw[½if[^Vbh\ccw[BcwTWa �IjuXÁc1at_bat�Eadh\c�[�p$cDTWaEjwaoXÁ[^mWjun�a��Ëegi��.Ô�cate^nuT.XwmIndndadatkWVbhW�1VbcwatjDe�cwVz[gh <wZWia>(VYX¢VbhIndjwat�Eadh\cwaokcw[Ei*[gVzh^cÂcD[�cwTWa�hWaA9`cp<Á�Ëe�ia>EXÁcwjDmIn¥cDmWjDag�~�[gcwa1cDTIevcÂcDTWa4n�[^h^cDVbh`mIe�cwVz[gh�n�[^hIklVbcwVz[gh

<wZWilÒ��Â� XwV( ta�>�VYX$eghËa�9liWjDatXDXÁVz[ghº���ÂTWVYnuT<Zfaon�[^��aoX tadjD[�ÂVbcwT cDTWaÑXwadh\cDVbhWat_�VYX&jDa�pratjwathIn�aokF� SUTWVYXqaA9`iIjwaoXwXwVb[^hnd[gmW_Yk:Tfe¸yga Zfatadh"�ÂjwVbcÁcDadh a � mWVzyve�_zadh\cw_z|MZWmWcÐ��[^jwacDjDeghIXÁife�jDadh\cw_z|<egXY<wZWilÒ��Â� XwV( ta ���o>W�~�[gcwa(e�_YXÁ[(cwTfevc8hI[�a�9liW_zVzndV{c8cwatXÁc³pr[^j³cwTIa�adhIkE[gp¼cwTWaegjwjue¸|<VYX��ËegkWag�il¨��c(ndegh}Zfa�XÁTI[v�Âh�cwTIe�c�cwTIVzX½_ze�cÁcDadj(VzXhW[gc�hWatndatXDXwegjw|�iWjD[vy\VYklaok�Í�ÇqÔ`%8�`� ,���lÇ&Ô%8�l� ��Ó� .~%8Åe!�Í * n, gaB�g-� ��pFcwTIa�_zVzXÁc8at_bat��ath\c�kla��IhWatX�e�h<egjwaoe�evc�_baoegXÁc8egX_zegjw�^a(e^X�cwTIe�cÂjwa � mIatXÁcwatk��lcwTWath��b�z�, gaB v(� ÅÂat��at��Z*adjËcDTWa&e^kWkljDatXDXË[�p(cwTWa �IjDXÁc<mWhWVbcB[gpcwTWa�egjwaoe , gaB ~ � ��hIndjwat��ath\c<cwTWa�egkWkWjwaoXwXBXscD[gjDatkÎVzhÏcwTWa�e�jDjDe¸|ad_zad�Eadh\c,, gaB \(� Ľatn�jDad�Eath^cFcDTWa$XwV( ta$XÁcw[gjDatk½Vzh1cwTWa³at_bat�Eadh\cGe�hfkn�[^��ife�jDa.cDTWaËjDatXwmW_{c.�ÂV{cDT dadjD[zlrVÉ� a^�B�UegX1Vbc.egha�9Wegn�c �Wc %�n�, gaB �(� ��hqcDTWaEndegXwa�[gp8e�h&a�9Wegn�c �Wco�F�E[vyga.eg_b_GcwTIa.jDa�Ò�Ëe�VzhWVbhI��_bVYXÁc,at_bat��ath\cDX lrmWi�cw[½eghIk�VzhIn�_zmIklVzhW��cwTWaXÁath\cwVzhWad_ n�kl[v�ÂhB[^hWa�iW_Yegndag�

~�[gcwaUcwTfevci<�lrZWilÒ�_ n >�i*[gVzh\cDX¢cD[�cwTWa½XscDjwmIn�cwmWjDaÂZ*a�Òpr[gjDa�cDTWa�[ghIa�jwadpradjDadhIndatk<Z`|@<ÁZWia>2

, g17 ,%� SUTWa <w�ÂTWVz_ba�>Mn�[^h^cDVbh`mIe�cwVz[gh nd[ghIklVbcwVz[gh kl[`atX���O� cwaoXsc$cwTWa½a � mIe�_zVbcs|.[gpq<�lrZWiWÒÉ_ n�Ò��Â� XÁV� da�>�e�hIkZI�.Ò��Â� XÁV� da *SUTIa�y¸eg_bmIa½cDatXÁcwaokBVYXUcDTWa�yve�_zmWa�egXDXÁVz�ghWaok<cD[<�lrZWiWÒ �Â� XwV( ta�>�n�[giIVbaok7prjD[g� <ÁZWilÒ��Â� XÁV� da�>W�l ³[gm�egjwa.pr[gjD�gVzygath&pr[^j�hW[�c4jDatnd[g�ghIVzXwVbhI�7cDTWVzX�evc[^hIn�a^� n%

, g17�B-� ÅÂa�cDmWjDhBcDTWa�e^kWkljDatXDXÂ[�p,cwTWa.e�jDateW��SUTWVYX�jDadiWjDa�ÒXwadh\cuX,cwTWaÂathIk�[�pIcDTWaÂiWjD[ln�atkWmWjwaÂeghIk�TIadhInda�y^adjD|kWa �IhWVbcwat_b|7cwTWa�athIk�[�p,cwTWaf<Ápr[gj >�_z[`[gi��~�[�cDa�cwTfevcÂe4yve�_zmWa�[gp datjw[4jDa�cDmWjDhWatkE�EateghIX�<ÁhW[_zmInu]y>�SUTWVzXEVYXEZIe^XÁaok�[ghÑcwTIa�e^XwXwmW�EilcDVb[^h�cwTfevchI[�yveg_bVYk�e�jDate�nde�h�ady^adjÂZ*ad�^Vbh�evcÂ_z[`ntevcDVb[^h tadjD[I�

�< 43 � � � �� ( � � '��SUTWVYX<iWjD[ln�aoklmWjDa}jwadcwmWjDhIXEcDTWa&e�jDate�[gp4XÁV� da <DXÁV� da�>�evcegkIkljwaoXwXE<we^em>�cw[7cwTWa}<ÁjDatXw[gmIjDnda(�Ëegia>7klaoXÁVz�ghfevcwaok}Z`|<Á�Eia>I�,SUTIa½Z*[lkl|<[�pºcwTWa(iWjD[`ndatklmIjwa(n�[ghfXÁVYXscuX$[gpGe.[ghWa_zVbhWa <Ápr[gj >�XÁcDe�cwat��ath\ct��pr[g_z_b[v��atkÑZ`|Ñe��.mW_{cDVb_zVzhWa <ÁVbp >XÁcDevcDad�Eadh\co�, gavO7(� SUTWa.Xwad�EVYn�[^_b[^h&evc(cwTWa�adhfkq[�pOcDTWVYX½_zVzhWa.VYX(a�9`ÒcDjwat�Ead_z|.XwVb�^hWV �*nde�h\co��cwatjw�EVzhIevcDVbhI�4egX¢Vbc8kl[`atX¢cDTWaat�Eilcs| XÁcDevcDad�Eadh\co� lr��cË��[gmW_Yk egVzkÑ_bat�gVzZWVz_bVbcs|�V{pcDTWVYX,nuTfe�juegn¥cDadjF��adjDa³�E[vygaok(cw[½e�_bVzhWa8[gh4VbcDXG[v�Âh��e^XUVzX�kl[ghWa1[^hB_zVbhIa���#g×m$I� n

Ľadi*adhfklVbhI��[^hq|g[^mWj(if[^Vbh\c1[�p³y`Vbat���¼cwTWVYX1XscuevcDa�Ò�Eath^c}klat��[^hIXÁcwjuevcwaoX7atV{cDTWadjBcwTIa�i*[v��adj7[^j7cDTWa[^ZIXDn�mWjDV{cs|�[gp�cwTIa <¥Í >&_Ye�hI�gmIeg�gag�ÑSºjD|��ÂjwVbcwVzhW�a � mWVbyveg_bath^c4nd[`kWa.cD[�cwTWVYX�XscuevcDad�Eadh\c�Vbh�e�hI[�cwTIadj_Ye�hI�gmIeg�ga1XÁmInuT�egXj%Oe^Xwnte�_¼[gje%8Æ �lÖg��`cwadi=<ÁZWiO>qcDTWjw[^mW�gT�cwTWa�_bVYXÁc�mWh\cDVb_Âe�h ad_zad�Eadh\cVYXUadhfn�[gmIh^cDadjDatkBadVbcwTWatjÂ�ÂV{cDT�egh�e^kWkljDatXDX��gjDatevcDadjcDTIe�h�cDTWa4egkWkWjwaoXwX�[�p,cwTIa4e�jDate.ZfatVbhW�ËjDa�cDmWjDhWatkF�VÉ� ag�OhW[gcp<ÁZWilÒ��Â� egkWklj��Lem>[^jÂ�ÂTWVYnuTBVzhIklVYnde�cwatXÂcwTWa�athIk�[�pºcDTWa�_zVzXÁcVÉ� ag�OhW[gcp<ÁZWilÒ��Â� XÁV� da * � �m>2

, gav�g%� ��a�TIe¸ygaÂhW[v� _z[`ntevcDatk�cwTIa�ad_zad�Eadh\c$VzhËprjD[gh\c³[�p�ÂTIVznuT��8aEXÁTI[gmW_YkqVzhIXwadjwc(cDTWa�hWad�Ó_bVYXsc1ad_zad�Eath^co�SUTIa � mWaoXscDVb[^h&VYX����ÏVz_z_¢cwTWa�_bVYXÁc(�^jw[v� _Ye�jD�gatj�Z`|[^hWa&at_bat�Eadh\cB[^j7�ÂVz_b_1e��Ëe�_z�^eg�ËevcwVz[ghÎ]^adadiÎcDTWah`mW�.Zfatj1[�p³ad_zad�Eath^cuX½cwTWaEXweg�Ea�[gj(ady^adhqjDatkWmIn�aVbc�Z`|7[^hWa %��pY<ÁZIi �Ó�Eia>��8a<egjwa�hW[gc�cwjD|\VzhW��cw[}VzhIXwadjwc4evccDTWa�Z*ad�gVzhWhWVzhW�Ë[gpºcwTIa�_bVYXsco�O��pl¨ZWilÒ�_ n�Ò �Â� e^kWklj ��lrZWilÒ�_ n�Ò��Â� XwV( ta � �(ecDTWadhEcDTWa½egjwaoe(ZfatVbhW��jwadcwmWjDhËe�ZWmlcuX¢cwTIa�iWjDady`Vb[^mIXat_bat�Eadh\c�Vbh�cDTWa�_bVYXÁc�

, gav v-� ��hIn�jDate^XÁaUcDTWa�XwV( ta�[�p¼cDTWa�iWjDady`Vz[gmIX³_bVYXsc8ad_zad�Eadh\cZ`|7cwTWa4XwV( ta1[�pºcDTWa4e�jDate.Z*adVzhW�ËjwadcwmWjDhWaok���#

Page 32: A Commentary on the Sixth Edition UNIX OS -- Lions

, gav ~ � Ľ[\aoX�cDTWaEe�jDateËZ*adVzhW�7jDa�cDmWjDhWatkqeg_zXw[BegZWmlc½cwTWahWa�9`cÂad_zad�Eath^c�[gpGcDTWa�_zVzXÁc %���pOXw[, gav \(� Ô�kIk�cwTWaEXwV( ta4[�pOcDTWa.hIa�9`c½at_bat��ath\c½[�pOcDTWa�_zVYXsccw[�cwTIa4XÁV� da1[�p,cwTIa�iWjwaty`Vb[^mIX�ad_zad�Eadh\c�, gav �(� Ç}[vy^a4e�_z_�cwTIa�jDad�Ëe�VzhWVzhW�Ë_bVYXÁc½ad_zad�Eath^cuXil¨mWi}cw[cwTWaB[ghWa�n�[^h^cue�VzhWVzhW�}cwTIa �IhIeg_ tadjD[&XwV( ta�n4kW[v�Âh[ghWa1iW_Yegndag�

~�[gcwa½cwTIe�c�Vbp�cwTIa½cDatXÁc�[^h7_zVbhIa1�^���\�(pr[gjwcwmWVbcw[^mIXÁ_z|�gVzygaoX$e1cDjwmWa(jDatXwmW_{c��ÂTWadh3<ÁZWilÒ��Â� XÁV� da�>�VzX tadjD[hW[ETIe�jD�MVYXÂkl[ghIa�, g ~ v(� SUTWVYXÂXscuevcDad�Eadh\cÂVzXUjDate^nuTWatk7V{p,cwTIa1cwatXÁcÂ[gh�_bVzhWa�g�g�^�$p¨e�Vz_baok1V � ag�ºcwTWa�e�jDate�Z*adVzhW��jDa�cwmIjwhWaok�ndeghWhW[�cZfa�e��Ëe�_z�^eg�Ëevcwaok(�ÂV{cDT�cwTWa8iWjDady`Vb[^mIX�at_bat�Eadh\cG[^hcwTWa1_zVzXÁct�

Í�e�hLV{c�Zfa�eg�Eeg_b�\e��ËevcDatk��ÂV{cDTLcwTWa�hIa�9`cqad_za�Ò�Eadh\c %Ñ~�[gcwa4cDTWa.nuTIatnu]BcwTIe�c�cwTIa�hWaA9\c(ad_zad�Eadh\cVzXUhI[�c�h`mW_z_1, g ~ �(� %³jD[vy`VzkWatk cDTWa egjwaoeÐZ*adVzhW�LjwadcwmWjDhWatk¿VzX��^adhlÒmWVzhWad_z|4hW[^hlÒÉh`mW_z_Zlri*adjDTIegiIX,cwTWVYX,cwaoXsc$XwTW[^mW_zk.TIe¸y^aZfatadhÎ�ËegklaqXw[`[ghWatj %�n"egkIk e�hWat� ad_zad�Eadh\cËcw[cwTWaË_zVYXsc4e�hfk�iImIXÁT�eg_b_¢cDTWaËjwat�Ëe�VzhWVbhI��at_bat�Eadh\cDXmWi�[ghWa�iW_Yegndag��< �� � � � ����� ��0�� "���� SUTWaÂnd[`kWaUpr[gj,cwTWaoXÁaUcs��[1iWjD[`ndatklmIjwaoXGTfegX¢Z*adadh��ÂjDV{cwcwadhy^adjD|�cwVz�gT\cD_b|^�GSUTWatjwaOVYX�_zV{cwcw_zag�vVbpWe�h`|g� <sp¨e�c >Â�ÂTWVYnuT4n�[^mW_YkZ*a$jDad�E[vygaok½cw[�Vz�EiWjD[vygaOjDmWh�cwVz�Ea$a �ËndVbathIn�|^�,È�[v�8atygatjVbc���[gmW_Yk�Zfa4i*[^XDXwVbZW_za1cw[7�ÂjwVbcwa1cDTWatXwa4iWjD[ln�atkWmWjwaoXUVbhqe�E[gjDa(cwjue�hIXwiIegjwath^c�p¨egXwTWVz[gh����p�|^[gm pradat_(XÁcwjD[ghW�^_b| [ghÎcDTWVYX7i*[gVzh\ct�ÂcDTWadh e^X7eghaA9`atjDndVzXwag�Â|^[gm XwTW[^mW_zkÐjwat�ÂjwVbcwa <w��prjwata�>�cD[ �Ëe�]^aqVbcDXprmWhfn¥cwVz[gh��E[gjDa1ate^XÁVz_b|BklVzXDn�atjwhIVbZW_zag�~�[gcwaEe�_YXÁ[<cwTIe�c�cwTIa.n�[^jwjDatn�c�prmWhIn�cwVz[ghWVzhW�B[�pi<w�Eeg_{Ò_z[lnA>�e�hIkW<w�.prjDada�>BkWadi*adhIkWX4[gh�n�[^jwjDatn�c(VzhWVbcwVYe�_zVzXDevcDVb[^h[gpe<wn�[^jwat�Ëe�ia>1e�hfkz<wXw��egiW�Ëe�ia>I�GSUTWa(n�[lkla�cw[.kW[�cwTWVYX[lndndmWjuXOVbh<cwTWa�iIjw[ln�aoklmWjDas<Á�Ëe�Vzha>�e�c$_bVzhWaoX�Öo�g�m(I�WÖo�m(m#W��< �' ��� � " � � � � � 9SUTWVYX �f_ba�VYXOpr[^mWhIkE[^hË�lTWadadcDX8�m#�e�hIk<��$I�\e�hIkËnd[gh\cDegVbhIXcDTWa1pr[g_z_b[v�ÂVzhW��iWjD[`ndatklmIjwaoX��

#>� ���>N + �7��L����'� # � �8� � �7���-,Q:'�#>� ���>N0� �7��L0: � � #>�>��=��&�7����L0L'�# �>N � 4 ���&�7�0L�(�:'� �>=��>=������� �7������F �

SUTWa�nte�_z_bVzhW�Îjwat_ze�cwVz[ghIXwTWVzi�Z*a�cs��adath cDTWatXwa�iWjD[ln�a�ÒklmIjwaoXUVzXÂVz_z_bmIXÁcwjuevcDatkBZfat_b[v� �

# � �%� � �>=���=�������� �� #>���>=��� �

� �

#>� �Q�>N +�

#>� �Q�>N0��

# ��N � 4 ����< � � � " ��� � � (8, 3 �SUTWaUiWjD[ln�atkWmWjwa�<ÁiIjwVzh\cÁp >(iWjD[vy`VzklaoXGe1klVzjDatn¥co��mWhIXw[giITWVzXÁÒcwVYnde�cwaok�_b[v�UÒ�_batygat_ �WmIh\ZIm��*atjwaok}�Ue¸|<pr[gj�cwTWa�[gi*adjuevcwVzhW�Xw|`XÁcwat� cw[EXÁathIk<�EaoXwXDe��^atXOcD[�cDTWa�XÁ|lXÁcwat�Mn�[ghfXÁ[^_ba�cwadjwÒ�EVbhfe�_É�,��cUVYX8mfXÁaok<klmWjDVbhI�.VzhWVbcwVYe�_zVzXDevcDVb[^h7e�hIkËcw[�jwatif[^jÁcTIegjDkl�Ue�jDaOadjDjD[gjuX�[gjºcwTWa�Vz���EVzhWadh\cOn�[^_b_Ye�iIXwa$[gplcwTWaUXw|`XÁÒcwat���

l¨SUTWaoXÁa7ygadjuXwVb[^hIX�[�ps<wiWjwVzh\cÁp >&e�hIk <wiWmlcDnuTfe�j >BjDmWhVzh�]^adjDhWad_l�E[lkla�eghIkEe�jDaÂXÁVz�EVb_Ye�j¢cD[I�gZImlc$hW[gcOcwTWa�XDe��EaegXt�,cwTWaBygatjDXwVb[^hIX�Vzh`yg[g]^atk�Z`|�e <uÍ >qiWjw[^�gjue�� �ÂTIVznuTjDmWhIX½Vbh�mIXÁatj½�E[lkla^�(SUTWa�_YevcÁcDadj(ygatjDXwVb[^hIX�[gpi<ÁiIjwVzh\cÁp >e�hfk <wiWmlcDnuTfe�j >Ó_zVzyga Vbh"cDTWa _bVzZWjue�jD| < �v_bVzZ �v_bVzZ*ng� eo>W� ³[gmL�Ëe¸|ÐXscDVb_z_ �Ihfk�Vbc}mIXwa�prmW_�cD[ÎjwaoegkÏcDTWa�Xwatn¥cDVb[^hIX< %8ÅÂ�s~�Sj)ql¨�Á�Á� n >�eghIku< %8x�S�Í�È�Ô½Å*lr�w�Á� n >�[gp\cDTWa8x`%$ÇevcUcDTWVzX�if[^Vbh\ct� n,OBa7�Q-� SUTWaÎiWjD[g�gjue��E�Eadj���mfXsc�TIe¸y^aÑZ*adath?nde�jDjDVbaoke¸�Ue¸|��ÂTWadh<TIa(klaon�_Ye�jDatkËeg_b_fcwTWa(iIegjDeg��adcwatjDX³pr[gjcDTWVYXËiWjD[`ndatklmIjwa^� ��h p¨egn�c�cDTWa}iWjD[ln�atkWmWjwa�Z*[`kW|[^hW_z|7n�[^h^cue�VzhIXUjDa�pradjDadhfn�atX�cD[r< 9l_?>EeghIk3<Ápr�4c >W�SUTWVYX�XwadjDygaoX<cD[ÑjDady^ateg_½[^hWa&[gp4cwTWa�p¨e^n¥cDX�[gp <uÍ >iWjD[g�^jDeg���EVzhW�I�ESUTWaËjDmW_zatX(pr[gj��Ee�cDnuTWVzhW��iIegjDeg��adcwatjDXVzhÑiWjD[ln�aoklmWjDa�nte�_z_zXEe�hfk�iWjD[ln�atkWmWjwa�klaon�_Ye�juevcwVz[ghfX.egjwahW[gc8adhWpr[gjun�atk��^hW[gc8atygadhË�ÂVbcwTBjwaoXÁi*atn�c$cD[�cwTWa(h`mW��Z*adjuX[�p,iIe�jue��EadcwadjuXt�%Oe�jue��Ea�cDadjuX�e�jDa4iW_Yegndatk&[gh}cDTWa�XÁcDe^nu]BVzh �N24XO24�N6�2[gjuklatjt�ESUT`mIX1�ÂTWadh <wiWjwVzh\cÁp >�VYX4ndeg_b_zatkI<spr��c >��ÂVz_b_³Z*ahWaoe�jDadj�cw[�cwTIaf<scw[^iB[gp¢XÁcDe^nu]y>4cDTIe�h < 9l_ >W�`a�cun��

� � �303�3�3�3�303�3�3� � �303�3�3�3�303�3�3� � � � N � � � ,���#3�� �>#3 �303�3�3�3�303�3�3� � �303�3�3�3�303�3�3� ��� �303�3�3�3�303�3�3� � � �303�3�3�3�303�3�3� + N �303�3�3�3�303�3�3� � � N J# 0+<� N � � �303�3�3�3�303�3�3

��$

Page 33: A Commentary on the Sixth Edition UNIX OS -- Lions

< 9l_ >�TIe^XGe½TWVz�gTWatj,e^kWkljDatXDXFcDTWadht<spr�4c >�ZImlc¢e�_b[v��adje^kWkljDatXDXOcwTIadhP< 9W�m>W�^Zfaonde�mfXÁa(Xscuegnu]lX³�^jw[v�Îkl[v�Âh`��egjDkIX[^h7cDTWa*%$Äd%�Ö^Ög�,OBa7���� <spr��c >Â�Ëe¸|½Zfa³Vzh\cwatjwiWjDa�cDatk�e^X�e�n�[^hIXÁcDe�h\cºnuTIegjÁÒegn�cwadj�i*[gVzh\cwadjo� SUTWVzX}kWatn�_Ye�juevcDVb[^h VYXzl¨eg_b�E[^XÁc na � mWVzyve�_zadh\cUcw[

<wnuTIegj ¸pr�4c, >SUTWa1klV �¼adjDadhfn�a(VzX8cwTfevcÂTWadjDa½cwTWa(yve�_zmWa1[�p<Ápr�4c >ndeghWhW[�cÂZ*a4nuTIe�hI�gatk

,OBa7�v(� <we^kF91>�VYX¢XÁadc,cD[½i*[gVzh\c¢cw[u< 9l_ >W�ºSUTWaUaA9`iIjwaoXwXwVb[^h<��d9l_ >.VYXUcDTWa�egkIkljwaoXwXU[gpS< 9l_?>I�$~�[gcwa�cDTIevc(XÁVzhIn�a< 9l_ >UVzX,e�XÁcDegnu](_z[`ntevcDVb[^h��ocwTWVYXºaA9liWjwaoXwXwVz[gh�ndeghWhW[�cZfa�atyve�_zmIevcDatk�evc�n�[^��iIVb_za1cwVz�Eag�l¨Çqegh`|�[�p�cDTWa�a�9liWjDatXDXÁVz[ghIX.|g[^m��ÂVz_b_ �Ihfk at_zXwa�Ò�ÂTWadjDa�Vzh`yg[^_by`VzhW�ËcwTIa�e^kWkljDatXDXÁaoX�[�p³yvegjwVYe�ZW_zatX�[gje�jDjDe¸|lXOegjwa�a��*aon¥cDVby^a�ZfaondegmIXÁa�cwTWat| �m/1� Z*a�adyveg_{ÒmIevcDatk�evc�nd[g�EiWVz_ba1[gjÂ_z[^e^k<cDVb�Ea^� n%

,OBa7�\(� Ì�9`cDjDe^n¥cºVzh\cw[½cwTWa�jwat�gVYXscDadj`<wnA>½XÁmfndn�aoXwXwVzyga$nuTIegjÁÒegn�cwadjuX8prjw[^�?cwTIa1pr[gjD�Ee�c�XscDjwVzhW�2,OBa7 �(� ��pM<wnA>�VYXUhW[�c�e _ *E'lcwTWath��b�z�,OB gOQ(� ��p <DnA>�VYX¢e�h`mW_z_lnuTIe�juegn�cwadj l _ � �1' n¥�¸cwTIVzX,VzhIklVYndevcDatXcwTWa�adhIkÐ[�p�cwTIaqpr[gjD�ËevcBXÁcwjDVzhW��VzhÏcwTWa�hW[^jw�Ëe�_��e¸|^�le�hIk@<ÁiWjDVzh^cwp >�cwatjw�EVzhIevcDatX�,OB gZ��� !�cwTIadjD�ÂVzXwaËnde�_z_*<wiWmlcDnuTfe�j ><cD[qXÁathIk�cwTWa<nuTIegjÁÒegn�cwadj�cD[EcwTWa4Xw|lXscDad�:nd[ghIXw[g_za(cwadjD�EVbhfe�_ ,OB gOB(� ÔW_ *p'\nuTIe�juegn�cwatj,TfegXOZ*adathEXwadath��O�(a�c³cDTWaÂhWa�9`cnuTIe�juegn�cwatjdl¨V{c�TIe^k�ZfadcÁcwatj�hW[gcUZ*a1cwTIaY_ � �1'�* n%,OB ga7@� ��p�cDTWVYX�nuTfe�juegn¥cDadjBVzX}e _ k 'Â[^j}_ _ 'U[gjt_ [O'b�1ndeg_b_

<ÁiWjDVzh^cDha>.iIegXDXÁVzhW�EegX�iIegjDeg��adcwatjDX8cwTIa(yveg_bmWa1jDa�pÀÒadjDadhIndatk7Z\|3<wegky9y>�e�hfk7atV{cDTWadjUcDTWa�yve�_zmWau< (m>�[gj<dÖo�m>Ekladi*adhfklVbhI�B[^h}�ÂTWa�cDTWadj+<wn�>EVzXi_ [O'f[^j�hW[gct�l¨SUTWa�_ k 'IeghIkt_ _ 'In�[lklaoXÂe�jDa(nd_baoe�jD_b|7a � mWVzy¸eg_bath\ct� n<ÁiWjDVzh^cDha>�a�9liWjDatXDXÁaoX�cDTWa}ZWVzhIe�jD|�h`mW��Z*adjuXËegXËeXÁadc�[�p$kWVb�^V{c1nuTIe�juegn�cwadjuX�e^ndn�[^jDkWVbhW�EcD[<cDTWa�juegklV 9XÁmIiWiW_zVbaokBe^X�cwTWa4Xwatnd[ghIkBiIe�jue��Eadcwadj,

,OB gOv(� ��p�cDTWa�atklVbcwVzhW��nuTIegjDe^n¥cwatj.VYX+_ XA'z�³cDTWadhÎe�_z_ÂZWmlccwTWa�_ze^Xsc½nuTfe�juegn¥cDadjÂ[gp$eËh`mW_b_ºcwatjw�EVzhIevcDatk}XÁcwjDVbhW�VzX�cw[�Zfa�XÁath\c.cD[qcwTIa<cwatjw�EVzhIe�_É�W<wegky9y>&XÁTW[^mW_Ykif[^Vbh\cUcw[<eEnuTIegjDe^n¥cDadj�if[^Vbh\cwatj�VzhBcDTWVYXÂndegXwa�,OBOv���� ��hIndjwat��ath\c <we^kF91>ËcD[7i*[gVzh^c(cw[BcwTIa.hWaA9`c(��[gjukVbhEcDTWa½XÁcDe^nu]�VÉ� a^�,cw[�cDTWa�hWaA9\c�iIe�jue��EadcwadjOifegXDXÁaokcw[r<ÁiIjwVzh\cÁp >2,OBOv�,-� �([EZIegnu]EcD[E_bVzhWa4��#m$`��eghIk�n�[gh\cDVbh`mWa1Xwnte�hWhIVbhW�cwTWa1pr[^jw�Ëe�c�XscDjwVzhW�I�U̳h\cDT\mfXÁVYegXÁcDX�pr[^j�XscDjwmfn¥cwmIjwaokiWjD[g�gjue��E�EVzhW���ÂVb_z_¼iWjDa�pradj8cw[�jDadiW_Yegnda�_zVbhWaoX��m#�$l�e�hIk4cwTWVYXOZ`|f<Á�ÂTIVb_zaSlsÖ�n'��>½eghIk <�>�jwaoXÁi*atn�cwVzygad_z|�

�< � � � " ��� � � (8, '����SUTWVYX<iWjD[ln�aoklmWjDaqnde�_z_YXËV{cuXÁat_{p�jDatndmWjDXwVzygad_z| VzhÏ[gjuklatjEcw[�gathWadjuevcDa�cDTWa<jDa � mWVzjwaok&klVz�gVbcDX4Vbh�cwTIa<jwa � mWVbjDatk�[gjuklatjt���cE��Vz�gT\cEZfa�i*[^XDXÁVzZW_za7cD[�nd[lkla7cDTWVYXEiWjw[lndatklmWjDa7�E[^jwaa�<ndVbath^cD_b| ZWmlc7hW[gcË��[^jwa}nd[g�EiW_za�cwat_b|^��l¨Ô�h\|`�Ue¸|g�8Vbhy`Vbat�Î[�pFcwTIa�Vz��iI_bat��ath\cDevcDVb[^h<[�pe<wiWmlcunuTIe�j >W��a �<n�VzadhInd|VYXUTIe�jukl_z|7eEn�[ghfXÁVYkladjuevcDVb[^h7TWatjwa^� n�`mWiWi*[^Xwa�h � Ô ¸Z ���Ñ�ÂTWadjDa½Ô � _zklVzy lrh�� ZOn$e�hIk�ÂTWatjwa�� �Ó_zjwat�flrh�� ZOn�XDevcDVzX �IaoX�� ��� ���¸�(SUTWadh&Vbh[gjuklatj$cD[�klVYXwiW_ze¸|EcDTWa1yve�_zmWa�pr[^jUh��l�8a(hWatatk7cw[EklVzXwiW_Ye¸|cwTIa�y¸eg_bmIa½pr[^j�ÔLpr[g_z_b[v��atkBZ`|ËcwTIa�y¸eg_bmIa½pr[^j��(�SUTWa1_ze�cÁcDadjÂVYXUategXw|Epr[gjUZ � (.[gj1Öt���¢V{c�n�[^hIXwVzXÁcDX�[�peËXwVbhW�^_ba.nuTIe�juegn�cwadjo�8SUTIa4pr[gjD�Eadj�VYX�aoegXw|7Vbp$Ô �Ó�W�U��cVYX�e�_YXÁ[�ate^XÁ|&V{pY<ÁiWjDVzh^cDha>�VzX�nde�_z_zatk�jwaon�mWjuXÁVzygat_b|^�<�`Vbhfn�aÔ � h��`cDTWa4nuTIegVbhB[�pGjDatndmWjuXÁVzyga1ndeg_b_YX���mIXÁcUcwadjD�EVbhfevcwa^�,OB ~ g%� Ô�jDV{cDTW�Ea�cDVznÎyve�_zmWaoX�n�[gjDjDatXwif[^hIklVzhW� cD[ klVb�^V{cuXegjwaÓn�[gh`y^adhWVzadh\cw_z|/nd[gh`ygatjÁcDatk/cw[:cwTWatVbjLn�[^jwjDa�ÒXwi*[ghIklVzhW��nuTIegjDe^n¥cwatjºjDadiWjDatXwadh\cuevcwVz[ghfXºZ`|1cwTIaUe^k`ÒkWV{cDVb[^h�[gpGcDTWa4nuTIegjDe^n¥cwatj_ �1'z�SUTWa&iIjw[ln�aoklmWjDatX3<Á_YklVbyy>�eghIk <w_bjDad�s>�cDjwaoevc<cDTWadVzj

�IjuXscÂiIegjDeg�Ea�cwatj�egXÂeghBmWhfXÁVz�ghWaok�Vbh\cwat�gatjMl¨V � ag�$hW[<XÁVz�gha�9`cDadhIXwVb[^h��(�ÂTWadh e Öo� ZWV{c}yve�_zmWa�VYX�a�9`cwathIklatk cw[Ïe#^�BZWVbc�yve�_zmWaËZ*a�pr[^jwaEcDTWa7egn�cwmIeg_$klVzy`VzXwVb[^h�[gi*adjuevcwVz[gh n¥�SUTWat| �Ëe¸| Z*aqpr[^mWhIkÎZ*ad�gVzhWhWVzhW��[^hÏ_bVzhWatX&Ö�#^×^��e�hIkÖA$\�g��jwaoXÁi*atn�cwVzygad_z|g��< � � 0 � � � � � (8,�� ' �SUTWVYX³iWjD[ln�aoklmWjDaUcwjue�hIXw�EV{cuXOcw[4cwTWa�Xw|lXscDad� n�[^hIXÁ[^_baUcDTWanuTIegjDe^n¥cwatj8�ÂTIVznuT��UegX�iIegXDXwatk�egXÂe�iIe�jue��Eadcwadjo���c$Vz_b_zmIXÁcwjuevcwaoXOVzh<e�XÁ�Ëe�_z_W�Ue¸|�cwTIa�ZIegXwVYn$praoevcDmWjwaoXO[�pV �¸[�[gi*adjuevcwVz[ghfXU[ghBcwTWa*%8Ä`%�ÖgÖ1n�[g�EiWmWcwadjo�,OB����'� <D�`� >�VYXËkla �IhIatkÑ[gh _bVzhWa}�WÖo�g�&e^X.cwTWa�yve�_zmWa

<D�WÖv�g���\�v�o>W��SUTIVzX7VzX7cwTWa�]gatjwhWat_½e^kWkljDatXDXË[�p�ejDate^k}[ghI_b|}iWjD[ln�aoXwXw[gj�jDad�^VzXÁcwatj½�ÂTIVznuT&XÁcw[^jwaoX�cDTWaXwa�cwcwVzhW�Ë[�pGcwTWa4nd[ghIXw[g_za�XÁ�ÂVbcDnuT�jDad�gVYXÁcwadjo�SUTIa$�EateghWVbhI��[�plcDTWa8XÁcDe�cwad�Eath^c,VzXGn�_zategj �F�^a�cºcDTWand[gh\cwath\cDX4e�c4_b[lnde�cwVz[gh��WÖv�g�g�^�v�Be�hIk�XwadaËVbpUcwTWat|egjwa datjw[f��SUTWa�iWjD[gZW_zad� VYX.cw[�a�9liWjDatXDX4cDTWVYXEVbh<¥Í >W�WSUTWa4nd[lklaVbpjl �`� � � �4n��[gmI_zk(hW[gcºTIe¸ygaOnd[gh`ygat|gatk�cwTWVYX��Eaoe�hWVzhW�I�¢Í8_baoe�jD_b|<u�`� > VYXÑe if[^Vbh\cwatj yve�_zmWaÐ�ÂTIVznuT:XwTW[^mW_zk Z*akWadjDa�pradjDadhfn�atk��(SUTWa�n�[^��iIVb_zadj(�EVb�^T^c1TIe¸y^a4ZfatadhnuTfe�hW�^atk7cw[Ëegntn�adiWcVbpjl �`�ÎÒ�� � � �onZImlcBegX<V{cBXÁcDeghIkWXt�UcwTWVYXËVYX7Xw|`h^cuegn�cwVYnde�_z_z|�Vbhfn�[gjwÒjDatn�ct�E��|qVbh`y^adh\cwVzhW��e�kWmW�E��|&XÁcwjDmIn¥cDmWjDag���ÂVbcwTegh at_bat��ath\c}<wVbh\cwat�o>@l¨Xwada�_bVzhWa��WÖ¸�g�mn��¢cwTWa�iWjD[�Ò�^jDeg�E��atjÂTIegX�pr[^mWhIk�eËXDevcwVYXÁp¨egn¥cD[gjD|<XÁ[^_bmWcwVz[ghBcw[TIVzXÂiIjw[^ZW_bat���

�g�

Page 34: A Commentary on the Sixth Edition UNIX OS -- Lions

�`atygadjue�_I[�cwTIadj³aA9leg�EiW_baoXO[�p¼cDTWVzX$iWjD[g�gjue��E�EVzhW��kla�Òy`VYn�a1�ÂVb_z_�Z*a1pr[gmWhfkBVzh�cwTWVYXÂiWjD[ln�aoklmWjDa(eghIk�ad_YXÁat�ÂTWadjDag���hÐTIegjDkW��egjwaBcwatjw�ËXt�UcwTWa&Xw|lXscDad� n�[^hIXÁ[^_ba�cDadjD�EV{ÒhIeg_ÂVbh\cDadjwp¨egn�a}nd[ghIXwVzXÁcDXE[gp½pr[^mWj}Öt��ZWVbc7n�[^h\cwjD[g_Ujwat�gVYXsÒcDadjuX��ÂTWVYnuT egjwa<�^Vby^adh�nd[ghIXwatndmlcwVzyga7e^kWkljDatXDXÁaoX�[gh�cwTWax�hWVbZImIX�Zfat�gVzhWhWVzhW� e�cB]^adjDhWad_1egkWkWjwaoXwXB�WÖ¸�^���g�g� l¨XwadacDTWa<klatnd_zegjDe�cwVz[gh&pr[gjb<DÃ�Æ�>B[gh�_bVzhWa<�WÖo�^�W� n@)W[^j4e}kla�ÒXDn�jDVbiWcwVz[gh4[gplcwTWa$pr[gjD�Ee�cDX,e�hIk4mIXweg�ga³[gplcwTWaoXÁa8jwat�gVYXscDadjuXd�Xwada�Í8TIe�ilcDadjUSU�8ath\cs|^Ò )W[^mWj$[gp�cwTIa < %$Äd%�ÖgÖe%¢atjwVziWTWatjÁÒeg_zXÂȽe�hIklZ*[`[g]y>W���h7Xw[�pÀcs�Ue�jDa�cwadjD�ËXd�^cwTIVzX$Vbh\cwatjÁp¨e^n�a�VYXOcDTWa�mWhIhIe��EatkXÁcwjDmIn¥cDmWjDa��ÂTIVznuT�VYX4kla �fhWatk�Z*ad�^VbhWhIVbhW��[^h�_zVzhWa7��#IÖ�#W��ÂVbcwT.pr[gmWj,ad_zad�Eath^cuX,�ÂTWVznuT.hIe��Ea8cwTWa8pr[gmIj¢nd[gh\cwjD[g_\jDad��ÒVYXscDadjuXd����c½kl[`aoXÂhW[�c½�Ee�cÁcDadjÂcDTIevc½cwTWa�XÁcwjDmIn�cwmWjDa�VzX�mWhlÒhIeg�Eatk�Z*atndegmIXwaËV{c�VYX�hW[gc�hWaon�atXDXDe�jD|}cw[&eg_b_z[lnde�cwaËe�h`|VzhIXÁcDe�hfn�atX¢[gpfVbcelÀcwTIaÂ[ghWaU��aUegjwa�Vzh^cDadjDatXÁcwaok�Vzh.VYX¢atXDXwadhlÒcDVzeg_b_z|<iWjDatkla��IhWaokF�IevcUcDTWa4egkWkWjwaoXwXU�^Vby^adh�Z\|3<wÃ�Æ�>4n¥�,OB�� B(� �ÏTWVz_ba�ZWVbc8�U[�pIcwTWa8cwjue�hIXw�EV{cwcwatj,XÁcDe�cwmIX,jDad�gVYXÁcwadj

l�<w¾(�lSj>4n1VzX�[ �¢�O]gatadi�kl[^VbhW�&hW[�cDTWVbhI�I�¢ZfaondegmIXÁacwTWa�Vzh^cDadjwp¨egnda7VYX.hI[�cEjwaoegkl|�cw[�egntn�atilc�eghW[�cDTWadjnuTIe�juegn�cwatjt�SUTWVYX�VzXEe&nd_ze^XwXwVYn7nde^XÁaB[�pE<wZWmIXw|���egV{cDVbhW�4>q�ÂTWatjwacDTWaEiWjw[lndatXDXÁ[^j½VYX1e�_z_b[v��atk�cD[}n�|ln�_za.mfXÁat_baoXwXw_b|�cDTWjD[gmW�^TeqXwa�c.[�pÂVbhfXscDjwmIn�cwVz[ghIX�mWh\cwVz_8Xw[g�Ea<aA9\cDadjDhIe�_z_z|�kla��IhWatkatygadh\c�[lntn�mWjuXd���`mfnuT}��e^XscDa4[�pOiWjD[ln�atXDXwVbhW�Ëi*[v��adj�nte�hlÒhW[gc,hI[gjD�Eeg_b_z|(Zfa8cw[^_batjDe�cwatk4ZWmlc¢cwTWVYX,iWjD[`ndatklmIjwa³VYX,[ghW_z|mIXwatk�VzhBmIh\mfXÁmIeg_ºXwV{cDmIevcDVb[^hIXd�

,OB���g-� SUTWa4hIadatk}pr[gj�cDTWVYX�XÁcDevcDad�Eadh\c�VYX�cwVzatk�mWiq�ÂVbcwTcwTWa�XÁcDe�cwad�Eath^c�[^hB_zVzhWa��N$\�^�&,OB�� ~ � �le¸y^aÂcwTWa(n�mWjDjDadh\c8n�[^h\cwadh\cuX³[�pFcDTWa�cDjDeghIXw��VbcÁcDadjXscuevcDmIXUjwat�gVYXscDadj,,OB�� \(� Í8_zate�j¼cDTWaOcDjDeghIXÁ�EVbcÁcDadjºXÁcDe�cwmIXFjDad�^VzXÁcwatjFiWjDadiIegjDe�Òcw[^jw|EcD[<XÁathIklVzhW��cwTWa�hWaA9`c�nuTIe�juegn�cwadj �,OB�� �(� �ÏVbcwTqZWVbc��E[�pOcwTIa.n�[^h\cwjD[g_ºXÁcDe�cwmIX�jwat�gVYXscDadj�jDa�ÒXÁadct�¼�E[vyga�cwTWa�hWa�9`c�nuTIe�juegn�cwatj�cw[�Z*a�cDjDeghIXÁ�EVbcÁÒcwaok cD[�cwTWa�cDjDeghIXÁ�EVbcÁcDadjËZWm��¼adj7jwat�gVYXscDadjo�ÎSUTIVzXVbhIV{cDVze�cwatX�cDTWa�hWaA9\c�[^mlcwiImlc�[gi*adjuevcDVb[^h ,a7 Q Q(� Ô <ÁhWat� _bVzhWa�>BnuTIegjDe^n¥cDadj(hWadaokWX½cw[�ZfaËegntn�[^�.ÒiIe�hIVbaok�Z`|�e <wndegjwjDVYe��ga�jDa�cwmIjwha>�nuTIegjDe^n¥cDadj4e�hfkcwTWVYX}VYXqegntn�[^��iI_bVYXÁTIatkLZ`|�eÎjDatn�mIjDXwVby^a�nde�_z_4[^h

<ÁiWmWcDnuTIegj >I�ÔQn�[gmIiW_ba [gp�a�9`cDjDe <wkWad_za�cwa�> nuTIe�juegn�cwadjuX e�jDacwTWjD[v�ÂhEVbh<eg_zXw[(cw[�eg_b_z[v�Ñpr[gj$egh\|�klad_Ye¸|lXOVzh<n�[g��ÒiW_za�cwVzhW��cwTIaqnde�jDjDVzeg�ga7jDa�cDmWjDhÑ[^ifatjDe�cwVz[ghÑe�cEcwTWacwatjw�EVzhIe�_

,a7 Q�g-� SUTWVYX}ndeg_b_�[^h <wiWmlcDnuTfe�j > �ÂVbcwT e�h e�jD�gmI��ath\c[�p datjw[Ëa��*aon¥cDVby^ad_z|BjDatXwmW_bcDX�Vzh&eEjDa�Ò�a�9latndmlcwVz[gh}[gp_bVzhWaoX���#g×IÖ�cD[<��#g×m$I�lr��c�VzX�ygadjD|&Tfe�juk�cw[�Xwada7�ÂT\|�cwTIa7iWjD[g�^jDeg���EatjnuTW[^Xwa8cw[1mIXwaUe(jDatndmWjDXwVzygaUnde�_z_lTWatjwaUVzh.iWjDa�pratjwathIn�acw[�XwVb�EiW_z|4jDadi*atevcDVbhI�(_zVzhWatX³�m#g×m#½e�hIkE��#^×�$f��XÁVzhIn�a

Z*[�cDT�n�[lklaEa�<n�Vzadhfn�|qe�hfk�nd[g�EiIegn�cwhWaoXwX(hW[gc1cw[�Eath^cDVb[^h}n�_Ye�jDV{cs|<Xwadat�Mcw[ETIe¸y^a�XÁm��¼adjDatk�� n%,a7 Q v-� ÅÂatXÁcw[^jwa½cwTIa4n�[gh\cDadh\cDXU[gpGcDTWa1cwjue�hIXw�EV{cwcwatj�XscuevÒcDmIXGjwat�gVYXscDadjo����h4iIegjÁcDVzndmW_zegj�VbpWZWV{c¢���UegX¼pr[^jw�Eatjw_z|Xwa�cÂcD[EadhIegZW_ba�Vzh\cwatjwjDmWilcuX�cwTWathBcDTWVYXÂjwaoXÁadcDX�Vbct��< �� � � " � � (�3 ����SUTWVYXOiWjD[ln�atkWmWjwaUVYX³ndeg_b_zatk.prjD[g�3e1h\mI��Z*adj³[gp*_z[lndevcDVb[^hIXVzh�cwTWa8[gi*adjuevcDVbhW��Xw|lXscDad���cl¨ag� �I�G_bVzhWa�Öo�g�\�mn¥�º�ÏTWadh�ndVbjwÒn�mI�EXÁcDeghIn�aoX�aA9`VYXÁc½mWhIkWadj(�ÂTWVznuT�n�[gh\cDVbh`mWaok�[gi*adjuevcwVz[gh[�pGcwTWa4Xw|lXscDad�"XÁatad�ËXUmWhIklaoXÁVzjue�ZW_zag�x�~���¾3kl[`aoX�hW[gc½iWjD[�praoXwXUcD[7Z*a.ez<Áp¨e�mW_bc�cD[g_zadjue�h\c >[gj�<sp¨egVb_¼Xw[�pÀc >�Xw|`XÁcwat���`eghIkËVzhB�Ëegh\|ËntegXwatX$cwTWa1ndeg_b_¼[gh<Áife�hWVYnA>�nde�h Zfa�Vzh^cDadjDiWjDa�cwaok e^X.e&p¨e�Vzjw_z|�mWhIXw[giITWVzXÁcwVbÒnde�cwaok7jDatXwif[^hIXwa½cD[Ëe�XÁcwjue�Vz�gT\cwpr[gjD��egjDkËiIjw[^ZW_bat���È�[v��ady^adj �E[^jwa n�[^��iI_bVYnde�cwatk:jwaoXÁi*[ghfXÁaoX�jDa � mWVzjwaegkIklV{cDVb[^hIe�_�n�[lkla^�,_z[�cuX4[gpUVbct�³eghIk�cwTIVzX.VzX.n�[^h^cDjDegjw|qcw[cwTIa��gadhIadjue�_Fx�~���¾ iWTWVz_b[\XÁ[^iWT`|<[�pd<Á]gatadi�V{c�XwVz��iI_ba�>W�,a7����-� SUTWaÂjDategXw[gh.pr[gj³cwTWVYX$XÁcDe�cwad�Eath^c³VYX³�^Vby^adh�VbhEcDTWand[g�E�Eadh\c�Z*ad�gVzhWhWVzhW�Ëevc�_zVzhWa���#\��# ,a7�,OQ-� <ÁmWi¼kWe�cwa�>&nde�mfXÁaoX�e�_z_³cDTWa�_zegjw�^aËZW_b[lnu]�ZWm��¼adjuXcD[ËZfa��ÂjDVbcÁcwath�[gmlco�O�lada.Í8TIegilcwatj�SU�8ath^cs| ,a7�,Z�'� <ÁiWjDVzh^cwp >}VYX�nte�_z_baok��ÂV{cDT�e�pr[gjD�Ëevc.XÁcwjDVbhI�qe�hIk[^hWa1iIe�jue��Eadcwadjo�l�ÂTWVYnuTB�UegXUifegXDXÁaok<cD[}<wiIe�hIVzn�> ,a7�, ,%� SUTWVYXS<spr[^j >1XÁcDevcDad�Eadh\c$kla��IhWaoX$e�hEVzh��IhWVbcwa�_b[`[giVzh��ÂTWVYnuT�cwTWa7[ghW_z|�e^n¥cwVz[gh�VYX�e}nte�_z_$[gh�cDTWa7egXÁÒXwad�.ZW_z|<_zeghW�gmfe��ga(iWjD[ln�atkWmWjwau<wVzkl_za�>ulÁÖo��(m$4n��

<wVzkW_ba�> kWjw[^iIX�cwTWa�iWjD[ln�aoXwXw[gj�iWjDVb[^jwVbcs|Îcw[ tadjD[I�eghIk�i*adjwpr[gjD�EX.e <Á�Ue�Vbc >I�}SUTWVzX�VzX.e <wkW[}hW[�cDTlÒVzhW�4>4VzhIXscDjwmfn¥cwVz[gh7[�p�VzhIkla �fhWV{cDa(kWmWjDe�cwVz[gh��,��c�cwadjwÒ�EVzhIevcDatXÂ�ÂTIadh}e�TIe�jukl�Ue�jDa�Vzh^cDadjDjwmIilc�[lndn�mIjDXt�Ô�hËVbh��IhWVbcwa�Xwa�c³[�pFndeg_b_YX¢[gh}<ÁVYkl_za�>(VYXOZfadcÁcDadjOcDTIe�hcDTWa�a�9latndmlcwVz[gh [�p.e=<ÁTIeg_{c >�VzhIXÁcwjDmIn¥cDVb[^h��½XwVbhfn�aegh`|qV �v[�e^n¥cDVby`VbcwVzatX��ÂTWVYnuT��8atjwa�mWhIklatj4�Ue¸|qnde�hZ*a.eg_b_z[v��atkBcw[7nd[g�EiW_za�cDa.e�hfk�cwTWa�XÁ|lXÁcwad� n�_z[lnu]nte�h�]gatadi�cwVYnu]`VbhW�f�SUTIa�[^hW_z|4��e¸|(pr[^j¢cwTWaU[gi*adjuevcD[gjGcw[1jDatn�[vy^adjGprjw[^�e <wiIe�hWVYnA>BVYX(cw[�jwatVbhIV{cDVzeg_bVYXÁa.cwTIaEXw|lXscDad��� l evpÀcwatjcue�]`VzhW�Ëe�nd[gjDa�klmW�Ei��WVbp¢kWatXwVbjDatkan��

�< �� � � ��� �� � ( 3',8,���� � ��� ��#� �8� � ( 383 � �SUTWaoXÁaËiWjD[ln�aoklmWjDatX�iWjD[vy`VzkWaË��egjwhWVzhW���EatXDXweg�gaoX1�ÂTWadhadjDjD[gjuXFe�jDa³[lndn�mIjwjDVbhI��Vbh�V �v[�[gi*adjuevcDVb[^hIXd�GÔ�cºcwTIVzX,Xscue��^ag�cwTIadVzj�[^hW_z| Vbh\cDadjDatXÁc�VYX�egX�a�9Weg��iI_baoX�[gp7cDTWaÎmIXÁa [�p<ÁiIjwVzh\cÁp >I��< �� ( � ��� ��0 � � � " �� ���cB�ÂVz_z_(Z*a&hI[�cwaokÎcwTfevc��ÂTWadjDate^XËcwTIa �I_zaI<w�Ëe�_z_b[ln�� nA>n�[^h\cDe�VzhIX½hW[7jDa � mWaoXsc(cw[�VzhIn�_zmIkla�[�cDTWadj �I_zatXt�Fjwa � mIatXÁcDX

�g�

Page 35: A Commentary on the Sixth Edition UNIX OS -- Lions

cD[ VzhIn�_zmIkla&pr[gmWj�XÁatiIe�juevcDa �I_zatX�e�jDaqVzhIn�_zmIklaokÐevcBcwTWaZ*ad�^VbhWhIVbhW�E[gpd<wiWjÁps� nA>I�l¨SUTIa�[gZfXÁatjwyve�h\c�jDate^kladj��ÂVb_z_GhI[�cwa4cwTIe�c�cwTIatXwa��I_zatXegjwaEiWjDatXwmW�Eatk�cw[}jDatXwVYklaË[ghWaË_zady^ad_³TIVb�^TWadj�Vzh�cwTWa �f_baTWVzadjue�junuT`|�cwTIegh <wiWjwps� n�>.VbcDXwad_bps� nSUTWa�XÁcDevcDad�Eadh\cÂ[ghB_bVzhWa4��#^��$4VYX�cw[�Z*a(mIhIkladjuXÁcw[`[lke^X�Vbp8Vbc(��adjDa�jDadiI_ze^n�atkqZ\|�cDTWaEadh\cwVzjwa�n�[^h^cDadh\cDX½[�p$cwTWa

�I_za <ÁiIegjDeg��� Ta>I��SUTWVzX�cDTWadhÎXwmWiWiW_zVbaoXEkla �IhIV{cDVb[^hIX�pr[gjcDTWa$VYkladh\cDV �IatjDX<D�`� >I�a<DÃ�Æ�>Âe�hfku<ÁVzh^cDad�4>U�ÂTWVznuT�[lntn�mWjVzh <ÁiWmlcunuTIe�j >W���a hW[gcwatk aoe�jD_bVzadjqcwTIe�c�klatnd_zegjDe�cwVz[ghIX�pr[^j <DÃ�Æ�>W�<u�`� >Ðe�hfk <ÁVzh\cwad�4>Î[lndn�mIjwjDatkL[gh¿_bVzhWatX��WÖo�^�l�4�IÖt�^�eghIk��IÖ¸�g��jwaoXÁi*atn�cwVzygat_b|^�½ZWmWc�cDTWVYX��8[^mW_zk�TIe¸y^a&Z*adadh�EateghWVzhW�g_zatXDXd�vVbpIcDTWa �I_za�<wiIe�jue���� Ta>�Tfegk.hW[�cOZ*adadh}<ÁVzhlÒnd_bmIkWatk1>�Vzh <wiWjwps� n�>W�SUTWa��f_baoX <ÁZWmlps� Ta>ÏeghIk <wn�[^hlps� Ta> TIe¸yga�Z*adadh VzhlÒnd_bmIkWatk(cw[ÂiIjw[vy`VYklaOklatnd_zegjDe�cwVz[ghIX*pr[^je<wk �Ëe�4s[^j >I�a<Dk ��VzhW[^j >I�<wZ kladyy>Ëe�hfk <ÁZ ZW_z]`hW[o>I�W�ÂTWVYnuT�egjwa�mfXÁaokBVzh <ÁiIjDklatyy>eghIk3<Dklady^adjDjw[^j >I�SUTWaBjwaoegXw[gh�pr[gj�cDTWa7VzhInd_bmIXwVz[gh�[�pUcDTWa<pr[^mWjÁcDT �I_zag�<DXÁat�I� Ta>W�FVYX�e�_bVbcÁcD_baETIegjDklatj(cw[ �IhIkF�E��h�p¨egn�c�V{c4VYX1hW[�chWaon�aoXwXDe�jD|Be^XÂcwTIa.n�[lkla�Xscue�hIkIXd�*e�hIk�cDTWa.egmlcwTI[gj�[v��atXTWVYX�jDate^kladjuXÂe�h}egif[^_b[^�g|g�8��h}atklVbcwVzhW�ËcDTWa�Xw[gmWjun�a4nd[lklag�Vbc½Xwadad�Eaok�_bVz]ga�e<�g[`[lkBVYklaoeEcw[<�E[vy^a1cwTWa�kWatn�_Ye�juevcDVb[^hpr[^js<ÁVzh^cDad�4>4prjD[g� <wXwad�I� Ta>�cw[r<Áife�jue���� TO>W���.� Ì�� Ä.�~�[gcwa1cDTIevcÂcDTWa�yve�jDVzegZW_bau<wiIe�hWVYndXÁcwj >+l ��#\��(4n³VYX�e�_YXw[�^_b[^ZIe�_fZWmlc�XwVzhIn�a�VbcUVzX$hW[�c�jwadpradjDadhIndatkE[gmWcDXwVzklaE<ÁiWjwps� n�>W�VbcDXUklaon�_Ye�juevcwVz[gh7TIegX8hW[�cUZ*adadhBiW_Yegn�aok<VzhBegh\|r<t� Ta>��I_zag�

�^�

Page 36: A Commentary on the Sixth Edition UNIX OS -- Lions

� � �q�����A��� �s� � � ���=�

SUTWVYX¢nuTIe�iWcwadjOnd[ghIXwVzkWadjuX�cDTWa�Xwa � mWathIn�a�[�pfadygath\cDX,�ÂTWVYnuT[lndndmWj,�ÂTWadh�x½~���¾ VzX`<ÁjDadZ*[`[�cDatk1>ÂVÉ� ag�ºVbc¢VzXG_b[\egklaok4e�hfkVzhWVbcwVYevcwaok�Vbh}e�h�VYkl_ba��Ëe^nuTWVbhIag�Ô XscDmIkl|�[�pIcwTWa�VbhIV{cDVzeg_bVYXwe�cwVz[gh4iIjw[ln�aoXwXºVzXG[�pfVbh\cwatjwaoXscVzh}V{cuXÁat_{ps�*ZWmlc(�E[gjDa�Vb�Ei*[gjwcDe�h\cD_b|^�IVbc(e�_z_z[v��XÂeËh`mW��Z*adj[gp¼Vz�Eif[^jÁcue�h\c³praoevcwmIjwaoXO[�p¼cwTIa½Xw|`XÁcwat�¿cD[4Z*a�iWjDatXwadh\cwaokVzh}e�h�[gjukladjD_b|Ë�ËeghWhWadjo�SUTWa1[gi*adjuevcDVbhI�.Xw|`XÁcwat�?�Ëe¸|ËTIe¸yga�cw[�Zfa1jDatXÁcDe�jwcwaokVzh�cwTWaÂevpÀcDadjD�ËevcwTE[gp*e1XÁ|lXÁcwat�¿n�juegXwT��º��c³�ÂVz_z_We�_YXÁ[1TIe¸y^acD[<Zfa�jwaoXscue�jwcwatkBprjDa � mWath^cD_b|7pr[gj � mIV{cDa4[gjuklVzhIe�jD|g�l[^ifatjÁÒe�cwVz[ghIeg_OjwaoegXw[ghIXt�Fag� �I�7e�pÀcwatj4e�h�[vygatjwhWVz�gT\c�XÁT`mlcukl[v�Âh����pÂ��a7egXDXÁmI��aEcDTWa7_Yevcwcwatj.nde^XÁa^��cDTWadh���a7nte�h�egXDXÁmI��acDTIevc�e�_z_*cwTWa�klVYXw] �I_baoXÂe�jDa�Vzh\cDegn�c�e�hIk<cwTIe�cUhI[�Xwifaon�VYe�_ndVbjun�mW�ËXÁcDeghIn�a1hWatatkWX�cD[ËZfa�jDatnd[g�ghIVzXwatk7[gjÂklateg_{c��ÂVbcwTº���h�iIe�jwcwVYn�mW_Ye�jo�¸�8a�ndegh.egXDXwmW�Ea³cwTIadjDa8VYX¢e �I_za�Vbh�cwTWajD[`[�c.klVzjDatn¥cD[gjD|�nte�_z_baok < �vmWhWV 91>W�,�ÂTWVznuT VzX�cwTWa�[gZ 4satn¥cnd[`kWa½pr[^jUcwTWa�[^ifatjDe�cwVzhW�ËXÁ|lXÁcwat���SUTWVYX �I_za�Z*ad�\e�h�_bVbpraËegX1e�XÁadc([gp�Xw[gmWjun�a �I_baoX�XÁmfnuTe^X1�8aËe�jDa�Vbh`ygaoXscDVb�\evcDVbhW�f�ËSUTWatXwaE�8atjwaEn�[^��iIVb_zatk�e�hfk_zVbhI]gatk�cD[g�^a�cwTIadjÂVzh�cwTWa.hW[gjD�Ëe�_F�Ue¸|<cw[Epr[^jw� eËXwVbhW�^_ba[^Z&4satn�c�iWjw[^�gjue�� �f_ba^�¸eghIk�XÁcw[gjDatk(Vzh1cwTWa$jw[`[�cºkWVbjDatn�cw[gjD|g�'< �� ��� ��# ���8����� �#"���� �ÅÂatVbhIV{cDVzeg_bVYXwe�cwVz[ghEjDa � mWVzjwaoX¢[gi*adjuevcw[^j³egn�cwVz[ghËevc³cDTWa�iWjD[�ÒndatXDXÁ[^jUnd[ghIXw[g_zag�OSUTWa1[^ifatjDe�cw[gjU�.mIXsc �

XscD[gi(cwTIaOiWjw[lndatXDXÁ[^jFZ\|(XÁadcÁcDVbhW�UcDTWa*<wadhIegZW_ba��¸TIeg_{c >XÁ�ÂVbcDnuTBcw[r<wTIe�_bc >2 XÁadc³cwTIa�XÁ�ÂVbcDnuTËjDad�^VzXÁcwatjO�ÂV{cDTËcwTIa�egkWkWjwaoXwXO[gp¼cwTWaTIe�jukl�Ue�jDa�Z*[`[�cDXÁcwjue�i�_z[^egkWadjUiWjD[g�gjue��

kladiIjwaoXwXFeghIk(jwat_baoegXwaGcDTWa*<F_z[^e^k(e^kWkljDatXDX >�Xw�ÂV{cunuT �E[vyga½cwTWaf<wadhIegZW_ba��¸TIeg_{c >.Xw�ÂVbcDnuTBcw[z<ÁathIe�ZI_ba�> kladiIjwaoXwXUe�hfkBjDad_zate^XÁa½cwTIaf<wXÁcDe�jwc >�Xw�ÂV{cunuT��SUTWVYX�e^n¥cwVzyvevcDatX1cDTWa<Z*[\[gcDXÁcwjue�i�iWjD[g�^jDeg� �ÂTWVYnuT�VzXi*adjD�Ëe�hWath^cD_b|7jwaon�[gjuklaok<Vzh�eEÅe!(Ç�VbhBcwTIa�iWjw[lndatXDXÁ[^jt�SUTWa�Z*[`[�cuXscDjDegiL_z[^e^kladj&iWjw[^�gjue��5_z[^e^kWXqeÎ_Ye�jD�gadj_z[^e^kladj¢iWjD[g�^jDeg� lÀprjD[g�¿ZI_b[lnu] �.�([�p*cwTWa�Xw|lXscDad�¿kWVzXw]1n¥��ÂTWVYnuT�_b[`[^]`X8pr[^j�e�hIkB_z[^egkIXÂe �f_ba4nte�_z_baok3< �¸mWhWV 91>�Vbh\cw[cDTWa�_b[v��iIe�jwcÂ[�p,��at�E[gjD|g���c�cDTWadh1cDjDeghIXspratjDXFnd[gh\cwjD[g_¸cD[ÂcwTIaOVbhIXÁcwjDmIn�cwVz[gh1_b[\egklaoke�cÂe^kWkljDatXDX datjw[f�Ô�kIkljwaoXwX tadjD[�VYX�[`ntn�mWiIVbaok�Z`| e�ZWjDeghInuT�VzhIXÁcwjDmIn¥ÒcDVb[^h+l¨_bVzhWa��^�g�m(4n¥�¸�ÂTWVYnuT.ZWjue�hfnuTWatXGcw[1_z[lndevcDVb[^h.�^�g�g�m$^�I��ÂTWVYnuT nd[gh\cDegVbhIX�e 4smW�Ei VbhIXÁcwjDmIn�cwVz[gh l¨_bVzhWaÓ�\�g�^�mn¥��ÂTWVYnuT 4smW�EiIX�cD[BcDTWaËVzhIXscDjwmfn¥cwVz[gh�_Ye�Z*ad_z_baok <DXscue�jwc >BVbhcDTWa �I_zaf<Á�Y$^�I� X >El¨_bVzhWa��^�WÖo�on¥�

'< )( � �2 ��� � ' � ( �Q vZ�yB(� SUTWaz<wadhIegZW_baok1>�ZWVbc�[�p�cwTWa7��at�E[gjD|q�Ëe�hIeg�ga�Ò�Eadh\cEXÁcDe�cwmIX�jDad�^VzXÁcwatjt�$�lÅ��W�$VYX.cwaoXscDatkF����p½cwTWVYX

Xwa�co�FcwTIa�iIjw[ln�aoXwXw[gj(�ÂVz_b_³kl��ad_z_¢pr[gjDady^adj(Vbh�e7cs�8[VzhIXÁcwjDmIn¥cDVb[^h�_b[`[giº�<SUTWVzX4jwat�gVYXscDadj1�ÂVb_z_³hW[^jw�Ëeg_b_z|Z*a�n�_zategjwaokÐ�ÂTWath cDTWa�[gi*adjuevcD[gj�egn¥cDVbyve�cwatX�cDTWa<Dn�_zategj >�ZWmlcwcw[^h}[gh�cwTWa.n�[ghfXÁ[^_ba1Z*a�pr[gjDa4XÁcDe�jwcwVzhW�cDTWa4Xw|`XÁcwat���ÔLh`mW�.ZfatjÂ[�pGjDate^XÁ[^hIX8TIe¸yga(Zfatadh�XÁmI�g�gaoXscDatk<pr[gjcDTWa1hWatndatXDXÁVbcs|Epr[gj�cDTWVzXU_z[`[gi��OSUTWa1�E[^XÁcU_bVz]gat_b|ËVYXcDTIevcOVzh�cDTWaÂnde^XÁa�[�p¼e½kl[^mWZW_zaUZWmIX,cwVz�Ead[^mlcOadjDjw[^jt�cDTWa$iIjw[ln�aoXwXw[gjº�ÂVb_z_^ZIjDeghInuT1cw[½_b[lnde�cwVz[gh� tadjD[I�¸e�hIkVzh�cDTWVzX.XÁVbcwmfevcwVz[gh V{c.XwTW[^mW_zk�hI[�c.Z*a7eg_b_z[v�8aok�cw[�^[�prmWjÁcDTWadjo�

Q vZ�1g%� <ÁjDatXwa�c >7n�_zategjDX(e�hfk&VzhWVbcwVYe�_zVzXwatX1e�_z_,cwTWaEi*adjDVbiITlÒatjDeg_�klady`VYn�a�n�[^h\cwjD[g_�e�hfkBXÁcDe�cwmIXUjDad�^VzXÁcwatjDX��� � !�3#!�0 ��� �����*� +� ".� ��$&�2�2��� � ����-��%��� �%�� +,'�� ��0 � � ��� +���3 � ����������� �%� 0 '�� !%��"%���.'�

Q vZ���-� Ã1�Á�lÔ�� e�hIk Ã1�Á�lÄ(� egjwa�cwTWaÑTWVb�^T n�[^jwa e^k`ÒkWjwaoXwXwatX�[�p½cwTWa �IjuXÁcEife�Vzj�[gp½]^adjDhWad_U�E[lkla}XÁat��Ò�Eath^cuevcDVb[^h�jwat�gVYXscDadjuXd�}SUTWa��IjDXÁc.XwV:9�]gatjwhIad_8kWa�ÒXDn�jDVzilcw[^j jDad�gVYXÁcwadjuX�e�jDaÐVzhWVbcwVYe�_zVzXwatk cD[¿�\�^��$\�g�W��ÂTIVznuT�VYXFcDTWa$klaoXwndjwVzilcwVz[gh1[gp`eUprmI_b_\XÁV� da^��$\à ��[gjukF�jDate^k �¸�ÂjDVbcwa1XÁat�g�Eadh\ct�SUTIa �IjDXÁc�XwV:9�]gadjDhWat_³egkWkljDatXDX(jwat�gVYXscDadjuX1e�jDa�VzhWVbÒcDVzeg_bVYXwatk cD[ �W���\���^�W�4��$\�g�I�4�g�g�^�W�4�IÖt�g�^�Îe�hIk�IÖo�g�g�4jDatXwi*atn¥cDVby^ad_z|g�Ô½XEe}jwaoXÁmI_{c.cwTWa �IjuXscEXÁV 9�]gadjDhWat_8Xwad�g�Eath^cuX�egjwaVzhWVbcwVYe�_zVzXwatk l¨�ÂV{cDTW[gmlc7egh`|�jwadpradjDadhInda7cD[�cwTWaqe^n¥ÒcDmIe�_(XÁV� da&[�p4x�~���¾dnEcD[�i*[gVzh^c7cw[�cDTWa �IjuXsc�XÁV 9$\à ��[gjuk7Xwad�^��ath\cDXU[�p¢iWT`|lXÁVYndeg_¼��at�E[gjD|g�³SUT`mIXcDTWas<Á]^adjDhWad_`cD[�iWT`|lXÁVYndeg_WegkWkljDatXDX >�cDjDeghIXÁ_YevcDVb[^h�VYXcDjwVzy`Vzeg_¢pr[gj4]^adjDhWad_Oe^kWkljDatXDXÁaoX1Vbh�cwTIaËjDeghW�gaE�Bcw[�IÖ�#`�g�g�^�

Q vOB�,%� < adhfk1>�VYX$e1_z[^egkWadj³iIXwadmfkl[4yve�jDVzegZW_zaÂ�ÂTWVznuT<kWa�Ò�fhWatX¢cDTWa�aA9\cDadh\c³[�p*cwTIa�iWjD[g�gjue�� nd[lkla�e�hIkEkWe�cDeegjwaoeW��SUTWVYXEyve�_zmWa�VzX�jD[gmWhIkWatk�mIi cD[&cDTWa�hWa�9`c�.mW_bcwVziW_baË[gp8��$�Z`|\cwatX�eghIkqVYX�XÁcw[gjDatk&Vbh�cwTIaEe^k`ÒkWjwaoXwX7jwat�gVYXscDadjEpr[gj7cwTWa�XÁatygath^cDTÏXÁat�g�Eadh\ctl XÁat��Ò�Eath^c �.�4n¥�~�[�cDaUcwTIe�c,cDTWa�egkIkljwaoXwX,[gpIcwTIVzX¢jDad�^VzXÁcwatj,VYXOXÁcw[gjDatkVzh <Á]veg�o>W�FXw[BcDTIevc1cDTWa<n�[^h^cDadh\c1[�p$cDTWVYX�jwat�gVYXscDadjVYX�e^ndn�aoXwXwVzZW_ba1egXY<� ¸]veg�o>

Q vOBO7(� SUTWa³n�[^jwjDatXwi*[ghIklVzhW�ÂklaoXwndjwVzilcw[^jFjwat�gVYXscDadjFVYXF_z[^egkWatk�ÂVbcwTËe(yve�_zmWaU�ÂTWVYnuT+l XÁVzhIn�aY<Dx½�`� ¼Ìc>�VYX¢a � mIeg_\cw[Öo�on,VYXOcDTWa�klaoXwndjwVzilcwVz[ghE[gpFe1jDate^k �¸�ÂjDVbcwaÂXÁat�g�Eadh\c�ÂTIVznuT�VYX1Öt��9 #^� �¿�lÖo�.��[gjukWX�_b[^hW�I�SUTIa.yve�_zmWa��g�\�N$^�^�EVzX½[gZlcue�VzhWatkqZ\|}XwTWVbpÀcwVzhW�7cDTWa[ln�cDe�_½yve�_zmWaq�WÖv��adVz�gT\c<iW_Yegn�aoXEcw[�cwTWaq_za�pÀc�e�hIkcDTWadh <w[gj >�VzhW�.Vzh�cwTWa�yveg_bmWa��2

Q va7��'� SUTWa$atVb�^T\cwT4Xwad�g�Eath^cGVzXG�Ëe�iWi*atk�Vzh\cw[�cwTWa8TWVb�^TlÒaoXscM$^Ã3��[gjukqXwad�g�Eath^c([�pOcDTWa.iIT\|lXwVznte�_¢egkWkWjwaoXwXXwiIe^n�ag���c¢XÁTI[gmW_Yk�Z*a³hW[�cDatk1cDTIevc,�ÂV{cDT4�Ead�E[gjD|(�EeghIe��^a�Ò�Eath^cOklVYXwegZW_zatkF�¸cDTWa8XDe��Ea³cDjDeghIXw_ze�cwVz[gh�VYX,eg_bjDate^kl|

�m(

Page 37: A Commentary on the Sixth Edition UNIX OS -- Lions

Vbh7pr[gjun�a(V � ag�Oe^kWkljDatXDXÁaoX$Vzh<cDTWa1TWVb�^TWatXÁcq$^à ��[gjukXÁat�g�Eadh\c�[�p�cwTIa}#\��Ã�iWjD[g�gjue�� egkIkljwaoXwXBXÁifegn�ae�jDa³e�mlcD[g�ËevcDVznte�_z_b|(�Ëe�iWi*atk4Vbh\cw[�cwTWa8TWVz�gTWaoXsc�$\Ã�8[^jDkBXÁat�g�Eadh\cÂ[�p,cwTIa�iWT`|`XwVYnde�_Fe^kWkljDatXDXÂXÁiIe^n�a^���a}�Ee¸|�hI[�cwa�cDTIevcEprjD[g� cDTWVzXEi*[gVzh\cË[gh���e�_z_UcwTWa]^adjDhWad_f��[lkla1Xwad�g�Eath^cuevcDVb[^hËjwat�gVYXscDadjuXO�ÂVb_z_¼jwat�Ëe�Vzh<mWhlÒnuTIeghW�gaok&�ÂVbcwT�cDTWa<XÁVzhW�^_baËaA9lndadilcDVb[^h�[gp8cDTWa 6�2oX 2F��� �

� 2o�N��2F5 6�2FGO0324����/y���k�O� /1�����N2F6�6��N2FG ��6���24� �SUTWVYX³jDad�^VzXÁcwatj³VzX³a�9liW_zVzndV{cD_b|��Ëe�hWVziWmW_YevcDatkEZ`|�x½~���¾cD[<if[^Vbh\c½cw[7eËyvegjwVza�cs|�[�p³_z[lndevcDVb[^hIXÂVzhqiWT`|lXÁVYndeg_º�Ead��Ò[^jw|^�¢Ì8egnuT7XwmInuTB_b[lnde�cwVz[gh�VzX8cDTWa1Zfat�gVzhWhWVzhW�E[�p,eghBegjwaoe�WÖo����[gjukWX�_z[ghW�f�¸]\hI[v�Âh4egXºeE<Ái*adjGiWjw[lndatXDXºkWe�cDe�egjwaoem>W�SUTWa�XÁatygath^cDT�]gatjwhWat_�e^kWkljDatXDX4jDad�^VzXÁcwatj�VYX�hW[v�MXwa�ccD[Ëif[^Vbh\c�cD[EcwTWa4Xwad�^��ath\c��ÂTWVznuT��ÂVz_b_GZfaon�[^��a1cDTWa4i*adjiWjD[ln�aoXwXUkWe�cDeEe�jDate.pr[gjÂiIjw[ln�aoXwX �.�W�Q va7�v(� SUTWaÂXÁcDegnu]�if[^Vbh\cwatjOVzXOXwa�cOcD[1if[^Vbh\cOcw[(cDTWaÂTWVz�gTlÒatXÁcÂ�8[^jDkB[�pGcwTWa�i*adj�iIjw[ln�aoXwXUkWe�cDeEe�jDate2Q va7 ~ � ��|EVbhIndjwat�Eadh\cwVzhW�4cDTWa(y¸eg_bmIa�[�pG�WÅ��4prjD[g� tadjD[cw[�[ghWa^�³cDTWa <Á�Ead�E[gjD|��Ëe�hIeg�gad�Eath^cEadhfe�ZW_zatk1>ZWVbc�VzXÂnd[gh`ygathWVbath\cw_z|7XÁadct�

� ��+1� 0 � � ! � +����20 � ����������+.���.�1����'�'��.��!�!���! ����� 0 ����� !���(��0 ��' 0 + � � 3#!�� ����2��'�'��.��!�!���! 0 � � � ��� +���3 � ��� ���)��� ���20� ����' �����

Q va7 �(� <ÁZfXwX >}jDa�pradjuX�cD[}cwTIa�Xwatnd[ghIk�iIegjÁc.[�pÂcwTIaBiWjD[�Ò�gjue�� kWevcue egjwaoeW���ÂTWVYnuT VYXBhW[�c�VbhIV{cDVzeg_bVYXÁaokÐZ`|cwTWaÂ_z[^e^kladjel XÁatas<wÔ�� !(x½SSl ]dn >1Vbh�cDTWae%$Ç n��gSUTWa_b[v��adj¢e�hfk4mWiWi*adj$_bVz�EV{cuX¢[�pIcDTWVYXOe�jDate�egjwaUkla��IhWatkZ`|<cwTIa�_z[^egkWadj�iIXwadmfkl[<yve�jDVzegZW_zatXt�R< aokWevcuem>Ëe�hfk< adhfk1>�jwaoXÁi*atn�cwVzygad_z|

Q vOv \(� SUTWaEiWjD[ln�atXDXw[gj1XscuevcwmfX1�8[^jDk@l�%8�an(VzX�nuTIeghW�gaokcw[ VzhIklVYnde�cwaÏcDTIevc�cDTWa <wiWjDady`Vb[^mIX��E[lkla�> �UegX<ÁmIXwadjU�E[lkla�>I�SUTWVYX<iWjDadiIegjwaoXEcwTIa&�Ue¸|�pr[gj7cwTWa�Vbh`y^atXÁcwVz�^evcDVb[^he�hIk"VzhWVbcwVYe�_zVzXDevcDVb[^h [�p�cwTWa3e�jDategXÎ[gp�iIT\|lXwVznte�_�Ead�E[gjD|7�ÂTWVYnuTqe�jDa�hW[gc�iIe�jwc�[gp,cDTWa�]^adjDhWad_Gegk`ÒkljDatXDX7XwiIegndag� l SUTWVzXBVzh\y^[g_zygaoXËmIXwa&[�p�cDTWa�XÁi*a�Òn�VYe�_.VbhIXÁcwjDmIn�cwVz[ghIXI<Á��cwiWV > eghIk <Á��priWV >&l Ç}[vygaSº[ �N)Ijw[^� %³jDady`Vz[gmIX*��hIXÁcwjDmIn¥cDVb[^h�XÁiIe^n�a�nfcw[g�^a�cDTWadj�ÂV{cDT.Xw[g�Ea��EeghWVziWmW_YevcwVz[gh�[�pIcDTWa�mIXÁatjG�E[lklaÂXwad��Ò�Eadh\cDe�cwVz[gh�jwat�gVYXscDadjuXd� n�

Q vOv �(� ÔÎndeg_b_lVYXGcwTWath��Ëe^kla�cw[½cwTWaÂiWjD[ln�aoklmWjDa�<w�EegVbhO>lsÖ¸�g���4n¥�

��c.�ÂVz_z_³Zfa�XÁatadh�_Yevcwatj�cwTfevc <w�EegVbhO>}nde�_z_YXf<wXDnuTWatka>�ÂTWVYnuT hIadygatj7cDadjD�EVbhIe�cwaoXd�:SUTIa�hWatatkÐpr[gj�[gj�mIXwa�[gpcDTWa�_YegXÁc7cDTWjDada&VzhIXÁcwjDmIn¥cDVb[^hIXB[�pb<wXÁcDegjÁc > lr_zVzhWatX��g�`�v�W��^�\�`Ö}eghIkÏ�g�`���mn.VYXËcDTWadjDa�pr[^jwaqXw[g�Ead�ÂTfevc<adhIVb�^�Ee�cwVYn��SUTWa7jwaoegXw[gh��ÂVb_z_8nd[g�EaË_ze�cwatjt����h�cwTWa7��aoe�h\cwVz�EaË|g[^m�EVz�gT\c�_zVb]^a4cw[7if[^hIkladj <Á�ÂT`| %�>W�Â�ÏTIe�c(kl[ËcDTWatXwa�_zVzhWatXkl[Ëegh\|`�Ue¸| %

'< -, � �" � � � � � �x�i*[gh�ath^cDjw|<cw[�cwTWVYXÂiWjD[ln�aoklmWjDa �� / � cDTWa�iWjw[lndatXDXÁ[^j�VzX,jDmWhWhWVzhW�(evc¢iWjwVz[gjDVbcs| tadjD[I�¸Vbh.]gatjÁÒhIad_º�E[lkla4eghIk��ÂV{cDT�cwTWa4iIjwaty\Vz[gmfXÂ�E[`kWa4XÁTW[v�Âhe^XUmIXwadjÂ�E[lkla�� � cwTWa�]gatjwhWat_½�E[lkla�XÁat�g�Eadh\cDe�cwVz[ghÐjDad�^VzXÁcwatjDX<TIe¸ygaZ*adath Xwa�cËe�hfk�cwTWa��Ead�E[^jw|��Ëe�hIeg�gat��ath\c.mWhWVbcTfegXUZ*adadh�athIe�ZW_zatk � � � e�_z_`cwTWaÂkWe�cDe1e�jDate^XGmfXÁaok�Z`|�cDTWaU[gi*adjuevcwVzhW��Xw|`XÁcwat�Tfe¸yga1Zfatadh�VzhWV{cDVzeg_bVYXwatk�� ��� cwTWaËXÁcDegnu]}i*[gVzh\cwatjYlÉ�y%L[gj(jD�4n�i*[gVzh\cDX(cD[�eB�8[^jDk�ÂTIVznuT}n�[^h\cDe�VzhIXUeEjDa�cwmIjwh�egkWkWjwaoXwX�Vzh <DXscue�jwc >I��1gOg��-� SUTWa��fjDXÁc½egn�cwVz[ghq[gp*<Á�Ëe�Vzha>Ë��[gmI_zk}egiWifaoe�j�cw[Z*a�jwaoklmWhIkIe�h\ct�1XÁVzhIndaI<wmWi*kW_b[lnu]y> XwTW[gmI_zk TIe¸ygaeg_bjDate^kl|�ZfatadhBXwa�c8cw[ dadjD[.e^X³iIegjÁc�[�p�cDTWa�VzhWVbcwVYe�_bÒVYXDevcwVz[gh�i*adjwpr[gjD��aok7Z`|@<wXÁcDe�jwc >2�1gav Q-� <ÁV >&VYXËVzhWVbcwVYe�_zVzXwatkÑcw[�cDTWa}[gjuklVzhIe�_Â[gp½cDTWa �IjuXsc

#\�<��[gjukqZI_b[lnu]qZ*ad|^[ghIkqcwTWaz<wifatj(iIjw[ln�aoXwX1kWe�cDeegjwaoem>�pr[gjÂiWjD[ln�aoXwX �.� �1gav�,%� SUTWa��IjuXÁc&iIe�Vzjq[gpEmfXÁatjq�E[`kWa XÁat�g�Eadh\cuevcwVz[ghjDad�^VzXÁcwatjDX½e�jDa�mIXwatkqcw[�iWjD[vy\VYkla�eP<Á�E[vy`VzhW�<�ÂVzhlÒkW[v�e><Vzh^cD[�TWVb�^TWadj1e�jDate^X�[gp³cwTIa�iIT\|lXwVznte�_,�Ead��Ò[^jw|^�

Ô�cUate^nuT<i*[^XwV{cDVb[^h<[�pFcDTWa½�ÂVzhIkl[v�Ðegh7evcwcwat��iWc�VYX�Ëe^klazlrmIXwVbhI�I<ÁprmWVbZ`|\cwa�>on�cw[�jDategk�cwTWa �IjuXÁcEe^n¥ÒndatXDXÁVzZW_za}�8[^jDk VzhÎcwTWa&�ÂVbhIkW[v������p1cwTIVzX7VzXËhI[�cXwmIntn�atXDXÁprmW_ �GV{c.VzX4e^XwXwmW�Eatk�cDTIevc�cDTWaËadhIk�[gp8cDTWaiIT\|lXwVznte�_��Eat��[^jw|ÑTIegX<ZfatadhÏjDategnuTIatkF�W!�cDTWadjwÒ�ÂVYXwaËcwTWaBhWa�9`c�#\����[gjuk�ZI_b[lnu]�VzX�VbhWVbcwVYe�_zVYXÁaok�cw[ tadjD[@l¨mIXÁVzhW�I<wn�_zategjDXwad�4>rl¨�g�`�v�4n n4eghIk�e^kWklatk�cw[cDTWa�_zVzXÁc�[�pOe¸yve�Vz_zegZW_ba1�Ead�E[^jw|^�We�hIkBcwTIa��ÂVbhIkW[v�VYX�e^klyve�hIndatkBZ\| #^�.�8[^jDkIXd�

<sprmWVzZ`|\cwa�>&e�hIk <Dn�_zate�juXwad�o>�egjwaËZ*[�cDT�cw[qZ*a<pr[^mWhIkVzhW<w�Y$^�W� X >W�e<ÁprmWVbZ`|\cwa�>��ÂVb_z_$hW[^jw�Ëeg_b_z|}jwadcwmWjDh�e�if[\XÁVbÒcwVzygaËyveg_bmWa7Vbh�cDTWa<jue�hW�^aE�}cw[&�g�^�l��È�[v��adygatjt�GVbh�cDTWaa�9WndadilcDVb[^hIe�_¢nde^XÁa.�ÂTWadjDa4cDTWa.�Eat��[^jw|�_z[lndevcDVb[^hqjDa�pradjwÒadhfn�atk�kW[\aoX�hI[�c�jDatXwif[^hIkF�,cwTIa7yve�_zmWa �¼Ö<VzX.jDa�cwmIjwhWaokF�SUTWa<�Ue¸|�cwTWVYX4VYX�ZIjw[^mW�gT\c�e�Z*[gmWc.VYX�e}_zV{cwcw_za7[^ZIXwndmWjDag�e�hfk7�ÂVz_b_ºZfa�aA9`iI_zegVbhWaok7_YevcDadjÂVzh&Í8TIe�ilcDadj�SGadh�� n�1ga\�,%� <Á�ËeN9l�Ead�s>½kla �IhIatX,cwTIa��Ëe�9`Vz��mI�¿e��E[gmIh^c¢[�p�ËegVbh��Eat��[^jw|��ÂTWVYnuT��Ee¸|�Z*a7mIXwatk�Z`|�e}mIXwadjiIjw[^�gjue����,SUTIVzXÂVYX�cwTIa���VzhWVz��mW�/[�p �

cwTIa³iWT`|lXÁVYndeg_b_z|�e¸yve�Vz_zegZW_za,�Eat��[^jw|�l�<w�Ee�9l��at�s>on� e�h1VzhIXÁcDe�_z_YevcwVz[gh�kla��IhIegZW_baOife�jue��Ea�cDadjRl�<DÇqÔ�¾(ÇqÌ$Ç >onl¨�IÖ�#\�mn�

cwTIa³mW_bcwVz�Ee�cwa³_zVz��VbcºVz�Eif[\XÁaok½Z`|�cwTWa %8Ä`%�ÖgÖe�junuTWVbcwaon¥cwmIjwa���×

Page 38: A Commentary on the Sixth Edition UNIX OS -- Lions

�1ga\ B(� <wXw�Ue�iW�Ëe�iO> kla��IhWatX}e¸yvegVb_Ye�ZW_za�XwiIe^n�a�[gh cwTWaXÁ�Ue�iIiWVbhI�<klVzXw]��ÂTWVznuT&�Ee¸|�Z*a�mIXwatk��ÂTWathqmIXwadjiWjD[g�gjue��ËX1e�jDaËXÁ�Ue�iIifaok�[^mlc4[�pÂ�Ëe�Vzh��Ead�E[gjD|g���c�VzXºVbhIV{cDVzeg_bVYXÁaok(cw[�eÂXwVbhI�g_za³e�jDate�[�pWXwV( taS<ÁhIXw��egia>W�Xscue�jwcwVzhW�Ïevc&jDad_YevcDVby^a�egkWkljDatXDX <DXÁ�ÂiW_z[o>I� ~�[�cwacwTIe�cz<ÁhIXw��egia>�e�hIk=<wXw�ÂiW_z[o>�e�jDaBVzhWVbcwVYe�_zVzXwatkÑVbh<wnd[ghlps� nA>+lr_zVbhIatXj$\�g×\�l�F$^�g×o(on%

�1ga\ �(� SUTWa&XwVz�ghWV �fndeghIn�a}[gp�cwTWVYX7eghIk cwTIa&hWaA9\c7pr[gmWj_bVzhWaoXU�ÂVb_z_�Z*a4klVzXDn�mfXwXwatk�XÁTI[gjwcw_z|��1g � �(� SUTWa$kWatXwVb�^h([gp`x½~���¾ egXDXÁmW�EaoX*cwTWa³aA9lVzXÁcwathIn�a³[gpe�XÁ|lXÁcwat�3nd_b[lnu]��ÂTIVznuTËVzh\cwadjDjDmWilcDXOcwTWa½iWjw[lndatXDXÁ[^jevcÂ_zVbhWa1prjDa � mWathIn�|tlrVÉ� a��g��È 1[gj��g�EÈ �n¥�

SUTWadjDa.egjwa�cs�8[�i*[^XDXÁVzZW_za.n�_z[lnu]�cs|`ifaoX(e¸yvegVb_Ye�ZW_za �e�_bVzhWa�prjDa � mWadhfn�| nd_b[lnu] l Ã1� ÖgÖ�Ò�Æ�n��ÂTWVYnuTÎTIegXe�n�[^h^cDjw[^_Âjwat�gVYXscDadjË[^hÎcwTWa&x�hWVzZWmIX7e�cBegkIkljwaoXwX�g�^���N$\�W�³[^j<e�iWjD[g�gjue��E�Ëe�ZI_ba^�$jDate�_bÒÉcwVz��a}nd_b[lnu]l¨Ã1� Ö^Ö�Ò %cnË_z[lnde�cwatk�evc}egkWkWjwaoXwX}�g�^���N$\� lr_zVbhIatXÖo�g�g×W�*Öo�WÖt�4n¥�x�~���¾Mkl[`atX�hW[gc4iWjDatXwmW�EaË�ÂTWVznuT�nd_b[lnu]q�ÂVz_b_$ZfaiWjDatXwadh\ct����c1evcwcwad�EilcuX�cD[7jDate^k�cwTWa�XscuevcwmfX���[gjukpr[gj1cDTWa<_zVbhWa<prjwa � mIadhInd|�n�_z[lnu] �IjuXÁct�7��p�XwmIndndatXDXsÒprmW_É�FcwTIe�c4n�_z[`nu]&VzX(VzhWV{cDVzeg_bVYXwatk�e�hIk&cwTWaE[gcwTWatjplrVbpiWjDatXwadh\c n8jDad�Ëe�VzhIXÂmWh`mIXwatk��³��pGcDTWa �IjuXÁc�evcÁcDad�EilcVzX½mWhIXwmIntn�atXDXÁprmW_ �¼cDTWadh&cwTWa�[�cDTWadj1n�_z[lnu]�VzX½cwjDVzatkF���p�Z*[�cDT�evcÁcDad�EilcuX4e�jDa.mIhIXÁmfndn�aoXwXÁprmW_É��cDTWadjDaEVzX4endeg_b_\[ght<ÁiIeghWVzn�>��ÂTWVYnuT�a��*aon¥cDVby^ad_z|�TIe�_bcDXGcwTIa�Xw|lXsÒcwat�:�ÂVbcwT}e�h�adjDjw[^jU��aoXwXDe��^a�cD[�cwTWa�[^ifatjDe�cw[gjo�

�`VzhIn�a�cDTWaqe�ZfXÁathIn�a�[�p�e�n�_z[`nu]��ÂVz_z_�Zfa�VzhIklVYnde�cwatkZ`|.e1ZImIXOcDVb�Ead[^mlc³adjDjD[gjo��V{c8VzX³nd[gh`ygathWVzadh\c¢cw[4�Ëe�]^a�cwTWajDa�pratjwathIn�a³y`VYes<sprmIVb��[gjuk1>W�oiWjDatndatklaok1Z\|½cwTIa�Xwa�cwcwVzhW��[�pIemIXwadjÂ�E[lkla4Xwad�^��ath\cDevcDVb[^h7jDad�^VzXÁcwatj�ife�Vzj*lsÖo�g×g×I�*Öo�g�^�on¥��yvOQ ~ � ̳VbcwTIadj�cs|`i*aÏ[�p}n�_z[`nu]ÓVzX�VbhWVbcwVYe�_zVYXÁaokÓZ`|¿cwTWaXscuevcDad�Eadh\c

¸_z]lX �¿�WÖ^Öo� Ô�X�eÐn�[^hIXÁa � mWadhInda�[�pEcwTIVzX�egn�cwVz[gh���cDTWa nd_b[lnu]�ÂVb_z_ÂVzh^cDadjDjwmIilcEcwTWa}iWjD[ln�aoXwXw[gj��ÂV{cDTWVzhÑcDTWa�hWa�9`c�����EVb_z_zVzXwatnd[ghIkWXt�USUTWVzX�Vbh\cDadjDjwmWiWc��Ëe¸|7[lndndmWj�evce�h`|½cwVz��a^�vZWmlc,V{c,�ÂVb_z_^Z*aUn�[gh`y^adhWVzadh\cFpr[gjGcwTIVzX,klVYXsÒn�mIXDXwVb[^h�cw[�egXDXwmW�Ea$cDTIevcOhW[(Vbh\cDadjDjwmWiWc,�ÂVz_b_l[lntn�mWjZfadpr[gjDa1VbhWVbcwVYe�_zVYXwe�cwVz[gh�VzXÂnd[g�EiW_za�cwa�

�yvZ�yB(� <wndVbhIV{c >*l�(\�v_?$4n*VzhWV{cDVzeg_bVYXwatXFcDTWa³i*[`[g_g[gpInuTIe�juegn�cwatjZWm��¼adjuXd�³�`ata.Í8TIe�iWcwadj��m# �yvZ�F7@� <ÁZIVbhWVbc >Wl �g�^�^�mnËVzhWVbcwVYe�_zVzXwatX7cwTIa�i*[`[g_1[�p._zegjw�^aZWm��¼adjuXd�³�`ata.Í8TIe�iWcwadj�Öv� �yvZ�1g-� <ÁVzVzhWV{c >El �g×^�^�mn¢VzhWVbcwVYe�_zVzXwatX$cDegZW_za�adh\cDjwVzatX³pr[gj8cwTWajw[`[gcUklaty`Vzndag�$�`ata.Í8TIe�ilcDadj�SU��adh\cs|g�'< 3 57� � � � � �<wiWjw[lndatXDX >EVYX½e<cwatjw� �ÂTWVYnuTqTIe^X�[lndndmWjwjDatk��E[^jwa�cDTIe�h[^hIn�a�eg_bjDate^kl|g�ÂÔÓkla �IhIV{cDVb[^hq�ÂTWVYnuTq�ÂVb_z_GXwmWVbc½[^mWj�iWmIjÁÒi*[^XwatX1jDate^XÁ[^hIe�ZW_z|}��ad_z_$evc4iWjDatXwadh\c�VYX4XÁVz�EiW_z| <we�iWjD[�Ò�^jDeg�?Vbh�a�9laon�mlcDVb[^ha>W�

Ä�adcDegVb_YX [gp}cwTWa�jwatiWjDatXwadh\cDe�cwVz[gh?[�pqiIjw[ln�aoXwXwatX�Vbhx�~���¾ �ÂVb_z_ÂZfa}klVYXDn�mIXDXÁaok�Vzh cDTWa�hWa�9`c<nuTIe�iWcwadjo�3)I[gjhW[v���8a 4smfXscºhI[�cwa³cwTIe�cºate^nuT½iWjD[ln�aoXwXFVzh`yg[^_by^atXFeY<ÁiIjw[lnA>XÁcwjDmIn¥cDmWjwa.prjD[g� cDTWaËe�jDjDe¸|}ndeg_b_zatk <ÁiWjD[lnA>�e�hIk�e <Ái*adjiWjD[ln�atXDX(kWevcueBegjwaoem>Ë�ÂTWVYnuT�VbhInd_bmfklatX([ghIa�nd[gi`|}[�p³cDTWaXÁcwjDmIn¥cDmWjwau<wma>W�'< (� � � " �#" ��" � �2" ��� ��� � � � ��� ��SUTWaÂaA9`iI_bVYn�Vbc$VzhWV{cDVzeg_bVYXDevcwVz[ghE[gpfcDTWa�XÁcwjDmIn¥cDmWjwas<wiWjD[`no{ ��| >VYX4i*adjwpr[gjD��aok�Xscue�jwcwVzhW�qevc�_zVzhWa&Ö¸��(g×I�u!½hW_z|�pr[gmWj.ad_za�Ò�Eadh\cDX½e�jDa�nuTIeghW�gaok7prjD[g�/cwTIa�[vygatjDeg_b_FVzhWVbcwVYe�_,yve�_zmWa4[�p datjw[ �� / � <wi Xscuevc >7VYX�XÁadc1cw[ <D�lÅUx�~`>7�ÂTIVznuT�Vb�EiW_zVzatX(cwTfevciIjw[ln�aoXwXÂ��VYXY<ÁjDate^kl|Ecw[ËjDmWha>2� � <Ái #feg�o> VYX&Xwa�c}cw[ÐXwTW[v��Zf[gcwT <u�lÆ�!�Ô�Äd>Îe�hIk

<u�W� ��y>W�WSUTWa1pr[^jw�Eatj�Vz�EiW_zVbaoX�cwTIe�cÂcwTWa1iWjD[ln�atXDXVYXFcD[�Z*a³pr[gmIhIk1Vbh.n�[gjDaelrVbcºTIe^X�hW[gcºZ*adadh.XÁ�Ue�iWi*atk[^mlc7[^h^cD[�cwTIa&klVYXÁ]1n¥��eghIk cwTIa�Xwatn�[^hIkF��cwTfevcBVbcXwTW[^mW_zk�hWatygatj�Z*a4Xw��egiWifaok7[^mlc�� � � <Ái XwV( ta�>�VzX�XÁadc�cD[z<wx(�`� ¼Ì >2� ��� <Ái e^kWklj >�VYXËXwa�cËcw[�cDTWaqn�[^h^cDadh\cDXE[gp½cDTWa}]gatjwhIad_Xwad�^�Eadh\cDe�cwVz[gh�egkWkljDatXDX�jwat�gVYXscDadj �.�W���c��ÂVb_z_�Z*a4XÁatadhBcwTIe�c�iWjD[`ndatXDX �.�.TfegXÂegn � mWVbjDatk�e�he�jDateE[gpS<wx½�l� ¼Ì >ËZI_b[lnu]lXil¨a�9Wegn�cw_z|7cDTWa.XwV( ta4[�p$eP<Ái*adjiWjD[ln�atXDXOkWe�cDe�e�jDateo>onG�ÂTWVYnuTEZfat�gVzhIXOVz���EaoklVze�cwat_b|EevpÀcDadjcwTIa&[ �<ndVzeg_½athIk�l�< adhIka>onË[gp4cwTIa&[gi*adjuevcDVbhI�ÑXw|`XÁcwat�kWe�cDeEe�jDateI�SUTWa$[^jDkWVbhIeg_�h`mW��Z*adjG[�plcDTWa��IjuXÁcºZW_z[`nu]([�p`cDTWVzX,e�jDateTIe^XËZfatadh XÁcw[^jwaokÑpr[gj<prmWcwmWjDaqjDa�pradjDadhfn�a}Vzh <Ái e^kWklj >W�SUTWVYX�egjwaoeW���ÂTWVYnuT �UegX�n�_zate�jDatkLcD[/ tadjD[ÐVbh <wXÁcDe�jwc >

l¨�^�g�IÖ�n¥�lnd[gh\cDegVbhIXÂeEXwVbhI�g_za1nd[gi`|Ë[�p,cwTIa�mIXÁatj�XscDjwmfn¥cwmIjwandeg_b_zatk@<ÁmO>W�!½h}_bVzhWa<Ö¸��×o#W�`cwTIa�egkWkWjwaoXwXU[gpM<wiWjD[`no{ ��| >�VYX�XÁcw[gjDatkVzh�<Ám�� m iWjD[ln�ia>I�OV � ag��cwTIa@<wiWjw[ln�>qXscDjwmfn¥cwmIjwa�e�hIk�cDTWa

<ÁmO>�XÁcwjDmIn�cwmWjDa�e�jDa½�.mlcwmIeg_b_z|7_zVzhW]gaokF�'< (' ��� � � � �2& � �����#" �<0 � �yv , ~ � <ÁhWat�ÂiWjD[`n�>slsÖ�(^���4n,�ÂVb_z_*Zfa�kWVzXDn�mIXDXwatkEVzh7kla�cue�Vz_Vzh�cwTWa�hIa�9`c�nuTIe�iWcwadjo�

��h�ZWjDVza�pºcDTWVYXUVbhWVbcwVYe�_zVYXÁaoXÂe�Xwatnd[ghIk3<ÁiWjD[lnA>�XscDjwmfn¥ÒcDmWjDa&y`V( ^� <wiWjD[`no{{ÖA| >I��e�hIk e�_z_b[lnde�cwaoX7e Xwatnd[ghIk<wifatjBiIjw[ln�aoXwXBkWevcue egjwaoem>�Vzh�nd[gjDag�ÓSUTIVzXBVzX�end[gi`|�[gp^cDTWa*<wifatj�iWjD[`ndatXDX�kWe�cDeÂe�jDateo>³pr[^j�iWjD[ln�atXDX�.�I�la�9Wegn�cUVzh}e�_z_FZWmlcÂ[ghIa(jDatXwi*atn¥c �¢cwTWa1yve�_zmWa1[�p<wm�� m iWjD[`ndia>�VzhËcwTIa(Xwatnd[ghIkËegjwaoe�VzX�<��1iIjw[lnm{bÖ�| >W���aEXÁTW[^mW_Yk}hW[�cDa.TIadjDa4cwTfevc�evc½_zVzhWaBÖ�(m(^×W�WcDTWadjDaVYXqeÎndeg_b_�[^h <wXDe¸y\mO> l¨�`���^�mnB�ÂTWVYnuTLXDe¸ygaoX7cDTWandmWjDjwath^c�yve�_zmWatX�[�pËcDTWaÑath`y\VzjD[ghW�Eadh\c�e�hIk cDTWaXÁcDe^nu]�i*[gVzh\cwatjDX�Vbh=<Ám�� m jDXDe¸yy>�Zfadpr[gjDa<cDTWaBnd[gi`|VYXÂ�ËegkWag�

#^�

Page 39: A Commentary on the Sixth Edition UNIX OS -- Lions

Ô�_YXÁ[�prjw[^� _bVzhWa�Öt×WÖ�(���a½ndegh7Xwada½cwTIe�c8cDTWa½yveg_bmWajwadcwmWjDhWaok�Z`|W<ÁhWat�ÂiWjD[`n�>��ÂVb_z_8Z*a* tadjD[I�¢XÁ[�cDTIevccwTWa4XÁcDe�cwat��ath\cDXÂ[^hB_zVbhIatX�Öo�^��(�cw[}Öo�m#\�4�ÂVz_b_GhW[�cZfa�aA9latn�mWcwatk �yvOB ~ � ÔMnte�_z_$VYX4�Ëegkla<cw[ <DXwnuTWaok1>zlsÖo×�$\�on½�ÂTWVYnuT��¢V{c�Ëe¸|�Z*a�[gZIXwadjDygaokF�gnd[gh\cDegVbhIX$e�hEVbh��IhWVbcwa�_z[`[gi��\XÁ[cwTIe�cÂV{c�hWatygatjÂjwadcwmWjDhIX *'< �� � � � � � �� 3 �Ô�c�cDTWVYXºXÁcDe��^aO�8a8e�jDaO[ghW_z|�Vzh\cwadjDatXÁcwaok1Vbh��ÂTfevcºTIegiWi*adhIX�ÂTWath <wXDnuTWatk1>.VYXUadh\cwatjwaok7pr[^jUcwTWa �fjDXÁcUcwVz��a^���� gO\(� <wXwiW_Y�m>.VzXÂegh�e^XwXwad�.ZW_zadjUjw[^mlcwVzhWaslsÖ¸��×\�mn8�ÂTWVYnuTXÁadcDX�cwTWa�iWjD[ln�aoXwXw[gj4iIjwVz[gjDV{cs|�_zady^ad_8cw[�XÁV 9F� lÉÍ$ps�e�_YXÁ[ <DXÁiI_z�o>W�W<wXwiW_ $4>W�W<wXwiW_À��>?e�hfk <wXwiW_À��> Vbh

<Á�Y$^�I� X >on���ÏTWath�cwTWa4iIjw[ln�aoXwXw[gjUVYX�e�c�_batygad_GXÁV 9F�W[ghW_z|BkWady`VzndatX�ÂVbcwTÓiWjwVz[gjDVbcs|�Xwadygath¿ndegh Vbh\cDadjDjwmWiWc�Vbct� SUTWaÑnd_b[lnu]�ÂTW[\XÁa½iWjDVb[^jwVbcs|E_batygad_¼VYXUXÁV 9<VzX8cDT\mfXUVbhWTIVbZWVbcwaok<prjD[g�?VzhlÒcDadjDjwmWiWcwVzhW�(cwTWaUiWjD[ln�atXDXw[gj¢Zfadcs�8atadh.cwTWVYXOi*[gVzh\cOeghIk�cwTWaXwmWZIXwa � mWath^c�nte�_z_F[gh <wXwiW_Y�m>�evcÂ_bVzhWaËÖo×\�v�I�

���Ov Q(� ÔÐXwategjDnuT�VzX$�ËegklaÂcDTWjD[gmW�^T}<wiWjD[`n�>(�ÂTW[^Xwa�XscuevÒcwmIXUVYXs<u�lÅUx�~>EeghIk7�ÂTIVznuT�VYXUhW[�cp<w_b[\egklaok1>W�l�%$jw[lndatXDXÁaoX �.�}eghIk Ö�Tfe¸ygaËXscuevcDmIXu<D�lÅUx½~>}e�hfkegjwa�_b[\egklaokF�.Ô�_b_OjDad�ËegVbhWVzhW�}�lÖo×m# �½iWjD[`ndatXDXÁaoXd�¼TIe¸y^a�eXÁcDe�cwmIX.[�p� tadjD[I�,�ÂTWVznuT VzX.a � mWVzyve�_zadh\c�cD[ <ÁmIhIkla �fhWatk1>[^js<w~�x½ÆºÆ�>Yn(�

���Ov v(� SUTWa�XÁaoe�junuT�p¨e�Vz_zX+l�<wha>qVYXEXscDVb_z_ �¼Ö�n���SUTWa�#fe��<ÁjDmWhW[^mlc > VzX��ËegkWa�hI[ghlÒ datjw[f��VzhIklVYndevcDVbhI� cDTIevccwTWatjwaËegjwaEhW[�iWjD[ln�atXDXwatX1�ÂTWVYnuT�e�jDa.Z*[�cDT�jwaoegkl|cw[EjDmWh�eghIk <wXw��egiWi*atkB[gmlc >.[^h\cw[EklVzXw]

���Ov \(� <wXw_zadadiO>.VYX�nte�_z_baokrlÀcw[7��egV{c�pr[^j�XwmInuT}e�h}ady^adh\c n�ÂV{cDTBe.iWjDVb[^jwVbcs|r< %8�l� % >pl � � �*Öo�g�onOpr[gj��ÂTWadhV{cU�Ue�]gaoX³mWiº�l�ÂTWVznuT7VzX�Vzh<cwTIa1ntevcDad�g[^jw|.[�p<wygatjw|mWjD�gadh\c >W�'< �� � �� �� � (� ' '��,OQ ~ Q(� < %��y><VYX(cwTIaEe^kWkljDatXDX�[gp$cDTWaEiWjw[lndatXDXÁ[^j(XÁcDe�cwmIX�8[^jDk���SUTWa�iWjD[`ndatXDXÁ[^j.XÁcDe�cwmIX.VzX�XÁcw[gjDatk�Vbh cwTWajwat�gVYXscDadjY<wX >+l¨�WÖo��$f�`�IÖ¸�g�mn�,OQ ~ ��� <ÁjDia>�VYX�XÁadc7cD[ cDTWa�e^kWkljDatXDX<[gp�cwTWa�adh\cwjD|ÎVbhcwTWaEe�jDjue¸|3<ÁiIjw[lnA><[�p³cDTWa�ndmWjDjwath^c(iWjD[`ndatXDX�l XscDVb_z_

<ÁiWjD[lnm{ �N| >�e�cÂcwTWVYX�XÁcDe��^a�* n�,OQ ~ ,-� <ÁiIjwV >ÎVzX&hWad�\evcDVby^ag��Xw[ÎcwTWa=<Áat_zXwa�>ÎZWjue�hfnuT VzXcDeg]gadhº�,Xwa�cwcwVzhW�qcDTWaBXÁcDe�cwmIX�[�pÂcwTIaBn�mIjwjDadh\c�iWjD[�Òn�aoXwXfl �on�cD[ <D�W�lÆGÌ$Ìc% >W�³SUTIa}jwaoegXw[ghÑpr[gjP<w�g[�ÒVbhI��cw[(XÁ_zadatia>�eghIk1cDTWa�<De¸��eg]gathWVbhI�ÂiWjwVz[gjDVbcs|F>�e�jDahW[�cDatkF�,OQ�� B(� <wXw�UcDnuTO>�VYXUcwTIadh}ndeg_b_zatkF�

'< � � � � � � ( � � � �,Z�F\O7(� <Áia>�VzXUe�XscuevcDVzn½yve�jDVzegZW_ba�l �WÖ�(g�4n¥�`�ÂTWVYnuT7�EateghIXcDTIevc V{cuX yveg_bmWa�VzX VbhIV{cDVzeg_bVYXÁaok cw[� datjw[ lÁÖo�g�g�oneghIk�VzX(iWjDatXwadjDygaok}Zfadcs�8atadh�nde�_z_YXd��)W[gj(cDTWa.y^adjD|

�fjDXÁc7ndeg_b_Â[^h"<DXÁ�UcunuTa>W��<Áia>�VYX<Xwa�cËcw[�i*[gVzh\cËcw[<wiWjD[`no{ ��| >2

,Z�F\ �-� <wXDe¸y`ma>�VzX,ndeg_b_zatk(cD[½XDe¸yga¢cwTIa8XÁcDegnu](i*[gVzh^cDadj,e�hIkcDTWaEadh`y`VbjD[ghI��ath\c½i*[gVzh^cDadj(pr[gj½cwTIaEndmWjDjwath^c(iWjD[�ÒndatXDXUVbh <wm�� m jDXDe¸yy> ,Z� � B-� <ÁjDa�cDma>�VzX�ndeg_b_zatk�cD[&jDatXwa�c4cDTWa7]^adjDhWad_�egkWkWjwaoXwXjDad�^VzXÁcwatj�pr[^j�Xwad�^�Eadh\c �.�&cw[qcDTWa�y¸eg_bmIaBiIe^XwXwatke^X�e�h�e�jD�gmI��ath\cslrcwTWVYX4nte�mIXwatX�e�nuTIeghW�gaEVzh�cDTWandmWjDjwath^c1iWjD[ln�atXDX * n��¼eghIk}cD[�jwaoXÁadc�cwTIaEXÁcDe^nu]}e�hIkath`y\VzjD[ghW�Eadh\c,if[^Vbh\cwatjDXGcD[½yve�_zmWaoX,egiWiWjD[giWjDVYevcwa³cw[cDTWaËjDady`VzXwatk�n�mWjDjDadh\c(iIjw[ln�aoXwXt�¼�ÂTW[^XwaEa�9latndmlcwVz[ghVYX�egZf[^mlcUcw[ËZ*a�jwaoXÁmW�EaokF�SUTWa�n�[g�.ZWVzhIevcDVb[^h [�p(XÁmIntn�aoXwXwVby^a7ndeg_b_YX�[gh�<DXwe¸y`ma>e�hfk <wjwadcwma> e�c�cDTWVYX�i*[gVzh^c nd[ghIXÁcwVbcwmWcwatX e XÁ[gÒ�nte�_z_baok

<wnd[gjD[gmlcDVbhIa 4smW�Eia>�lÉÍ$ps�M<ÁaA9WnuTIe�hW�^a�4smW�Eia>([gh�cwTWa�Í8|\ÒZ*adj1[gj+<wƺ[^egk %8�`� >7[ghqcDTWa �N#^�g�Ë[^j <DÇ}[vyga.�`cDegnu]y>[ghBcwTIa4���`�v�^�on¥�SUTWVYX�cwVz�Ea7TW[v��ady^adj1cDTWaBnd[gjD[gmlcDVbhWa 4smI��i VzX�prjw[^�iWjD[ln�atXDXU�.cw[ËiWjD[ln�atXDXU�ulrhW[gc�ygadjD|<Vzh\cwadjDatXÁcwVzhW� * n��, ,aQ��'� SUTWaEXÁadc([gp$iWjD[`ndatXDXÁaoX�VYX1XÁaoe�junuTWatk�cD[��fhIkqcDTWaiIjw[ln�aoXwX��ÂTW[^Xwa.XÁcDe�cwa.VzX <D�lÅUx½~>7eghIk}�ÂTWVYnuTqVYX_z[^e^klatk�e�hfk7pr[^jÂ�ÂTWVYnuT@<wi iWjDV?>�VYXÂe.�Ëe�9`Vz��mI���

SUTIa�XÁaoe�junuT VYXqXÁmfndn�aoXwXÁprmW_�eghIk�iWjw[lndatXDX �<Ö�VYXpr[^mWhIkF� l ~4� �½�USUTWa�XscuevcDa&[�p4iIjw[ln�aoXwX �.���UegX4smfXsc4nuTIeghW�gaok�prjw[^� <D�lÅUx�~`>ËcD[@<u�W�lƺÌ8Ì %c>EVbh<DXÁ_zadatia>4Xw[4Vbc8hW[._b[^hW�gatj$Xwe�cwVYX �fatX$cwTWa(XÁaoe�junuTEndjwVbÒcDadjDVb[^hOn�

, , �y\-� �`VzhIn�a <ÁiO>�VYXEhW[gcP<w~�x½ÆºÆ�>W�¢cwTIa}Vzkl_za�_b[`[^iÑVYXhI[�c�adh\cDadjDatk�, ,O,O\-� <ÁjDa�cDma>Il �\�N$^�on�nte�mIXwatX�eÎn�[^jw[^mlcwVzhWa 4smW�EiLcw[iIjw[ln�aoXwX �7Ö��ÂTWVYnuTÑZ*atnd[g�EatXËcwTWaqndmWjwjDadh\cEiWjD[�ÒndatXDXd�

�ÏTfevc½VYX�iIjw[ln�aoXwX �7Ö�%���c½VYX�eBn�[^i\|B[�pOiWjD[ln�atXDX�.�I�G�ËegkWa<evc�e�iWjDady`Vz[gmIX�XÁcDeg�gaE[�p�cwTWa7_ze�cÁcwatj�' XaA9lVzXÁcwathIn�a^�

SUTWVYX�nde�_z_O[ghW<ÁjDa�cDma>B��e^X½hI[�c�iWjDatn�aoklatk&Z`|&e�nde�_z_[ghr<DXwe¸y`ma>½ZfaondegmIXÁaUcDTWaÂhWaon�atXDXDe�jD|4VbhWpr[gjD�Ee�cwVz[gh�TIegX³Vbhp¨egn�cÂZfatadh}Xwe¸y^atk�e�_zjwaoegkl|^� l¨�ÏTWadjDa %�n, ,O,��-� <wXwmWjDad�o>4VzXÂe�jD[gmlcDVbhWa�Ö¸��#m(4nO�ÂTWVYnuT�nd[giWVzatXUVzh\cw[cDTWaLmIXÁatjÑ�E[lklaLXÁat�g�Eadh\cDe�cwVz[ghMjDad�^VzXÁcwatjDXt�<cDTWayveg_bmWaoX�e�iWiIjw[^iWjwVYevcDa�pr[^j�cDTWaÏn�mWjDjDadh\c�iIjw[ln�aoXwXt�SUTIatXwaËTIe¸ygaËZ*adath�XscD[gjDatk�ate�jD_zVbatj�Vbh�cDTWa7e�jDjue¸|`X

<wm�� m mWVYXweo>�eghIk@<Ám�� m mIVzXDk1>W�SUTWa�ygatjw| �fjDXÁc�nde�_z_�[^h@<DXÁmWjDad�4>�nd[giWVzatX tadjD[\aoXUe�hIkXwadjDygatX�hW[EjDateg_FiWmWjDif[\XÁa^�

#WÖ

Page 40: A Commentary on the Sixth Edition UNIX OS -- Lions

, ,17�Q(� SUTWa@<D�W�`��Ô% > #fe��}VYX�hI[�c�Xwa�co�OXÁ[}cDTIevc.cwTWVYXadhWVz�g�Ëe�cwVYn}lÉ�g�m#g×on.Xwatn¥cDVb[^hÏnde�h Z*a}Vb�^hW[gjDatk pr[gjhW[v��, ,17 ~ � ),Vbhfe�_z_b|r<wXw�UcDnuTO>�jwadcwmWjDhIX$�ÂV{cDTBe4yveg_bmWa½[�pe<tÖ�>W���mlcÂ�ÂTWadjDa�kl[`atX�cwTIaf<ÁjDa�cwmIjwha>.jDa�cwmIjwhBcw[ %�� �a�

���IHm6�5�2F2 ��K��

SUTWa=<ÁjDa�cwmIjwha> pr[^_b_z[v��X}yve�_zmWaoX&Xwa�c�Z`|�cwTWa Xscuegnu]i*[gVzh\cwadj.e�hIk�cwTIa<adh`y`VbjD[ghI��ath\c4if[^Vbh\cwatjt��SUTWatXwabl 4smfXscZ*a�pr[^jwa�cwTIa�jwadcwmWjDhOnBTIe¸yga�yve�_zmWatX�a � mIe�_1cD[ÑcDTW[^Xwa�Vbhpr[^jDnda}�ÂTWadhÏcDTWaq�E[^XÁc7jDatndadh\cP<wXDe¸y`m�lrm�� m juXwe¸y1n >��UegXi*adjwpr[gjD�EatkF�~�[v�ÏiIjw[ln�aoXwX��7Ög�\�ÂTWVznuT7VzX8[ghW_z| 4smIXÁcUXÁcDegjÁcDVbhW��TIegXhWatygatjGi*adjwpr[gjD�Eatk�eE<wXDe¸y`ma>W�¸ZWmlc¢yve�_zmWatX,��adjDa8XÁcw[^jwaok�Vbh<wm�� m jDXDe¸yy>½Z*a�pr[^jwa�cwTWa(n�[^i\|.[�p�iWjD[ln�aoXwX����4��e^X³�ËegklaZ`|}<ÁhWat�ÂiWjw[ln�>W�g�ÂTIVznuTËTIe^kEZfatadh7nte�_z_baok�prjw[^� <w�Ëe�Vzha>W�SUT`mIX<VzhÏcDTWVzXBnde^XÁa^� 0 � � ����0 $&��� ����+1� �1! 0 � � � !� ��'�� 0 + ��� ����� � � ��0 � � ����� $2� +�� +�� � rl Æ�[`[g]�[vygadjcDTWVzX�e��^egVbhº�^cD[ËZfa4XwmWjDa1|g[gm�mWhIkWadjuXscue�hIk1* n'< �� � �" � � � " � " �� �SUTWaÂXÁcw[^jw|4Xw[(p¨e�j �ºiWjD[ln�atXDX �.�W��TIe¸y`VzhW�1n�jDatevcDatk�e½nd[gi`|[gpWV{cuXÁat_{pIVzh4cDTWa8pr[gjD�L[gpIiWjD[ln�atXDX �7Ö^�vTIegXG�g[^hWaOcw[1Xw_batadi��Ô½X$e1jDatXwmW_{c8iWjw[lndatXDX �7ÖÂTIegX$Zfaon�[g�EaUcDTWa½ndmWjwjDadh\c³iWjD[�ÒndatXDX<e�hIk TIe^XËjDa�cwmIjwhWaokÑcw[ <Á�ËegVbh >��ÂVbcwTÏe�yve�_zmWaq[gp[^hWag�O~�[v�LjDategk7[gh��z�b��yv , ~ � SUTWa�XÁcDe�cwat��ath\cDX�Vzh <w�EegVbhO>E�ÂTWVznuTqegjwa4nd[ghIkWV{ÒcwVz[ghIeg_F[gh <ÁhWat�ÂiWjD[`n�>.egjwa1hW[v��a�9latndmlcwaok ��yv ,O\(� <ÁaA9liIe�hIka> l �g�g�m(4n �IhIkWX�eÏhWad���._zegjw�^adjqegjwaoe

lÀprjD[g� x(�`� ¼Ì� �#^��cD[Wl x½�`� FÌ �.Ö�n N#\����[gjukWX npr[gj4iIjw[ln�aoXwX �<Ö^�,eghIk�n�[^iWVzatX1cDTWa7[^jwVz�gVzhIe�_³kIevcDee�jDate.Vbh\cD[�Vbct���hqcDTWVzX1ntegXwag�¼cwTIa.[^jwVz�gVzhIe�_,mIXwadj�kWe�cDe7egjwaoe7nd[ghlÒXÁVYXÁcDX([ghW_z|q[gp�e@<Ái*adj�iWjD[ln�atXDX(kWevcue�egjwaoem>I�*�ÂVbcwT datjw[�_zadhI��cwT.kWevcue�e�hfk4Xscuegnu]�e�jDate^Xd�GSUTWa$[^jwVz�gVzhIe�_e�jDate.VzXUjDad_zate^XÁaok�

�yv ,��(� <ÁaoXscue�ZWmIj >�VzX�mIXÁaokÓcw[ XÁadc�cwTWa <wiWjD[�cw[gcs|`ifa�>XÁat�g�Eadh\cuevcwVz[gh3jDad�gVYXÁcwadjuX��ÂTWVYnuTMe�jDaÏXscD[gjDatk3Vbh<Ám�� m mWVYXweo> e�hIk <Ám�� m mWVYXwka> pr[^j�_ze�cwatj�mIXÁaÎZ`|<wXwmWjDad�o>I� <ÁaoXscue�ZWmIj >�ndeg_b_YXP<DXÁmIjwat�o>�egXËVbcDX7_ze^Xscegn�cwVz[gh��SUTWa(iIe�jue��Ea�cDadjuXOpr[^j�<watXÁcDegZWmWj >4e�jDa�cDTWa�XÁV� daoX8[gpcwTWa�cwaA9\co�WkWevcue�eghIk<XÁcDegnu]ËegjwaoegX³iI_bmIXUegh<VbhfklVzntevÒcw[^jOcw[�klatndVzkla½�ÂTWa�cDTWadj$cwTWa�cwaA9\cUe�hIkËkIevcDe�e�jDategXXÁTI[gmW_Yk�Zfa4VzhqXwadiIegjDe�cwa�egkWkWjwaoXwXÂXwiIegndatXt�`l ~�ady^adjcwjDmWa�[gh�cwTWas%$Äd%�Ö^Ö �N$^�W� n�SUTWaËXÁV� daoX(egjwaEe�_z_¢VbhmWhWVbcDXÂ[gp�#\����[gjukWX�

�yvOB Q(� <wnd[gi`|g[^mlc >=lsÖ¸�g�g�on}VYX�e�h egXDXÁat��ZW_zadj�jD[gmlcDVbhWa�ÂTWVYnuT<n�[giIVbaoX8egh7e�jDjDe¸|�Vbh<]^adjDhWad_¼XwiIegnda�[�pºXwifaon¥ÒV �fatkËXwV( ta�Vbh\cD[�e�jDad�gVz[ghEVzh<mIXwadj$XwiIe^n�ag�¢È�atjwa�cwTWae�jDjDe¸| <ÁVYn�[lkla�>�VzX�nd[giWVzatk�Vbh\cD[�egh�egjwaoe7XÁcDegjÁcDVbhW�evcÂ_z[`ntevcDVb[^h tadjD[.Vzh�mIXÁatj�XÁifegn�a�

�yvOB�g%� SUTWap<wjwadcwmWjDha>1VYX³hW[gc8XÁi*atndVzeg_ ��)WjD[g� <Á�ËegVbha>1Vbc�^[`atX,cw[f<DXscue�jwc >�l¨�^�\�v�4n��ÂTIadjDa8cDTWaUcwTIjwataÂ_ze^XscOVzhlÒXÁcwjDmIn�cwVz[ghIXOTfe¸yga8cwTWaÂa��*aon¥c$[gp¼nte�mIXwVbhI� �OC �� %$&0 � +����� $ !��%� � +,'�� +,� 0 � � ��� !�01��$2 �0 � +�� ��0 $ !%��� � +�'����'�'�����!�!��,�%�.+ EVÉ� a^��cDTWaEa�9latndmlcwVz[gh�[�pUeBnd[gi`|}[�pcDTWa �IjDXÁc1VbhIXÁcwjDmIn�cwVz[gh&Vzh <wVznd[lkla�>I�(SUTWa�VzhIXscDjwmfn¥ÒcDVb[^hIX$XwmWZIXwa � mWath\cw_z|.aA9`aon�mlcDatkËegjwa�nd[giWVzatX³eg_zXw[�[�pVzhIXÁcwjDmIn¥cDVb[^hIXUVzh <wVznd[lkla�>I�

ÔOS�SÂÈ��Á�E%q!½�s~�S1�WSÂȽÌÑ�s~��sSU�sÔ�ƺ�Á�lÔOSU� !(~�!d)SÂÈ�ÌÏ� ��lSÂÌ$Ç��Á�}Íj!(Çb%8ƺÌ$SÂÌ��%³jD[ln�atXDX �7Ö�VzXBjwmIhWhWVzhW�ÑeghIkÏcD[Ñe�_z_(Vbh\cwath\cDX�e�hIkiWmWjDi*[^XwatXt�$VYX<e�hW[gjD�Ëe�_ÂiWjD[ln�atXDXt� ��cuXËVzhWV{cDVzeg_Âpr[gjD� VYX

l¨eg_b�E[\Xsc nOcDTIevcÂ�ÂTWVYnuTB��[gmI_zkBn�[g�Ea½prjw[^�:n�[^�EiWVb_YevcDVb[^h��_z[^egkWVbhW�1e�hfk.aA9latn�mWcwVz[gh�[�p*cwTWa�XwVb�EiW_zag�^ZWmlc³hW[^hlÒÉcwjDVby`VYe�_<uÍ >.iWjD[g�^jDeg� �

� 4���� A �Q�%�$N � � = N � � �Q�%�$N � &8� �Q� � � �=��>= ��� � �Q�%�QN � �Q�%�$N � �'�5&3�4 � �0= �$,��5&�

SUTWa�a � mWVzyve�_zadh\c�egXDXÁat��ZW_zadjUiWjD[g�^jDeg�?VzX� )'�4=���= ��Q�8�$N�Q�8�$N #9>� �

�Q�8�$N # � �Q�8�$N�

�Q�8�$N � � � = N � � ���%�$N � ���

��pUcwTWa�XÁ|lXÁcwad��ndeg_b_³[^h <ÁaA9`aonA>Bp¨e�Vz_YXElra^� �f�7cDTWa �I_za< �va�cun �¸VzhWVbc >½nde�hIhW[�c¢Zfa�pr[^mWhIkanºcwTIa�iIjw[ln�aoXwXGp¨eg_b_YX,Vbh\cw[�ecwVz�gT\c$_z[`[gi��`e�hfk�cwTWatjwaÂcDTWa�iWjD[ln�aoXwXw[gj³�ÂVz_z_fXÁcDe¸|g�^a�9Wn�atilc�ÂTWath7cDTWa�[lndnde^XÁVz[ghfe�_Fn�_z[lnu]<Vbh\cDadjDjwmWiWcU[lntn�mWjuXd�Ô klaoXwndjwVzilcwVz[gh3[�p�cwTIaÏprmWhIn�cwVz[ghIX�i*adjwpr[gjD�Eatk3Z`|< �va�cun �¸VzhWVbc > ndegh/Z*a pr[^mWhIk Vzh/cDTWa¿Xwatn�cwVz[gh <Á�s~��sSl ]½�Á�w� n >E[�p,cwTIa4x%$Ç��

#\�

Page 41: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � �*�j�e���e

SUTWaOiIjwaty\Vz[gmfX�nuTIe�iWcwadj¼cDjDe^n�aok�cDTWa$klatygat_b[^iW�Eadh\cDX¼�ÂTWVYnuT[lndndmWj e�pÀcwadj=<scDTWaÐ[gi*adjuevcDVbhI� XÁ|lXÁcwad�JTIegX Zfatadh?jDa�ÒZ*[`[�cwaok1>W�³eghIk�VzhÑXw[&kl[gVzhW�qVzh\cwjD[lklmIn�aok�eqh`mW�.Zfatj.[gpXwVb�^hWV �fndegh^c½prate�cwmWjDatX½[�p³cDTWaEiWjD[`ndatXDX�nd[ghIndadilco��!½hWa.[gpcDTWaÂe�Vz�EX¢[gpWcwTIVzX³nuTfe�ilcDadj¢VzXGcD[(�^[½Zfegnu]4e�hfk�jDa�Ò�a�9liW_z[gjDaXw[g�Ea1[�p,cwTWa�XDe��Ea��gjD[gmIhIk<�E[gjDa(cwTW[^jw[^mW�gTI_b|^�SUTWatjwaÂe�jDaÂe(h\mI��Z*adjO[�p¼XÁatjwVz[gmfX,kWV �<n�mI_{cDVbaoXOVbhEiWjD[�Òy`VYklVbhI�Le �gadhIadjue�_z_b| egntn�atilcDegZW_ba kla �fhWV{cDVb[^h¿[gp3<ÁiWjD[�ÒndatXDX >I� SUTWaoXÁa}egjwa�e�]`Vzh cD[�cDTWaqklV �<n�mW_bcwVzatXEp¨e^n�aok Z`|cDTWa<iWTWVz_z[^Xw[giWTWatj��ÂTW[q��[gmW_Yk�e�hIXw��adjf<Á�ÂTfevc4VYX�_bVbpra %�>��a.�ÂVz_z_GZ*a.Vzhq�^[\[lkqnd[g�EiIegh\|�Vbp$�8a.ZWjDmIXÁTqcwTWa.��[^jwaXwmWZlcD_ba�i*[gVzh\cDXU_zVb�^T^cD_b|�egXwVzkWag�SUTWaqkla��IhWVbcwVz[gh pr[gjz<wiWjD[`ndatXDX >�e�_zjDategkW|��gVzygadhº�i<weiWjD[g�^jDeg� VbhEa�9laon�mlcDVb[^ha>W��kl[`aoX¢jwaoegXw[ghIegZW_b|1��ad_z_lVbhEXwmW��Ò�^atXÁcwVzhW�q�ÂTIe�c�VzX�Vbh\cDadhIklaokF�&È�[v�8atygadj�Vbc�kW[\aoX4hW[gc��WccDTWa�nde^XÁa1[gp,atV{cDTWadj�iIjw[ln�aoXwX ����cDTWjD[gmW�^TW[gmlcÂVbcDX�_bVbpra�[gjiWjD[ln�aoXwX �7Ö(klmWjDVbhW��V{cuX��IjuXÁc$�E[g�Eadh\cDXt�OÔ�_z_f[gcwTWatj$iWjD[�ÒndatXDXÁaoXUVbh�cwTIa4XÁ|lXÁcwad�:TW[v�8atygatjUegjwa1n�_zategjw_z|7e^XwXw[ln�VYevcwaok�ÂVbcwT�cwTIa�a�9latndmlcwVz[gh�[�pOXÁ[^�Ea(iIjw[^�gjue�� �I_za�[gjÂ[�cDTWadjo�%³jD[ln�aoXwXwatX�nte�h}Z*a�Vzh\cwjD[`kWmIn�aok�Vbh\cw[BklVzXDn�mfXwXwVb[^hIX�[gp[^ifatjDe�cwVzhW��Xw|lXscDad�ËX�e�c�cs��[E_batygat_zXt�Ô�cËcwTIa}mWiWi*adjË_zadygat_ ��<ÁiWjD[ln�aoXwX >qVYXËe�h Vb�Ei*[gjwcDegh^c[^jw�\e�hWVYXÁVzhW��n�[^hIn�atilc�pr[gj�kWatXDn�jDVbZWVzhW��cwTIa7egn�cwVzy\Vbcs|&[gpUend[g�EiWmlcDadj7Xw|lXscDad� egX<e��ÂTI[g_zag�L��cBVYXË[�pÀcDadhÐaA9`i*atkWV{Òath^c�cw[�y`Vbat�ÏcwTIa(_Yevcwcwatj�e^X$cDTWa1n�[g�.ZWVzhWatkBegn¥cDVby`Vbcs|Ë[�pGeh`mW�.Zfatj8[gp�iWjw[lndatXDXÁaoXd�^ategnuT<e^XwXw[ln�VYevcDatkE�ÂVbcwTBe4iIe�jwcwVYn¥ÒmW_Ye�j¢iWjD[g�^jDeg�LXwmInuT�egXºcwTWaY<wXwTWat_b_ >W�v[^jºcDTWaY<ÁatkWV{cD[gj >W�ºÔklVYXDn�mIXDXÁVz[ghB[�pGx½~���¾ evc�cwTIVzXU_zady^ad_¼VzX��^Vby^adh7Vzh<cDTWa�XÁaon¥Ò[^hIk�TIe�_bp³[�p³ÅÂVbcDnuTIVbao' X(e�hIk}SUTI[g�EiIXw[ghZ' XÂiIegifatjt� <wSUTWax½~���¾ SUVz��adÒ�XwTIegjwVzhW�Ë�`|lXscDad�s>W�Ô�c4cDTWVzX4_batygad_³cwTWaËiWjD[ln�aoXwXwatX(cDTWad�ËXwad_zygatX�egjwaËnd[ghlÒXwVzkWadjDatk�cD[½Z*a�cwTWaÂe^n¥cwVzyga�adh\cDV{cDVbaoX¢Vbh.cwTWaÂXw|lXscDad���v�ÂTWVz_bacDTWaEVzklath\cwVbcwVzatX1[�p8cwTWaEcDjwmIa�e^n¥cwVzyga�ad_zad�Eath^cuXd��cwTWaËiWjD[�ÒndatXDXÁ[^j�e�hIk�cwTWaBifatjwVziWTWatjDeg_8klaty\VYn�aoXd�Oegjwa7XwmWZW�Eatjw�^atk �cDTWaÑiIjw[ln�aoXwXwatX�e�jDa�Z*[gjDh��._zVzygaÑeghIk klVza�BcwTIad| a�9lVYXscVzh�yvegjw|`VzhW��h\mI��Z*adjuX�ºcwTWat|q�Ëe¸|&egn � mIVbjDa�eghIk�jwat_baoegXwajDatXw[gmWjun�aoX�½cwTIad|Ï�Ëe¸|ÎVbh\cwatjDe^n¥co�½n�[`[^ifatjDe�cwag�½n�[gh�#IVzn�ct�XwTIe�jDa(jwaoXÁ[^mWjDndatX�`a�cDng�Ô�c³cDTWa�_z[v�8atjO_batygad_É��<wiWjD[`ndatXDXÁaoX >(e�jDaÂVzhIegn�cwVzygaÂadh\cDV{ÒcDVbaoXº�ÂTWVYnuT.egjwa8egn¥cDatk�[gh4Z`|�egn�cwVzyga$ath\cwVbcwVzatX,XÁmInuT.egXºcwTWaiWjD[ln�aoXwXw[gjo�O�8|�e�_z_b[v�ÂVzhW��cwTIa�iWjw[lndatXDXÁ[^j8cD[<XÁ�ÂVbcDnuT�prjDa�Ò

� mWath^cD_b|EprjD[g�3cDTWa½aA9latn�mWcwVz[gh<[gpº[ghWa½iWjD[`ndatXDX$Vz�Ëe��^a�cw[eghW[�cDTWadjo��cDTWa�Vz��iIjwaoXwXwVb[^hËnde�hEZ*a�n�jDate�cwaok�cDTIevc�ate^nuT�[gpcDTWaEiWjw[lndatXDX½Vz�Ëe��^atX1VYX�klady^ad_z[giWVzhW��n�[gh\cDVbh`mW[^mIXÁ_z|qe�hfkcDTWVzX�_baoegkWX�cD[.cDTWa�mWiWi*adj�_batygad_FVzh\cwatjwiWjDa�cuevcDVb[^h��!½mWj�iIjwaoXÁath^c�nd[ghIndadjDhBVYXÂ�ÂVbcwT�cwTWa�_b[v��_batygad_FVzh\cwatjÁÒiWjDa�cuevcDVb[^h �¢�ÂV{cDTBcDTWa4XÁcwjDmIn¥cDmWjwa1[gpGcDTWa�iWjD[`ndatXDX�Vb�Ëe��^ag��ÂVbcwT cwTWa�kla�cue�Vz_zX.[�p�aA9latn�mWcwVz[gh eghIk��ÂVbcwT�cDTWaB�Eaoe�hIXpr[^j�XÁ�ÂVbcDnuTWVzhW��cwTIa�iWjw[lndatXDXÁ[^j�Z*a�cs��adathBiIjw[ln�aoXwXwatXt�SUTWa1pr[^_b_z[v�ÂVbhI�.[^ZIXÁatjwyve�cwVz[ghIX��Ëe¸|<Z*a(�Ëe^kla4e�Z*[gmlciWjD[ln�aoXwXwatX�VzhBcDTWa4x�~���¾ n�[^h^cDa�9`c �

� /�� cwTWa1a�9lVYXscDadhInda�[gpGe�iIjw[ln�aoXwX8VYX$Vz�EiW_bVzatkBZ`|EcwTWa(a�9`ÒVzXÁcwathIn�aE[gpUe�hW[^hlÒÉh`mW_z_³XÁcwjDmIn¥cDmWjwaEVzh�cwTWaz<wiWjw[ln�>e�jDjDe¸|^�¢V � ag� e <wiWjw[ln�>&XÁcwjDmIn¥cDmWjwa�pr[^j��ÂTIVznuT cwTWaad_zad�Eadh\cs<Ái Xscuevc >�VYXUhW[ghWÒÉh`mW_z_1

� � pr[gjEate^nuT�iWjD[`ndatXDX4cDTWadjDa�VzXEe <wifatjEiWjw[lndatXDX.kWe�cDeegjwaoem>�n�[^h\cDe�VzhWVzhW�}eqn�[^i`|q[�pUcwTIaP<ÁmIXwadj >�XscDjwmfn¥ÒcDmWjDa�� � � cwTWa�iWjD[`ndatXDXÁ[^jBXwifathIkWXBV{cuX�adh\cwVzjwa�_bVbpra�a�9latndmlcwVzhW�[^hWa�iWjw[lndatXDXº[^j,eghW[�cDTWadjjlraA9Wn�adiWc,�ÂTWath�VbcOVzX,jDatXÁcÁÒVzhW�ËZ*a�cs��adathBVzhIXÁcwjDmIn¥cDVb[^hIX n%� ��� V{cEVzX.i*[^XDXÁVzZW_za<pr[gj.[ghWaBiWjD[`ndatXDX�cD[�n�jDate�cwa<[^j�kWa�ÒXÁcwjD[v|<e�hI[�cwTIadjÂiWjD[ln�atXDX�� 2 � e4iWjD[ln�aoXwX8�Ëe¸|Ee^n � mWVzjwa½e�hIkËi*[^XDXwatXDX$jDatXw[gmWjun�aoXO[�pyvegjwVz[gmIXU]`VzhIkWXt��' �� ��� 5 � � � � �ÅÂVbcDnuTWVzaÂe�hIkESUTW[^�EiIXÁ[^h�Vzh�cwTWatVbjOiIegifatj³kla �fhWa�e+<ÁiWjD[�Òn�aoXwX >�e^X<cDTWa�aA9latn�mWcwVz[ghÐ[gp.e�h <wVb�Ëeg�ga�>I�Â�ÂTWadjDaqcDTWa<ÁVz�Ëe��^a�>4VYX�cwTIa1ndmWjDjwath^cÂXÁcDevcDa1[�p,e.iIXwadmIkW[�Ò�n�[g�EiWmWcwadjo�VÉ� a^��e�hqe�ZfXscDjDe^n¥c½kWe�cDe<XÁcwjDmIn�cwmWjDag�f�ÂTWVznuT}�Ëe¸|�Zfa.jwatilÒjDatXwadh\cwaok7VzhBatV{cDTWadj��EegVbh��Ead�E[gjD|<[^jÂ[gh�klVzXw]¼�SUTWa�iIjw[ln�aoXwX�Vb�Ëeg�ga�Vzh`yg[^_by^atXUcs��[7[^j�cwTIjwata�iWT`|lXÁVbÒndeg_b_z|7klVYXÁcwVzhIn¥c�egjwaoegX�[�p,��at�E[gjD| �� � �b� ��2 H ���N�Z�oK 6��A�N���m�����N2 �.�ÂTWVYnuT VzX�n�[^h^cue�VzhWatk�ÂVbcwTIVbh�cDTWa7n�[^jwaËjDatXwVYkladh\cb<ÁiIjw[lnA>�egjwjue¸|qe�hIk�VYXe^ndndatXDXÁVzZW_za1e�c�e�_z_FcwVz�EatX�� , �b� ��2p��/1��/+6�2FG 0P2F��� �v�ÂTWVYnuTËn�[ghfXÁVYXscuX¢[�p*cwTWaE<Ái*adjiIjw[ln�aoXwX�kWe�cDe�egjwaoem>I�^n�[^��ZWVzhWaokË�ÂV{cDT�e.XÁat�g�Eadh\cnd[gh\cDegVbhIVbhW�<cwTWa.mIXÁatj�iWjD[g�^jDeg�/kWe�cDeI��l¨if[\XwXwVbZI_b|1niIjw[^�gjue�� cwaA9`ct�IeghIkBXÁcDe^nu] � B��b� ��2M��2 � �j6�2FG 0P2F��� ���ÂTWVYnuT�VYXFhW[�cºeg_b�Ue¸|lX¼iWjDatXwadh\ct�nd[ghIXwVYXscuX}[�p<eÏXwad�g�Eath^c&nd[gh\cDegVbhIVbhW�Ï[^hW_z|�iWmIjwaiIjw[^�gjue�� cDa�9`cBVÉ� a^� jwadÒÉath\cwjue�h\c7n�[lkla&eghIkÏn�[^hlÒXÁcDegh\c�kWevcueW�Çqe�h`|4iIjw[^�gjue��ËXGkW[½hW[gcOTIe¸ygaUe1XÁatiIe�juevcDa$cDa�9`c³XÁat��Ò�Eadh\ct�E�ÏTWatjwaË[^hWaEVzX�kWa �IhWaokF�Ge�XwVbhI�g_zaEnd[gi`|}�ÂVz_b_³Z*aXwTIe�jDatk<eg�E[ghW��e�_z_*iIjw[ln�aoXwXwatX$�ÂTWVYnuT�egjwa½a�9latndmlcwVz[ghIX8[�pcwTIa4Xweg��a1iIegjÁcDVzndmW_Ye�jUiWjD[g�gjue����

�' -( ��� � � � ��$��2�!0�� �#0 � � , �����SUTWVYX}XscDjwmfn¥cwmIjwa^�½�ÂTWVYnuT VYX�i*adjD�EeghWadh\cD_b|ÐjDatXwVYkladh\c�Vbh�Ëe�Vzh �Ead�E[^jw|^�³n�[gh\cue�VzhIX��IpÀcwadathÑat_bat�Eadh\cDXt�O[�p��ÂTIVznuTadVz�gT\cqe�jDa�nuTIe�juegn�cwatjDXt�½XwV:9 e�jDa�Vzh\cwat�gadjuXt�1eghIk�[ghWa�ei*[gVzh^cDadj½cw[�e�h�Vbh\cwat�gatjt�4Ì8egnuTqat_bat��ath\c(jDadiWjDatXwadh\cuX�VzhlÒpr[gjD�ËevcDVb[^h�cwTIe�c½��mfXsc1Zfa�egntn�atXDXwVbZW_za�e�c(e�h`|�cwVz�Eag�¼atXÁÒi*atn�VYe�_z_z|��ÂTWath�cwTWa7�EegVbh�ife�jwc�[�pUcwTIa<iWjD[`ndatXDX�Vz�Eeg�gaTIe^XUZfatadh}XÁ�Ue�iIifaok7[^mlcÂcw[ËklVYXÁ] �

<wi XÁcDevc ><�Ëe¸|�cDeg]ga.[ghWa.[�p8Xwady^adh&yveg_bmWaoX��ÂTIVznuTkWa �IhWa�XÁatygathÏ��mlcDmIe�_z_b|ÎaA9lnd_bmfXÁVzyga&XÁcDe�cwaoXd�Ó�lada_zVzhWatX��o#m(IÖ�cD[E�o#m(`� <wi #feg�o>�VYXBeghÐe��Ëe�_z�^eg� [gp�XÁV 9Ï[ghWa�ZWVbc�#feg�^X�ÂTIVznuT��Ee¸| Z*a�Xwa�c�Vbhfkladi*adhIkWadh\cw_z|g�M�`ata&_zVbhWaoX�o#g×IÖ�cD[E�o#g×^�

#m#

Page 42: A Commentary on the Sixth Edition UNIX OS -- Lions

<Ái e^kWklj >�VYXUcwTIa4egkWkljDatXDX�[�p,cwTWa4kIevcDeEXwad�^��ath\c ��

��p�cwTWa<kIevcDe�Xwad�^��ath\c1VYX�Vzh��EegVbh��Ead�E[gjD|cDTWVzX�VzX�e�ZW_z[lnu]<h`mW��Z*adj,�

[gcwTWatjw�ÂVYXÁa^�fVbpOcwTIa.kWe�cDe7Xwad�^�Eadh\c�TIe^X�Z*adadhXw��egiWi*atk�[gmWct�*cwTWVYX½VzX½e7klVYXÁ]�jDatn�[^jDk�h`mW��ÒZ*adj, <Ái XwV( ta�>�VzX8cwTIa1XwV� da([�p�cDTWa�kWevcue�Xwad�g�Eath^co�`��aoevÒXÁmIjwaok7VzhBZI_b[lnu]lX� <Ái iWjDV >}VzX4cwTWa�n�mWjDjDadh\c4iWjD[`ndatXDX4iWjDVz[gjDV{cs|^��SUTIVzX�Ëe¸|�Z*aBjDatnte�_Yn�mW_YevcDatk�prjD[g��cwVz�Ea<cD[&cDVb�EaBe^X.eprmWhIn�cwVz[gh�[�pd<Ái hWVYn�a�>W��<wi n�iWma>ËeghIk@<Ái cDVb�Ea�>2 <Ái iWVYk1>I�O<wi iWiWVYk1>Âe�jDa¢h`mW��Z*adjuXF�ÂTWVYnuT�mWhWV � mWad_z|VzkWadh\cwVbpr|Be�iWjD[ln�atXDXUe�hIk�VbcDXUiIegjwath\c� <Ái XwVb�4>W�d<Ái mIVzk1>I�M<Ái cwcs|\iO>qe�jDa<Vzh\y^[g_zygaok��ÂVbcwTa�9`cwatjwhfe�_½nd[g�E��mIhWVzntevcDVb[^hÐV � ag�?�ÂVbcwT��EatXDXweg�gatX[gj`<wXwVb�^hIe�_YX >�prjD[g� [^mlcDXwVzkWa$cDTWa$iWjD[ln�aoXwX�' XGhW[^jw�Ëe�_kl[g�ËegVbh <Ái �UnuTIe�hO>�VYklath^cDV �fatXt�<pr[gjÑe <wXw_batadiWVzhW�o>LiWjD[�Òn�aoXwX l�<wi XÁcDevc >3a � mIe�_YXÎadVbcwTIadj <D�I�lƺÌ8Ì % >¿[gj<D�`��Ô��sSj>on��`cwTWa�jDate^XÁ[^h<pr[^j�XÁ_zadatiWVbhI�2

<Ái cDa�9`cwia>.VYXUadVbcwTWatj�h`mW_z_F[gjUe.if[^Vbh\cwatj�cw[Ëe�hBadhlÒcwjD|4Vzh.cDTWap<Ácwa�9`c >(egjwjue¸|pl $4#g�^�on¥�g�ÂTWVznuTËnd[gh\cDegVbhIXy`V{cue�_�XÁcDevcDVzXÁcwVYndXUjDad�\e�juklVzhW��cDTWa1cwaA9`c�XÁat�g�Eadh\ct��' ), ��� �0�� ���$ � � 0�� �#0=� �� �3 � , �

!½hWa�nd[gi`|Ë[�pGcwTWau<ÁmfXÁatj >.XscDjwmIn�cwmWjDa1VzXÂeghBaoXwXwadh\cDVzeg_*VzhlÒ�^jwaoklVbath\c�[�p�aoegnuT <Ái*adj.iWjD[`ndatXDX4kWe�cDe&egjwaoem>I��Ô�cEe�h`|[^hWa}cwVz�EaqcDTWadjDaqVYX<a�9We^n¥cw_z| [^hWa&nd[gi`| [gp�cwTWa <wmIXwadj >XÁcwjDmIn¥cDmWjDa.�ÂTWVYnuT&VYX�egntn�aoXwXwVbZI_ba^��SUTWVYX½�^[`atX(mWhIklatj(cwTWahIeg�Ea}<wma>�e�hIk�VzX�eg_b�Ue¸|lX�cD[�ZfaEpr[^mWhIk�evc�]gatjwhWat_Oegk`ÒkljDatXDX1�WÖ�$^�g�^�g�EVÉ� a^�.e�c½cDTWaEZfat�gVzhWhWVzhW��[�p³cDTWaËXÁatygadh\cDTiIeg�ga1[�pGcwTWa�]^adjDhWad_�e^kWkljDatXDXUXÁiIe^n�a^�SUTWaI<ÁmIXwadj >�XscDjwmfn¥cwmIjwaqTfegX<�E[^jwa}at_bat��ath\cDXËcDTIe�hnte�h Z*aÑn�[^h`ygadhIVbath^cD_b|L[gj�mIXwa�prmW_z_b| Vzh\cwjD[`kWmIn�aok TWadjDag�SUTWa�nd[g�E�Eadh\cqegndnd[g�EiIegh\|`VzhW��aoegnuT�kWatn�_Ye�juevcDVb[^h [^h�`TIada�c���$�XÁmfndn�VzhIn�cw_z|ÑXwmW�g�^atXÁcDX�cwTIa�prmWhIn¥cDVb[^hÏ[�p1ate^nuTat_bat��ath\ct�)W[^jUcwTWa��E[^��ath\c�|g[gm�XwTW[gmW_YkBhW[�cDVznda �

� /�� <Ám juXwe¸yy>I��<wm � Xwe¸yy>Ï� <Ám XDXwe¸yy>��ÂTIVznuTLe�jDa}cs�8[�8[^jDkBe�jDjDe¸|lX8mIXwatkBcw[ËXÁcw[gjDa1yve�_zmWatX�pr[^jÂju�W�ljD�2� �� <Ám iIjw[ln�iO>7�ÂTWVYnuT&�^Vby^atX�cwTWaEegkIkljwaoXwX½[�p$cwTWaËn�[^jÁÒjwaoXÁi*[ghfklVbhI�+<wiWjD[`n�>1XscDjwmIn�cwmWjDaÂVzh.cDTWap<wiWjw[ln�>(egjÁÒjDe¸| � ��� <Ám mIVzXDea{bÖt��| >I�i>�m mWVYXDkZ{{Öo�N| >Ï�ÂTWVYnuTÓXÁcw[^jwa�iIjw[gcw[�Òcs|`ifaoX�pr[gj}cDTWa�iIeg�ga�e^kWkljDatXDXqe�hIk klaoXwndjwVzilcDVb[^hjwat�gVYXscDadjuX�

� ��� <Ám cuXÁV� da�>W�E<wm kWXwV( ta�>I�E<Ám XwXwV( ta�> �ÂTWVznuTLe�jDa&cDTWaXwV� da�[�p³cDTWa�cwa�9`c4Xwad�g�Eath^c1e�hIk&cs��[7iIegjDeg��adcwatjDXkWa �IhWVzhW��cDTWa&XwV( ta�[gp½cDTWaqkWe�cDe�Xwad�g�Eath^co�8�EaoevÒXwmWjDatkBVbhf#\����[gjuk<ZI_b[lnu]lXd�SUTWa1jDad�Ëe�VzhWVzhW�Ead_zad�Eadh\cDXÂegjwa�nd[ghIndadjDhWatkB�ÂV{cDT �

XDe¸y`VbhI� #I[\evcDVbhW�Ei*[gVzh\c�jwat�gVYXscDadjuXdl¨hW[�cÂpr[^jUcwTWa%8Ä`%�ÖgÖ���$^�4n�

mfXÁatjÂVzklath\cwV �fnde�cwVz[gh ife�jue��Ea�cDadjuX$pr[^jÂVbhIiWmlc �v[gmlcDiWmlc�[^ifatjDe�cwVz[ghIX� �f_ba4e^ndn�aoXwXUnd[gh\cwjD[g_ Xw|lXscDad�"nde�_z_FiIegjDeg��adcwatjDX� e^ndnd[gmWh\cwVzhW�EVzhlpr[gjD�ËevcwVz[ghº�

�' 43 ��� 5 �� 57� � � � � . �2 �/� � SUTWa <wifatjqiWjD[`ndatXDXqkWe�cDeÏe�jDateo>În�[gjDjDatXwif[^hIkWXBcw[ÏcDTWayve�_zVzk�ife�jwc lr_z[v�8atj4iIegjÁc n1[�pÂcDTWa7Xwadygath\cwT�iIeg�ga<[gp�cDTWa]gatjwhIad_UegkWkljDatXDXEXÁifegn�a^����cËVzX�Öo�^�N$�Z`|^cDatX�_z[ghW�f� SUTWa_z[v�8atj���(g×�Z`|\cwaoX�e�jDa�[lndn�mIiWVbaok�Z`|Be�h}VzhIXÁcDeghIn�a�[gp,cDTWa<ÁmfXÁatj >4XÁcwjDmIn�cwmWjDag�`_zate¸y`VbhI�i#g�`�1��[gjukWXOcD[.Z*a1mIXÁaok<egXUe]gatjwhIad_l�E[lkla�XÁcDegnu].e�jDateW�ql !½Z`y`Vz[gmIXw_b|4cwTWatjwaÂ�ÂVz_b_fZfa½egX�Ëe�h`|<]^adjDhWad_¼�E[lkla4Xscuegnu]lXUegX�cDTWadjDa4e�jDa½iIjw[ln�aoXwXwatXt� n�ÏTWVz_ba.cwTWa�iWjD[ln�atXDXw[gj�VYX(Vbhq]^adjDhWad_,�E[lklag�*cwTIa.yve�_bÒmWaoXÂ[�p¢ju��eghIk�jD�I�lcwTWa�ath`y\VzjD[ghW�Eadh\c�e�hfk�XÁcDe^nu]<i*[gVzh^cwÒadjuXt�.XwTW[gmW_Yk jDad�Ëe�Vzh �ÂVbcwTWVzh cDTWa jDeghW�ga �IÖA$\��$m$fÖ�cw[�WÖ�$o#`�g�g�^�`�FSGjDeghIXÁVbcwVz[gh.Zfat|g[^hIk�cDTWaUmWiWi*adjO_zVb�EVbc³�8[^mW_zkZ*a�cDjDegiWi*atk egX}e XÁat�g�Eadh\cuevcwVz[ghLy`Vb[^_ze�cwVz[gh��(ZWmlc}cDTWa_z[v�8atj8_zVb�EVbcÂVzX�iWjD[�cDatn¥cDatk7[ghW_z|ËZ`|EcwTWa1Vzh^cDad�^jwVbcs|Ë[�p�cDTWaXw[�pÀcs�Ue�jDag� l¨��c$�Ëe¸|�Z*a�hW[�cDatk.cwTfevcOcwTIa�TIe�jukl�Ue�jDa�XÁcDe^nu]_zVb�EVbc�[gilcDVb[^hBVYXÂhW[gcUmfXÁaokBZ`|7x½~���¾.� n�' (� ��� $ ��� ��� �

SUTWaqkWe�cDe�Xwad�^��ath\c<VzXBe�_z_b[lnde�cwaok e^XË[ghIaqXÁVzhW�g_zaqe�jDate[�p(iWT`|lXÁVYndeg_Â��at�E[gjD|�ZWmlc7nd[ghIXwVzXÁcDXE[gp½cDTWjDadaqklVYXscDVbhfn¥ciIegjÁcuX��� / � e}<wifatjÂiWjw[lndatXDXÂkWevcue�egjwaoem>2� � e4kWevcue4e�jDate½pr[^jOcwTWa½mIXwadj³iWjD[g�^jDeg���GSUTWVYX³�Ëe¸|�Z*aprmIjÁcDTWadj<klVzy`VzkWatk�Vzh\cw[�e�jDate^X�pr[^j�iIjw[^�gjue���cwaA9\co�VzhWVbcwVYe�_zVzXwatk�kWe�cDeEe�hfk7mWhIVbhWVbcwVYe�_zVYXÁaok�kIevcDe2� � � e�XÁcDe^nu]Ëpr[gjUcDTWa�mIXwadjÂiWjD[g�^jDeg���SUTWaEXÁV� da.[�pl¨e4n�VYX1e�_z��e¸|lXs<Dx½�`� FÌ >ËZW_z[lnu]lXd�1SUTWaXwV( tatX¼[�pZl¨ZOnFe�hfk�l n�nFegjwa¢�^Vby^adh1Vbh�ZI_b[lnu]lX¼Z`|E<Ámº� m kIXÁV� da�>e�hfk <wm�� m XDXwV( ta�>W�+lr��c4�Ëe¸|}Z*aËhW[�cDatk�Vbh�iIegXDXwVbhW�BcwTfevccwTIa4_ze�cÁcDadjÂcs��[E�Ee¸|�nuTIe�hI�ga�klmWjDVbhI�EcwTWa4_zVbpra4[�pOeEiWjD[�Òn�aoXwXt� nÔ XÁatiIe�juevcDa7cDa�9`c7Xwad�g�Eath^cËn�[^h\cDe�VzhWVzhW��[ghW_z|�iWmIjwacwaA9`c¢VYXOe�_z_z[`ntevcDatk�egX,[ghWaÂXwVbhI�g_zaUegjwaoe�[gpfiWT`|lXwVznte�_`�Ead��Ò[gjD|g��SUTWaBVzh\cwatjwhIeg_8XÁcwjDmIn¥cDmWjDa7[�pÂcDTWa�XÁat�g�Eadh\c�VYX�hI[�cVz��i*[gjwcDegh\cUTIadjDag�

#m$

Page 43: A Commentary on the Sixth Edition UNIX OS -- Lions

�' �' � � �10 �#" ��� ���� � � � � SUTWaÂVz�Ëe��^a�n�mWjDjwath\cw_z|4ZfatVbhI��a�9latndmlcwaokfl¨e�hfk.TIadhIndaUcwTWaVYkladh\cDV{cs|1[�plcDTWaUn�mWjDjwath\cºiWjD[`ndatXDX nFVzX,kla�cDadjD�EVbhWaok�Z`|(cwTWaXwa�cwcwVzhW�7[gpOcwTWaEXÁatygath^cDT}]gatjwhWat_,Xwad�^�Eadh\cDe�cwVz[ghqegkIkljwaoXwXjDad�^VzXÁcwatjt�(��p$iWjD[ln�atXDX �4V¢VYX�cDTWaËn�mWjDjDadh\c½iWjD[ln�aoXwXt�IcDTWadhcDTWa�jwat�gVYXscDadjUTIe^X�cwTWa�yve�_zmWaf<wiWjw[lno{ V |É� i egkIklj >I���cºVYX�[gpÀcwadh4kWatXwVbjue�ZW_za¢cw[�kWVzXÁcwVzhW�gmIVzXwT�Zfadcs�8atadh�eÂiWjD[�ÒndatXDX4Z*adVzhW�&aA9`aon�mlcDatk�Vzh�]^adjDhWad_8��[lkla�e�hIk�cwTWa�Xweg��a[^hWa�Z*adVzhW��a�9latndmlcwaokqVzh&mIXwadj(�E[`kWag����a.�ÂVz_b_¢mIXwa.cwTWacDadjD�EXi<Á]^adjDhWad_liWjD[ln�aoXwX ��V >4e�hfkt<wmIXwadj³iWjD[ln�aoXwX ��V >1cw[klathW[�cDab<ÁiIjw[ln�aoXwX �4V,a�9laon�mlcDVbhW�7Vbh}]^adjDhWad_G��[lkla�><e�hfk<wiWjw[lndatXDX ��V�aA9latn�mWcwVzhW�EVbh�mIXwadjÂ�E[lkla�>�jDatXwifaon¥cDVby^ad_z|g���pW��a³nuTW[^Xwa¢cw[�e^XwXw[ln�VYevcDa,iIjw[ln�aoXwXwatX¼�ÂVbcwT�iIe�jwcwVYn�mW_Ye�jaA9`aon�mlcDVb[^h�Xscuegnu]lX�juevcwTIadj�cDTIe�h��ÂVbcwT egh�ath\cwjD|&Vzh�cwTWa<wiWjw[ln�>�e�jDjDe¸|^�ocwTWath���a8��[gmW_Yk�nd[ghIXwVYkladj,]gatjwhWat_^iIjw[ln�aoXwX��V�eghIk mfXÁatjËiWjw[lndatXDX ��VÂcD[�ZfaqXwadiIegjDe�cwa�iWjD[`ndatXDXÁaoXd�juevcDTWadj$cwTIeghBklV �*atjwath\c�egXwi*atn¥cuX�[�pºe�XwVzhW�g_za�iWjD[ln�aoXwX��4VÉ��' �� � ����� � : � � 1� �� �10 �#"����SUTWa�XÁatygadh\cDTÏ]gadjDhWat_½Xwad�g�Eath^cuevcDVb[^hÎe^kWkljDatXDXËjDad�gVYXÁcwadj�.mIXsc³Z*a�Xwa�c$egiWiWjD[giWjDVze�cwat_b|^�G~�[^hWaÂ[�p*cwTIa�[�cDTWadjO]^adjDhWad_Xwad�^��ath\cDevcDVb[^h1jwat�gVYXscDadjuXFVzXºady^adjGkWVzXÁcwmWjDZ*atk4eghIk�XÁ[�cwTWatVbjyve�_zmWaoX�e�jDaËegXDXÁmI��aokF�}Ô�X���e^X4XÁatadh�ategjw_zVzadjo��cwTIa �IjuXscXwV:9�]gatjwhWat_liIe��^atX¢e�jDaU�Ëe�iWi*atk.cw[1cDTWa �IjuXÁcOXwV 9.iIeg�gatX¢[gpiWT`|lXwVznte�_O�Ead�E[gjD|g�º�ÂTWVb_za�cwTWaËatVb�^T\cwT�VzX1�ËegiWifaok�Vbh\cw[cDTWa<TWVz�gTWaoXsc.iIe��^a<[�pÂiWT`|lXÁVYndeg_³�Ead�E[gjD|g�}SUTWaBXÁV� da<[gpcDTWa4XÁatygath^cDT�Xwad�^�Eadh\cÂVzXÂeg_b�Ue¸|lX$cDTWa4XDe��Eag���hE]gatjwhWat_l�E[`kWa8cDTWa�Xwa�cÁcDVbhI��[�pIcDTWaÂmIXwadjO�E[lkla�Xwad��Ò�Eadh\cuevcwVz[gh jwat�gVYXscDadjuX4VYX�Vzh��gathWadjue�_8VbjDjDad_zadyve�h\ct��È�[v�UÒatygadj7cwTWat|Ðe�jDaqhW[^jw�Ëe�_z_z| Xwa�c�n�[gjDjDatn¥cD_b|Ñpr[gjBcwTIa&mIXwadjiWjD[ln�aoXwXt�SUTWa�adh`y`VbjD[ghI��ath\c(e�hfk&XÁcDegnu]�i*[gVzh\cwadjuX½if[^Vbh\c1Vbh\cw[cDTWaÂ]gatjwhWat_WXscuegnu]�egjwaoe�Vzh�cwTWa�Xwady^adh\cwT�iIeg�gag�^e�Z*[vyga8cwTWa<wmIXÁatj >�XÁcwjDmIn¥cDmWjwa^��' �� � � �� : � �� � � �10 �2" ���Ì8egnuT�egn�cwVzyvevcwVz[gh�[gp�e}mIXwadj�iWjD[`ndatXDX�VYX�iWjDatndatklaok�e�hfkXwmIndndadaoklatk Z`| e�h egn�cwVzyvevcwVz[gh [gpEcwTWa nd[gjDjwaoXÁi*[ghfklVbhI�]^adjDhWad_�iIjw[ln�aoXwXt��Ô�ntn�[^jDklVzhW�^_b|½Zf[gcwT(cwTWa$mIXÁatj��E[lkla$e�hfk]^adjDhWad_W�E[lkla½jwat�gVYXscDadjuX¢�ÂVb_z_fZ*a�iWjD[gi*adjD_z|.Xwa�c8�ÂTIadhWatygadje�iWjD[ln�atXDXUVz�Eeg�ga(VzX�ZfatVbhW�ËaA9latn�mWcwatkBVzh�mfXÁatjÂ��[lkla^�SUTWa�adh`y`VbjD[ghI��ath\c(e�hfk&XÁcDegnu]�i*[gVzh\cwadjuX½if[^Vbh\c1Vbh\cw[cDTWa�mIXwadj½Xscuegnu]BegjwaoeW�USUTWVYX�Z*ad�^VbhIX½egXUcDTWa�mIiWifatj�iIegjÁc[gpWcwTWaUatVb�^T^cDT�mIXwadj,iIeg�gag�vZImlcO�Ee¸|1Z*aUa�9`cwathIklatk.kl[v�ÂhlÒ�Ue�jukWXt�lag� �I�OcD[Ë[`ntn�mWi`|7cwTWa��ÂTW[^_ba�[gpGcDTWa4atVb�^T^cDTBife��gaeghIk7ife�jwcU[^j�e�_z_F[�p,cwTWa4Xwady^adh\cwT�iIeg�gag�ladcDng��ÏTWatjwaoegXUcDTWa4XÁadcÁcDVbhW�Ë[gpGcDTWa�]gatjwhIad_ºXwad�^��ath\cDevcDVb[^hjDad�^VzXÁcwatjDX$VzX8p¨e�VzjD_b|�cwjDVzy\VYe�_É�lXÁadcÁcDVbhW�.cwTIa(mfXÁatj�Xwad�^��ath\cDevÒcDVb[^h�jDad�^VzXÁcwatjDX8VYXÂ��mInuT�_zatXDXÂXÁ[f��' �� ��� � � � � �� Í8[^hIXÁVYklatj4e�iWjw[^�gjue�� [^h&cDTWaE%$Äd%�Ö^Ö �N$^�<�ÂTIVznuT�mIXwatXÖ^� �ËiIe��^atX�[gp³cwaA9`ct� #W� #<iIeg�gaoX�[�p�kWevcueW�Fe�hIk&�W� �EiIeg�gatX[gpGXscuegnu]Ëe�jDateI� l !½mWj�mIXÁa([�pºprjDe^n¥cwVz[ghfX$Vzh<cDTWVzX�aA9leg�EiW_ba

VYXÂegkl�EVbcÁcwaokl_z|Be�_bVbcÁcD_ba4ndjwmfklag� n�SUTWa�XÁadc�[�pGy`VzjÁcDmIe�_�e^k`ÒkljDatXDXÁaoX��8[^mW_zkBZ*a4klVby`VYklatk�e^XÂXÁTW[v�Âh�Vzh7cDTWa1pr[g_z_b[v�ÂVzhW�klVYe��^jDeg� �

(o(m(�XdÖ �`cDegnu](o(m(�XdÖ egjwaoe(o(m(�^�g��^�g��^�g��^�g��^�g��^�g��ky$�^�g�.k1#�^�g�.k1#�^�g�.k1#$o$m$EkI� Ä(evcue$o$m$EkI�$o$m$EkI� egjwaoe#o#m#�kFÖ#o#m#�kFÖ#o#m#�kFÖ�^�g��^�g�4cu��^�g�4cu� SGa�9`cÖ^ÖgÖ½ctÖÖ^ÖgÖ½ctÖ egjwaoeÖ^ÖgÖ½ctÖ

]�VzjÁcDmIe�_GÔ�kWkljDatXDX��`iIe^n�a

SU�8[��ÂTW[^_ba�iIeg�gaoX.Vzh cwTWa}y`VzjÁcDmIe�_�e^kWkljDatXDXEXÁiIe^n�a��mfXsc³Z*a�e�_z_z[`ntevcDatk�cw[�cDTWaUcwaA9\c�XÁat�g�Eadh\ct�^ady^adh�cwTW[^mW�gTcwTIa�iWT`|`XwVYnde�_Fegjwaoe�jDa � mWVzjwaok7VYXÂ[^hW_b|&Ög� �4ife��gaoXd�

�g�^��c¥��g�^��c¥� SGa�9`cÖgÖ^Ö�coÖÖgÖ^Ö�coÖ egjwaoeÖgÖ^Ö�coÖSGa�9`c��`ad�^�Eadh\c

SUTWa�kWe�cDe4eghIkËXÁcDegnu]�e�jDate^X¢jwa � mIVbjDaUcwTWa(klatkWVzntevcwVz[gh[�pGpr[gmWjÂeghIk7[^hWa1iIe��^atX�[�p,y`VbjwcwmIeg_FegkWkljDatXDXUXÁifegn�a^�le�hIk#W� #�e�hIk��W� ��iIe��^atX�[�p¢iWT`|lXÁVYndeg_¼��at�E[gjD|<jwaoXÁi*atn�cwVzygat_b|^�SUTWaE�ÂTW[g_zaËkWevcueBXwad�^�Eadh\c�jwa � mIVbjDatX�pr[gmWj4eghIk�[ghWaadVz�gT\cDT7iIeg�gatX�[gpGiWT`|lXÁVYndeg_¼��at�E[gjD|g�OSUTWa1a�9`cwjue�adVz�gT\cwTVYXFpr[gjºcwTWa�<Ái*adjGiWjw[lndatXDXºkWe�cDe�egjwaoem>U�ÂTWVYnuT4n�[^jwjDatXwif[^hIkWX

lÀprjD[g� cwVz�EaËcw[�cDVb�Ea�n1cw[}cDTWa<XÁatygath^cDT�]gadjDhWat_$egkWkWjwaoXwXiIeg�gag�#^�

Page 44: A Commentary on the Sixth Edition UNIX OS -- Lions

(m(m(EXtÖ �\cDe^nu](m(m(EXtÖ e�jDate�g�g�Eky$�g�g��k1#�g�g��k1#�g�g��k1#$m$m$ËkI� Ľe�cDe$m$m$ËkI�$m$m$ËkI� e�jDate#m#m#EkFÖ#m#m#EkFÖ#m#m#EkFÖiWi¼kWeÄ(evcueE�lad�g�Eath^c

~�[�cwa�cwTWa.[gjukladj½[�pOcDTWa.nd[g�Eif[^hWadh\cuX�[gpOcwTWa�kWevcue7Xwad��Ò�Eadh\co�\eghIk.cwTIe�c³cwTWatjwaÂVYX³hI[�ad��Z*atkIklatkEmWh`mIXwatkEXwiIegndag�SUTWaEmIXwadj1�E[lkla�Xwad�^�Eadh\cDe�cwVz[gh&hIadatkqcw[�ZfaËXwa�c1cw[jDa #Iaon¥cÂcDTWa�yve�_zmWatXÂVzh�cwTWa1pr[^_b_z[v�ÂVzhW��cDe�ZI_ba^�I�ÂTWatjwau<sc >W�<Dk1>BkWadhW[gcwa�cwTWaËZI_b[lnu]}h`mW��Z*adjuX1[�p�Zfat�gVzhWhWVzhW��[�p8cwTWacDa�9`c�e�hIk�kWe�cDeEXÁat�g�Eadh\cuXUjwaoXÁi*atn�cwVzygad_z| �

L/aGO2 TE������2F6�6 x��GFo2 J�� 0P0P2F���Ö c �(� Ö^� � jDate^k7[^hW_z|� c �.Ö¸��( �I� � jDate^k7[^hW_z|# k��.Öo� Ö^� �$ k��.Ö�$m$ Ö^� �� k��1�\��� Ö^� �� k��`$\�g� �I� #� % �I� � hI[�c�mIXwatk( k��`$\�g� �I� � �^jw[v��XUkl[v�Âh`�Ue�juk~�[gcwaÑcwTWa XÁadcÁcDVbhW��[�pËcDTWa atVb�^T^cDT¿egkIkljwaoXwX&jwat�gVYXsÒcDadjo�MSUTWa�e^kWkljDatXDX7iIjw[gcw[�cs|`i*atX�XscD[gjDatkÏVzhÐcDTWa�e�jDjDe¸|

<wm�� m mWVzXDem>�e�jDaE[gZlcue�VzhWatk�Z`|�Xwa�cwcwVzhW� <sc >�eghIkW<wk1>Bcw[ tadjD[I��' �� $� � �#" � � � � $� ���� ���2 �2" ��� � � �

" � � ���%$jw[gcw[�cs|`i*atX�pr[gj1cDTWaËmIXwadj�XÁat�g�Eadh\cuevcwVz[gh�jwat�gVYXscDadjuX1e�jDaXwa�cOmWiEZ`|b<ÁaoXscue�ZWmIj >��ÂTWVznuT�VYXOnde�_z_zatk.�ÂTWadhËe(iWjD[g�gjue��VYX �IjuXsc<_Ye�mIhInuTWatk Vzh\cw[�a�9laon�mlcDVb[^h��Âe�hIkÎe��\e�VzhÑ�ÂTIadhlÒatygadj�e�XwVb�^hWV �*nde�h\c4nuTIeghW�ga�Vbh��Ead�E[^jw|qeg_b_z[lndevcDVb[^h&jDa�Ò� mWVzjwaoX1V{co�<SUTWaËiWjD[�cD[�cs|`ifaoX1e�jDaEXÁcw[^jwaokqVzh�cwTWa<egjwjue¸|lX<wm�� m mWVzXDem>I��<Ám�� m mWVYXwka>W��ÏTWathWady^adjOiWjD[ln�atXDX ��VlVzXOegZf[^mlc¢cw[1ZfaUjDate^n¥cwVzyvevcDatkF�cDTWa�iWjD[ln�atkWmWjwas<DXÁmIjwat�o>(VzX$nde�_z_zatk�cw[4nd[gi`|4cDTWaÂcDTWa�iWjD[�ÒcD[�cs|`ifaoXOVzh^cD[1cwTWa�egiWiWjD[giWjDVYevcwaUjDad�^VzXÁcwatjDXt�ºSUTWa�klaoXwndjwVzilÒcDVb[^h jDad�gVYXÁcwadjuX�e�jDaBn�[^iWVzatk klVbjDatn�cw_z|g�³ZImlcEcwTWa}egkIkljwaoXwXjDad�^VzXÁcwatjDX���mIXÁc(Z*aEegk#4smIXÁcwaok}cD[7jDa #Iaon¥c(cwTWaEegn�cwmIeg_G_z[�ÒntevcwVz[gh�Vzh�iIT\|lXwVznte�_F�Ead�E[^jw|Ë[gpGcDTWa4e�jDate.mIXwatkF��' ��8� � �2 � 0 � � �#' � ��yv ga7@� ]³e�jDVz[gmIXFnuTWaonu]lX¼[gh4n�[^hIXwVzXÁcwathIn�|�egjwa¢i*adjwpr[gjD�EatkF�cw[(adhIXwmWjDa$cDTIevc¢cDTWa8jDa � mWaoXscDatk.XÁV� daoXºpr[^j,cwTWa�cwaA9`ct�kWevcueEe�hIk�Xscuegnu]7egjwa(jDategXw[ghfe�ZW_zag�

~�[�cDa cDTIevcÏe hW[^hlÒ dadjD[ yve�_zmWa pr[gj"<wXwadia> Vz��ÒiI_bVzatX�XÁatiIe�juevcDa��Ëe�iWiIVbhW�\XOpr[^j$cDTWa�cDa�9`c�egjwaoepl�<wV?>XwiIe^n�a�n8e�hfkEcwTWa1kWe�cDe�egjwaoeElA<wk1>.XÁiIe^n�a�n¥�OSUTWVYX$VYXhIadygatjÂif[\XwXwVzZW_ba1[^h7cDTWa*%$Äd%�Ö^Ö ��$\� �yvOvO7(� <weo>½kla��IhWaoX¢cwTWa�e^kWkljDatXDX¢[�pFe1XÁat�g�Eadh\cOjwat_ze�cwVzygacD[}e�h�egjwZIV{cDjDegjw|�ZIe^XÁa�[�p dadjD[I�t<wegia>7eghIk <Dklia>i*[gVzh\cGcD[�cDTWa8Xwa�c,[�pWiWjD[�cD[�cs|`ifa�XÁat�g�Eadh\cuevcwVz[gh4e^k`ÒkWjwaoXwXÂeghIkBkWatXDn�jDVbilcD[gjÂjDad�^VzXÁcwatjDX�jDatXwifaon¥cwVzygat_b|^�SUTWa �fjDXÁc$adVz�gT\c³[gp�ategnuTE[gp*cDTWatXwa½Xwa�cuX$egjwaÂVzh\cwadhfklatkcw[EjDa�pratjUcw[z<ÁV >�XÁiIe^n�a^�We�hIk

�yvOv ~ � <Áh\c >½�Eate^XÁmWjDatXºcwTIaÂh\mI��Z*adj¢[�p�#^���8[^jDk�ZW_b[lnu]lXhIadatkWatk�pr[gj(cwTIaEcwa�9`c�Xwad�^��ath\ct����p�<wh^c >�VzX1hW[^hlÒ tadjD[I�^[ghWa½[gj$�E[^jwaÂiIeg�gaoX³��mfXsc�Zfa(e�_z_b[lnde�cwaok�pr[gjcDTWVYXÂiWmWjDif[\XÁa^�

�ÏTWadjDa��E[gjDa1cwTIegh�[ghWa�iIeg�ga�VYX�e�_z_z[`ntevcDatkF�Ieg_b_ºZWmlccwTIaÂ_ze^Xsc³�ÂVz_b_fn�[ghfXÁVYXsc³[gp,Ö¸��((ZW_z[lnu]`Xjl�$^�^×g�½�8[^jDkWX n¥�^e�hIk�ÂVz_b_³Z*a<jDate^k&[^hW_b|^�GeghIk��ÂVb_z_$TIe¸y^aEjwat_ze�cwVzygaËegkWkWjwaoXwXwatXXÁcDe�jwcwVzhW��evc datjw[�e�hIk7VbhIndjwaoegXwVbhI�.XwmIndndatXDXÁVzygat_b|EZ`|qÖo�m(W��yv ~ ,%� ��p�Xw[g�Ea.prjDe^n¥cwVz[gh�[�pUe7iIeg�ga�[�p8cwa�9`c�VYX(XÁcwVz_z_¢cw[Z*aËegXDXÁVz�ghIatkF��eg_b_z[lndevcDa�cDTWaËe�iWiIjw[^iWjwVYevcDa�iIegjÁc1[�pcDTWa�hWaA9\c�ife��ga��yv ~ ~ � V{pt<ÁV > e�hfk <wka> XwiIegndatX7egjwa�ZfatVbhI�ÑmIXwatk�XÁatilÒegjDe�cwat_b|^�³�Ëe�jD]�cwTWa}Xwad�g�Eath^cuevcDVb[^h jDad�gVYXÁcwadjuX�pr[gjcDTWa�jDad�Ëe�VzhWVzhW�r<ÁV >.ife��gaoXUegXUh`mW_z_1�yvO\�,%� <weo>�VYXUjwaoXÁadc�ZfaondegmIXÁa�eg_b_FjDad�Ëe�VzhWVzhW�ËegkWkWjwaoXwXwatXjDa�pratj�cw[.cwTWa1kWevcue.egjwaoeEl¨hW[�c�cwTWa(cDa�9`cUegjwaoeon$e�hIkegjwaUjDad_YevcDVby^a$cD[1cwTWaÂZ*ad�^VbhWhIVbhW��[gpIcDTWVzX$e�jDateW�,SUTWa

�fjDXÁc�<Dx½�`� ¼Ìc>�ZW_z[lnu]`X8[�pFcDTWVYX�egjwaoe4e�jDa�jDatXwadjDygaokpr[^jUcwTWaf<wifatjÂiWjD[`ndatXDXÂkWevcueEe�jDatem>2� ~ Q B-� SUTWaEXscuegnu]}e�jDate7VzX�eg_b_z[lndevcDatk�prjD[g� cDTWa�cw[^i&[�pcDTWa�egkIkljwaoXwX,XwiIegnda$cD[v��egjDkWXºcwTIaÂ_b[v��adj¢egkWkWjwaoXwXwatX

lA<wkl[v�Âh`�Ue�jukWX >on�� ~ � �'� ��p�e}iIegjÁcDVzeg_$iIeg�gaË��mfXsc�Zfa�e�_z_b[lnde�cwaok�pr[gj4cDTWaXÁcDe^nu]�e�jDateI�³V{cËVYX�cwTWa�TWVz�gT egkWkWjwaoXwXEe�jwcE[�p�cDTWaife��gaÂ�ÂTIVznuTËVYX³yve�_zVYkF�jl�)W[^j³cDa�9`c8e�hfkËkWevcue4e�jDate^Xd��ÂTIVznuTB�gjD[v� <ÁmWi`�Ue�jukWX >I�gVbc�VYX�cwTIa½_z[v�8atj8ife�jwc8[�pe�iIegjÁcDVzeg_OiIe��^aE�ÂTWVznuT�VYX1y¸eg_bVYkF� n SUTWVzX4jwa � mIVbjDatXeghÐa�9`cDjDe�ZIV{c�VbhÐcwTWa�klatXDn�jDVzilcw[^jt�ÂTWathIn�aI<wÌ8Ä`>

lA<ÁaA9`ife�hIXwVb[^h�kW[v�Âh\�Ue�jukWX >on%� ~ �F7(� ��p,XwadiIegjDe�cwa+<ÁV >.eghIkP<Dk1>�XÁiIe^n�aoX�egjwa(hW[gcUmfXÁaokF�[^hW_z|�cwTWa �IjuXscËatVb�^T^cE[�p½cwTWa}XwV:9`cDadadhÑiWjD[�cw[gcs|`ifajDad�^VzXÁcwatj¢iIe�VzjDX,�ÂVz_b_ITIe¸yga�ZfatadhEVzhWV{cDVzeg_bVYXwatk.Z\|4cwTWVYXi*[gVzh\ct�G��h1cwTWVYXºntegXwag�tcwTWa$Xwatnd[ghIk(atVb�^T^cºegjwa³nd[giWVzatkprjD[g�McwTWa �IjuXÁc�adVz�gT\ct��' �� ( � 0=�� � � � � ,����SUTWVYX$jD[gmWcwVzhWa�VYX8nte�_z_baokËZ`|r<ÁatXÁcDegZWmWj >slsÖv���N$Fn¥��<wXw�UcDnuTa>l �^�g�g×on¢e�hfkr<Áa�9liIeghIk1>slÉ�g��×\�mn���cw[�n�[^i\|�cwTWa½iWjD[�cw[gcs|`ifaXwad�g�Eath^cuevcDVb[^h½jDad�^VzXÁcwatjDX¼Vzh\cw[ÂcDTWa$egn�cwmIeg_�TIegjDkl�Ue�jDa¢XÁat��Ò�Eadh\cDe�cwVz[gh�jwat�gVYXscDadjuXd�

#^�

Page 45: A Commentary on the Sixth Edition UNIX OS -- Lions

� ~ 7�B(� �(a�cUcDTWa½ZfegXwa(e^kWkljDatXDX³pr[^j8cDTWa1kWevcue.egjwaoe�prjD[g�cwTWa�egiWiWjD[giWjDVze�cwa(ad_zad�Eadh\c�[gpGcDTWaf<ÁiWjD[lnA>�e�jDjDe¸| � ~ 7 7@� SUTWa�iWjD[�cD[�cs|`ifa�egkWkWjwaoXwX�jDad�gVYXÁcwadjuX}lr[�p��ÂTWVYnuTcwTWatjwa}egjwa�[ghI_b|�atVb�^T\cËpr[gjEcwTIab%$Äd%�ÖgÖ���$\�on.e�jDa�E[`kWV �IaokËZ`|EcwTWa(egkWkWV{cDVb[^h7[�pe<Dem>4eghIk7XÁcw[^jwaokEVbhcwTWa1TIegjDkW��egjwa1XÁat�g�Eadh\cuevcwVz[gh�egkIkljwaoXwX�jDad�^VzXÁcwatjDX�� ~ g ,-� SGatXÁcEVbp(e�XwadiIegjDe�cwaBcwa�9`c<e�jDate&TIegX�Z*adathÎeg_b_z[�Ònde�cwatk��*eghIk�V{p�XÁ[f�fjDatXwa�cE<Dem>�cD[<cwTIa�jDad_YevcwVzyga.egk`ÒkljDatXDX³[�pºcwTWa½cwaA9\cÂe�jDate�cw[.cwTWa1kWevcue�egjwaoeW�ql¨~�[gcwacwTWVYXËyve�_zmWa��Ëe¸|�Z*a}hWad�\evcwVzyga * )W[gjwcwmIhIevcDad_z|ÑevccwTWVYX½if[^Vbh\ct�¼egkIkljwaoXwXwatX�e�jDa4VbhqcwadjD�ËX�[gp #^�E��[gjukZW_z[`nu]lXt� n%� ~ ga7@� SUTWa4ifevcÁcDadjDh}[�p³n�[lkla�hI[v��pr[^_b_z[v��atk�VzX�XÁVz�EVb_Ye�jcw[�cwTIa�Zfat�gVzhWhWVzhW�E[�p,cwTWa�jD[gmlcDVbhIag�la�9Wndadilc4�z�b�� ~ v�,-� e�jDe�cwTWatjË[gZIXDn�mIjwa�iWVzatnda�[gp1nd[lkla}egk#4smIXÁcDXËcwTWaXÁadcÁcDVbhW�Ñ[�p4cDTWa�egkWkljDatXDXBjwat�gVYXscDadj<pr[^j�Xwad�^�Eadh\cDX�ÂTWVYnuT�e�jDa�hW[�cf<Á�ÂjDVbcDe�ZI_ba�><VÉ� a^���ÂTWVYnuT�iIjwaoXÁmW��Òe�ZW_z|7egjwa½cwaA9\c�Xwad�^�Eadh\cDXt�SUTWaqnd[`kWa}Vbh�<ÁaoXscue�ZWmIj >�e�hIk"<DXÁmWjDad�4>&XwTW[v��XEady\ÒVYkladhfn�a�[�p�TIe¸y`VzhW�&Z*adathÑklatygat_b[^ifaok�VbhÎXwadygatjDeg_8XÁcDeg�gatXeghIk7VYXÂhW[gc�egXUad_zad�\e�h\c�egXÂnd[gmW_Yk7Z*a4klaoXÁVzjwaokF�

�' �� , �� � � � � � ��8( '����cËVYXËhW[v�?cDVb�Ea�cw[�cue�]ga�e��g[`[lk�_z[`[g] e�c�cDTWa}iWjD[ln�a�ÒklmIjwa½�ÂTWVznuTBn�jDatevcDatX$hWad�ÏiWjD[ln�aoXwXwatX8egXl e�_z�E[^XÁc8a�9We^n¥c njDadiW_zVYndegX�[gpGcDTWadVzj�n�jDate�cw[^jDXt��y\a7���� <Á�EiWVYk1>UVYX�e�h1Vzh\cwad�^adj��ÂTIVznuT1VYX�XscDadiWi*atk(cDTWjD[gmW�^TcwTWa½yve�_zmWatX���cD[�#^�\�v�`�`�GÔ½X�ategnuTËhIad�ÏiWjD[ln�atXDX8VzXn�jDate�cwatk��`e�hWat� yve�_zmWa(pr[gjs<w�EiWVzka>�VYXÂn�jDate�cwatk7cw[iWjD[vy\VYkla&eÑmWhWV � mWa�klVzXÁcwVzhW�^mWVzXwTWVzhW� h\mI��Z*adj�pr[gjcwTWa�iWjD[`ndatXDXd�3�`Vbhfn�aqcDTWa�nd|ln�_za&[�p4yveg_bmWaoX<�Ëe¸|ady^adh\cwmIeg_b_z|�jwatifaoevco�8e�nuTWatnu]�VYXE�ËegklaBcwTIe�cEcwTWah`mW��Z*adjUVYX8hI[�c�XscDVb_z_¼Vbh�mIXwa�lVbp,Xw[�e.hWat�Ðyve�_zmWa1VzXcwjDVbaok��y\a7�v(� Ô Xwate�junuTLVzX}�Ëe^kla�cwTWjD[gmI�gT�cwTWa <wiWjw[ln�> egjÁÒjDe¸|Bpr[gj�eBh`mW_b_S<wiWjD[`n�><XÁcwjDmIn¥cDmWjwaulrVzhIklVYnde�cwaok&Z`|

<Ái XÁcDe�c >�TIe¸y`VbhI�Ee�h`mW_z_Fyve�_zmWa�n%�y\Ov Q(� Ô�c(cwTWVYX(if[^Vbh\ct�*cDTWa�e^kWkljDatXDX�[gpOcwTWa�hWat� adh\cwjD|Vbh7cwTWa+<ÁiIjw[lnA>.e�jDjDe¸|.VzXUXÁcw[^jwaok7egX8Z*[�cwT@<Áia>�e�hfk

<ÁjDiWia>I�¸eghIk�cDTWaÂegkWkWjwaoXwXG[�p <ÁiWjD[lnA>Âath^cDjw|1pr[^j,cwTWan�mWjDjDadh\c7iWjD[ln�atXDX<VYX�XscD[gjDatkÏZ*[�cDT egX@<ÁmWiO> e�hfk<ÁjDVbiO>

�y\Ov���� SUTWa�e�cÁcwjDVzZWmlcwaoX³[gpfcDTWa�hWat� iIjw[ln�aoXwXOegjwaÂXÁcw[^jwaokVbh�cDTWa7hWat� <wiWjD[`n�>�adh\cwjD|g��Çqe�h`|�[�pUcwTWaoXÁaBe�jDan�[^iWVbaok<prjD[g�McwTWa4ndmWjwjDadh\cÂiWjD[ln�atXDX��y\ ~ v(� SUTWa}hWat� iWjw[lndatXDXEVbhWTIadjDV{cuXEcwTWa&[gi*adh �I_zatX<[gpV{cuX�iIegjwath\ct�Â��hIndjwat��ath\c�cwTWa�jwadpradjDadhInda�n�[^mWh\c�pr[gjate^nuT7[�p,cwTIatXwa�

�y\ ~ �-� ��pWcwTIadjDa8VYXOe�XwadiIegjDe�cwa$cwa�9`c³Xwad�g�Eath^c¢VzhIn�jDad�Eadh\ccDTWa7e^XwXw[ln�VYevcwaok&jDa�pratjwathIn�a<nd[gmWh\cuXd��~�[�cDVzndaËcwTfevc<wjwVzia>I��<ÁjDiWia>�egjwa�mIXÁaok�pr[gj$cwad�Ei*[gjue�jD|�jDa�pratjwathIn�aTIadjDa�

�y\O\ B-� ��hIn�jDad�Eath^c�cwTIa�jDa�pratjwathIn�a�n�[^mWh\c�pr[^j�cDTWa�iIe�jwÒath\c�' X�n�mWjDjDadh\cUkWVbjDatn�cw[gjD| �y\O\ �-� �le¸yga�cwTWa<ndmWjDjwath^c1yve�_zmWatX([gp$cwTIa�ath`y\VzjD[ghW�Eadh\ceghIk�Xscuegnu]�i*[gVzh^cDadjuX¢Vbh}<Ámº� m juXDe¸yF>I�e<wXDe¸y`ma>�VYXOe�he^XwXwad�.ZW_zadjUjw[^mlcwVzhWa�kla��IhWatk�e�c�_bVzhWa4�\�g�g� �y\�� Q-� ÅÂatXÁcw[^jwa8cwTIaÂy¸eg_bmIatXO[gpc<ÁjDVzia>1e�hIkt<ÁjDiWia>I�GSGad��Òi*[gjue�jDVz_b|�nuTIeghW�ga8cwTWaUyve�_zmWaU[�pc<Ám�� m iWjD[ln�ia>�prjw[^�cDTWa<yve�_zmWa<egiWiWjD[giWjDVze�cwa�cw[�cDTWa7ndmWjwjDadh\c�iWjD[ln�atXDXcD[EcwTWa�yveg_bmWa�egiWiWjD[giWjDVze�cwa½cw[�cwTIa�hWad�LiWjD[`ndatXDX��y\�� v-� SºjD|½cw[ �fhIk4e�h.e�jDateÂVzh4�Ëe�Vzh4�Ead�E[gjD|(Vbh4�ÂTIVznuTcD[<n�jDate�cwa½cwTWa�hWat�LkIevcDeEXwad�^��ath\c����OQ�,%� ��p�cwTIadjDa½VYX$hI[�XwmWVbcDe�ZI_ba1e�jDate�Vzh7�ËegVbhB��at�E[gjD|g�cDTWa7hIad�?n�[^i\|��ÂVb_z_�TIe¸ygaEcD[qZfa7�Ee^kla<[^h�klVzXw]¼�SUTIa�hIa�9`c1Xwatn�cwVz[gh�[�p8nd[`kWaEXwTW[^mW_zk&ZfaEe�hfe�_z|`Xwatknte�jDa�prmW_z_z|�Zfaonde�mfXÁa�[�p½cwTWa�VzhIn�[^hIXwVzXÁcwathIn�|�Vzh\cwjD[�ÒkWmIn�aok�e�c�_bVzhWaEÖ�(^×WÖ(V � ag�mº� m iIjw[ln�iWÒ �Âi e^kWklj * � ¸]ve^����OQ B-� Çqe�jD]1cwTIa�n�mWjDjwath\c¢iIjw[ln�aoXwX¢e^XM<D�`�sÄ(Æ�>½cw[�TIategk[ ��cwat�Eif[^jDegjwVz_b|�e�h`|}prmWjwcwTWatj4evcwcwad�Eilc�cw[}XÁ�Ue�iVbc�[gmWcilrVÉ� a^�OVbhWVbcwVYevcDatk�Z`|3<DXwnuTWaok1>+lsÖt×m$^�4n n����OQO7(� Çqe�]^a�cwTWaqhIad� <ÁiWjD[lnA>�adh\cwjD|Ñnd[ghIXwVYXscDadh\ct��V � aXwa�c�jDiWilÒ��Âi egkIklj � v]¸e^� ���OQ�g%� �le¸yga�cwTWa<ndmWjDjwath^c1yve�_zmWatX([gp$cwTIa�ath`y\VzjD[ghW�Eadh\ceghIk�Xscuegnu]Ëi*[gVzh\cwadjuXUVzh <wm�� m XwXDe¸yy> ���OQ v-� Í�e�_z_i< 9lXw�Ue�ia>zl�$o#g�o(on(cD[�nd[gi`|&cDTWaBkIevcDe&XÁat��Ò�Eath^c<Vzh\cw[�cwTIaqklVzXw]ÑXw�Ue�iÑegjwaoeW�Î��atndegmIXwaBcDTWaXwatnd[ghIk�ife�jue��Ea�cDadj4VYX tadjD[I�GcwTWaB�Ëe�Vzh��Ead�E[gjD|egjwaoe��ÂVz_z_�hW[�c�Z*a�jDad_zategXwatk ���OQ ~ � Çqe�jD]EcwTIa�hWad�LiWjD[`ndatXDXUegXY<wXw�Ue�iWi*atkB[gmlc > ���OQ \-� ÅÂa�cDmWjDh cwTWaÏndmWjwjDadh\c&iIjw[ln�aoXwX&cw[�V{cuX�hW[gjD�Ëe�_XÁcDe�cwa����Z�yB-� SUTWadjDa<�UegX�jD[`[g��Vbh��ËegVbh��Eat��[^jw|^�,Xw[&XÁcw[^jwacDTWa½e^kWkljDatXDXO[�p¼cDTWa�hWat��<ÁiWjD[lnA>(adh\cwjD|Ee�hIkËnd[gi`|cDTWa4kWe�cDeEXÁat�g�Eadh\c�eEZW_z[lnu]7evc�e.cwVz�Ea����Z� ~ � ÅÂatXÁcw[^jwa�cwTWaÎn�mWjDjDadh\c&iWjD[ln�atXDX�' <wifatj&iWjD[ln�atXDXkIevcDeEegjwaoem>�cw[EV{cuXÂiWjDady`Vz[gmIXÂXÁcDe�cwa����Z�y\-� ÅÂa�cDmWjDhB�ÂVbcwTqe�yve�_zmWa1[�p datjw[f�

!½Z`y\Vz[gmfXÁ_z| <ÁhWat�ÂiWjD[`n�> [^h�VbcDXq[v�Âh�VYX�hW[�cqXwm2�EÒn�Vzadh\c<cD[ iWjD[lklmInda&e�hÏVzh\cwadjDatXÁcwVzhW� eghIkÎyve�jDVbaokÏXÁadc7[�piWjD[ln�atXDXwatXt�ÑSUTWa}iWjD[ln�aoklmWjDa@<wa�9latn�>@lk#g�^�g�on��ÂTWVYnuTÑVYXklVYXwndmIXDXÁaok Vzh Í8Tfe�ilcDadjqSU��ad_zyga�iWjD[vy\VYklaoX7cDTWa�hWaon�atXÁÒXDe�jD|7egkWkWV{cDVb[^hIe�_Fp¨e^n�Vz_bVbcs| �³cDTWa4�EateghIXUpr[gj½eEiWjw[lndatXDX�cw[nuTIeghW�ga(V{cuX�nuTIegjDe^n¥cwatjt�^cw[ËZ*a�jDadVzhIndegjwhIe�cwaokF�#\�

Page 46: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � �*�j�e��� �*� ����� � ��Y�

%$jw[ln�aoXwX$�Ëe�hIeg�gad�Eath^c�VzX�n�[^hIn�atjwhIatkË�ÂVbcwTBcwTWa1XwTIe�jDVbhI�[gpfcDTWaÂiWjD[`ndatXDXÁ[^j,eghIk.cwTWaÂ�ËegVbhE�Ead�E[gjD|4e��E[^hW�^XÁc¢cwTWayve�jDVz[gmIX,iWjD[ln�atXDXwatXt�v�ÂTWVznuTEndegh.Z*a�XwadadhEegX¢nd[g�EifadcwVbcw[^jDXpr[^jUcwTWaoXÁa�jDatXw[gmWjun�aoXd�Ľatn�VYXwVb[^hIX8cw[�jwaoe�_z_b[lnde�cwa½jwaoXÁ[^mWjDndatX8e�jDa��Ëegkla½prjD[g�cDVb�Ea1cw[�cDVb�Eag�latV{cDTWadj�[gh<cDTWa�VzhWV{cDVze�cwVzyga1[�pGcwTWa�iIjw[ln�aoXwX�ÂTWVYnuT�TW[g_YkWX�cwTIa�jwaoXÁ[^mWjDndag�\[�pGpr[gj�Xw[g�Ea½[gcwTWatjÂjwaoegXw[gh��

�< �� 57� � � � � $� "�� � � " � �

Ô�h&egn�cwVzyga4iWjD[ln�aoXwX��Ee¸|�XwmIXÁi*adhfk}V{cuXÁat_{p³VÉ� a�jDad_zVbh � mWVYXwTcDTWaÂiWjD[`ndatXDXÁ[^jt�¸Z`|�nte�_z_bVzhW�u<wXw�UcDnuTa>YlÉ�lÖ¸��(onº�ÂTWVYnuT�nte�_z_zX<wjwadcwma>tl¨�\�N$^�4n¥��SUTWVYX(�Ëe¸|}ZfaËkl[^hWa�pr[^j1a�9We��EiW_za.Vbp�eiWjD[ln�aoXwX�TfegX4jDate^nuTWatk�eqif[^Vbh\c.Z*ad|^[ghIk��ÂTIVznuT�Vbc�nte�hlÒhW[gc8iWjD[ln�atatkEVz���EaoklVze�cwat_b|^�³SUTWa�iWjD[ln�aoXwX³nte�_z_zX�<wXw_zadadiO>lÉ���g�^�on$�ÂTWVYnuT�nte�_z_zXY<DXÁ�UcunuTa>W�Ô�_bcwatjwhfevcwVzygat_b|<e�]gatjwhWat_fiIjw[ln�aoXwX8�ÂTWVYnuT7VYX�jwaoegkl|�cw[jDady^adjwc8cD[�mfXÁatj��E[lkla1�ÂVz_b_¼cDatXÁcÂcwTWa1yve�jDVzegZW_za <wjwmWhIjwmWhO>eghIk�Vbp*cwTWVYXOVYXOhW[ghWÒ tadjD[I�vVz��iI_b|`VzhW�1cwTIe�c³e1iWjw[lndatXDXG�ÂVbcwTe�TIVb�^TWadj8iWjwaon�aokladhInda�VYX$jDate^kl|�cD[4jDmWh��\cwTWa½]gatjwhWat_IiWjD[�ÒndatXDXU�ÂVb_z_ºndeg_b_j<DXÁ�UcunuTa>W�

<wXw�UcDnuTO>�XÁaoe�junuTWatX*cDTWai<wiWjD[`n�>�cDegZW_ba^�opr[gj�ath^cDjwVzatX�pr[gj�ÂTWVYnuT <wi Xscuevc >7a � mIeg_zXE<D�lÅUx�~`><e�hfk�cwTWat<D�lÆ�!�Ô½Ä`>ZWVbcÂVzXÂXwa�cUVzh@<wi #fe��4>W��)WjD[g� cDTWatXwa1V{c�Xwad_zatn¥cuX�cwTWa1iWjD[�ÒndatXDX1pr[gj��ÂTWVYnuT�cwTIaËy¸eg_bmIaË[�ps<Ái iWjDV >�VzX4e��EVzhWVz��mW���eghIk<cDjDeghIXÁpradjuXÂn�[gh\cDjw[^_fcD[ËV{co�]³e�_zmWaoX³pr[^j*<Ái iIjwV >4e�jDaÂjDatndeg_zndmW_Yevcwaok.pr[gj$aoegnuTËiWjD[�ÒndatXDX,prjw[^� cwVz��aUcD[(cwVz��aÂZ`|4mfXÁaU[�pfcwTWaÂiIjw[ln�aoklmWjDa�<DXÁadcÁÒiWjDV > lÉ�lÖo�g�on���!½Z`y`Vb[^mIXw_b|�cwTIa1eg_b�^[gjDV{cDTW�?mIXwatk7Z\|z<DXÁadcÁÒiWjDV >�TfegXËe�XwVb�^hWV �*nde�h\cËVzh�#ImWathIn�a^� Ô iWjD[`ndatXDXE�ÂTWVYnuTTIe^X½nte�_z_baok <wXw_batadia>7e�hIkqXwmIXwifathIklaokqVbcDXwad_bp³�Ee¸|�Z*a�jDa�ÒcDmWjwhIatk7cw[�cwTWau<wjwaoegkl|�cw[EjDmWha>�XscuevcDa(Z`|7eghW[�cDTWadjUiWjD[�ÒndatXDXd�,SUTWVzXG[�pÀcDadh.[`ntn�mWjuX,klmWjDVbhW��cwTWa�TIeghIkl_zVbhW�([�pWVzh\cwatjÁÒjDmWilcuX$�ÂTWathËcwTIa�iWjD[ln�atXDX³Tfe�hIkl_zVzhW��cwTIa½Vzh\cwadjDjDmWilc8nte�_z_zX

<DXÁadcwjDmWha>3lÉ�lÖ�#�$4n�adVbcwTWatjEkWVbjDatn�cw_z|�[gj�VbhIkWVbjDatn�cw_z|�y\VYe&ente�_z_F[gh <Á�Ue�]gatmWia>+l �WÖgÖ�#4n¥�

�< )( � ���� ��!�!0=�����

��c�XwTW[gmI_zk�Z*aËhW[�cDatk�cwTIe�c�e�TIe�jukl�Ue�jDa.Vzh\cwadjDjDmWilcEl¨XwadaÍ8TIegilcwatjq~�VzhWa�nqkl[`atX}hW[gc&klVzjwaon¥cw_z| nte�mIXwa�eÎnde�_z_4[^h<DXÁ�UcunuTa>�[gj�VbcDX�a � mWVzyve�_zadh\ct� Ô Tfe�jukl��egjwa&Vbh\cwatjwjDmWilc�ÂVz_b_¢ndegmIXwa�e<mIXwadj½iWjD[`ndatXDXÂcD[7jDadygatjÁc�cw[Be7]gatjwhWat_ºiWjD[�ÒndatXDXd�G�ÂTWVznuT�e^X 4smIXÁc�hW[gcwatk��G�Ëe¸|�nte�_z_*<wXw�UcDnuTO>}egX4egheg_{cDadjDhIevcDVby^a�cD[�jDady^adjwcwVzhW�Bcw[�mIXwadj��E[lklaËevpÀcwatj1cwTWaËVzhlÒcDadjDjwmWiWcUTfe�hIkl_zVzhW�ËVzXÂnd[g�EiW_za�cDag���p,e.]gatjwhIad_*iWjw[lndatXDX$VYX�Vbh\cwatjwjDmWilcDatkF�\cDTWadh�evpÀcwatj�cwTWaVzh\cwadjDjDmWilc�TIegX1Z*adath�TIe�hIkW_baokF�FcwTIaË]gadjDhWat_,iIjw[ln�aoXwX(jDa�ÒXwmW�EatX��ÂTIadjDa�Vbc�TIe^k�_badpÀc4[ � jDad�\e�jukl_baoXwXt�ËSUTWVYX�if[^Vbh\cVYX�Vb�Ei*[gjwcDe�h\c�pr[gjEmWhIkWadjuXscue�hIklVzhW��TW[v�:x½~���¾ e¸yg[^VzkWX�Ëe�h`|�[gp�cDTWa�iWV{cwp¨e�_z_zX7egXDXÁ[ln�VYevcDatk �ÂV{cDT=<Dn�jDV{cDVznte�_ÂXÁaon¥ÒcDVb[^hIX >�[�p(n�[lklag�8�ÂTWVYnuT egjwa�klVzXDn�mfXwXwatkÑevcEcwTWa�athIk [gpcDTWVzX�nuTIe�ilcDadjo�

�< -, 5 ��� �8�# � $� � � " � �

��h��^adhWatjDeg_OcwTWatjwaB�ÂVb_z_�Zfa�VbhfXÁm2�<ndVbath^c��Ëe�Vzh��Ead�E[gjD|pr[gj�e�_z_�cDTWa�iWjw[lndatXDXËVb�Ëeg�gatX�evc�[ghIndag��eghIkÎcwTIa�kWe�cDeXwad�g�Eath^cuXFpr[^j,Xw[g�Ea³[gplcwTWaoXÁa8�ÂVb_z_`TIe¸ygaOcD[�Z*ai<DXÁ�Ue�iWi*atk[gmWc >�VÉ� ag�,�ÂjwVbcÁcDadh4cD[(kWVzXw]�Vbh�e½Xwi*atn�VYe�_`e�jDate½klatXwVz�ghIe�cwatkegX�cDTWa4Xw��egiBe�jDateI��ÏTWVz_ba.[gh}klVYXÁ]BcwTWa�iWjw[lndatXDXÂVb�Ëeg�gatX�e�jDa�jwat_ze�cwVzygad_z|VzhIegntn�atXDXwVbZW_za½eghIk7ndadjwcDegVbhW_z|ËmWhWaA9latn�mWcDe�ZI_ba^�¢SUTIa1Xwa�cU[�piWjD[ln�atXDXÂVz�Ëe��gaoX�Vzhq�Ëe�Vzhq�Ead�E[gjD|���mIXÁc�cDTWadjDa�pr[^jwa4Z*anuTIeghW�gaok�jwat�gmW_Ye�jD_b|�Z`|}XÁ�Ue�iWiIVbhW�BVb�Ëeg�gatX½Vzh�e�hfk}[gmlco�Ç}[\Xsc³klaon�VYXÁVz[ghIX,jDad�\e�juklVbhI�½Xw��egiWiWVzhW��e�jDa8�ËegkWa�Z`|�cDTWaiWjD[ln�atkWmWjwa�<wXDnuTWatka>ilsÖo×�$\�onF�ÂTIVznuT.VzXOnd[ghIXwVzkWadjDatk�Vzh�kWa�ÒcDegVb_FVzh&Í8TIe�iWcwadje)I[gmWjwcwatadh��<wXDnuTWatka>�VzX7a�9latndmlcwaokÏZ`|ÑiWjD[ln�aoXwX �.�I�Â�ÂTWVznuT�evpÀÒcwatj�nd[g�EiW_za�cDVbhW��VbcDX�VbhIV{cDVzeg_fcuegXw]lXd�lXwifathIkWX�V{cuX8cwVz��a(Vzh�ekl[^mWZW_zaËjw[^_ba ��[gi*adhW_z|�e^X(cwTWa3<wXDnuTWatklmI_batj >BV � ag��e�hW[gjwÒ�Ëe�_l]^adjDhWad_liWjD[ln�aoXwX�^eghIkEXÁmWjDjDadilcDV{cDVb[^mIXÁ_z|4egXOcwTWaÂVzh\cwadjwÒ�EatklVYevcDa<iWjD[ln�atXDX4[gpp<wXw�UcDnuTa>zl klVYXwndmIXwXwatk�Vbh Í8Tfe�ilcDadj�`atygadh n¥���lVbhIndaËcwTIa<iWjD[`ndatklmIjwar<wXDnuTWaok1>�hWady^adj�cDadjD��VbÒhIe�cwatXt��]^adjDhWad_OiWjD[ln�aoXwX �.��hWady^adj4n�[^�EiW_badcwaoX1V{cuX1cDe^XÁ]¼�e�hfkqXÁ[7cwTWa � mWatXÁcwVz[gh�[�p$eBmIXwadj(iWjw[lndatXDX �.�BkW[\aoX�hI[�ce�jDVYXÁa^�

�< 43 � � � �

SUTWatjwaEVYX�hW[}n�[^hIn�atilc4[�p�< 4s[gZO>BVzh�x�~���¾��Ge�c4_baoegXÁc�VbhcwTIa1XwadhfXÁa1Vzh��ÂTIVznuTBcwTWVYX�cwatjw�/VzXUmIhIkladjuXÁcw[`[lk7VzhB�E[^jwan�[^h`ygadh\cDVb[^hIe�_É�^ZfevcDnuT�iWjD[ln�aoXwXwVbhI�.[^jwVzadh\cwaokBXw|lXscDad�ËXt�Ô�h`|�iWjw[lndatXDXÂ�Ëe¸|@<Ápr[gjD]F>EeËhIad� n�[^i\|�[�pOVbcDXwad_bp³evce�h`|7cwVz��a^�IaoXwXwadh\cwVYe�_z_z|7�ÂVbcwTW[^mlc½klat_ze¸|^�Ie�hIk�TIadhInda4n�jDa�ÒevcDaÂcwTIa½a � mIVbyve�_zadh\c�[�pºe�hWat� 4s[gZ��³È�adhInda 4s[^Z7XwnuTIatklmW_bÒVzhW�I�#4s[^Z�nd_ze^XwXwatXt�`a�cun��³e�jDa1hW[ghWÒÉatygadh\cuX8TIadjDag��< (� ��� � ��� � �� 57� � � � 0 � �

SUTWa�hWa�9`c7cDTWjDada&iIjw[ln�aoklmWjDatXBe�jDaq�ÂjwVbcÁcDadhÐVzh e^XwXwad��ÒZW_zadj�e�hIkËjDmWhË�ÂVbcwTËcDTWa(iWjw[lndatXDXÁ[^jOiWjwVz[gjDVbcs|�_zadygat_*Xwa�c$cw[Xwadygath��GSUTIatXwa�iWjD[`ndatklmIjwaoXOkl[�hW[�c8[gZIXwadjDyga8cwTWa�hW[gjD�Ëe�_iWjD[ln�atkWmWjwa1ath^cDjw|�n�[^h\y^adh\cwVz[ghfXÂXÁ[�cwTfevc�j¥�Ee�hIk�ju�W�lcDTWaadh`y`Vzjw[^hW�Eadh\c½e�hfk&XÁcDegnu]�i*[gVzh^cDadjuXd�Fegjwa4hI[�c�klVzXÁcwmIjwZ*atkklmWjDVzhW�EiWjw[lndatklmWjDa(adh\cwjD|7e�hfkBaA9lV{co�Ô�X�TfegX4eg_bjDate^kl|}Zfatadh�hW[gcwaokF�<DXwe¸y`ma>�e�hIkW<wjwadcwma>ndegh nd[g�.ZWVbhIa�cw[�iWjD[lklmIn�a�cDTWaqa��*aon¥c<[�p�e�n�[^jw[^mlcwVzhWa4smW�Ei��OSUTWaUcDTWVbjuk.iWjw[lndatklmWjDag��<we�jDa�cDm�� >½�ÂTIadh�pr[g_z_b[v��atkZ`|Ñe <wjwadcwmWjDha>�XscuevcDad�Eadh\c7iWjD[lklmIndatXEcDTWaqa �¼atn�c7[�p4ehW[^hlÒÉ_z[lndeg_ <w�g[gcw[o>I��< (' � ��=0 � � ( ���

SUTWVYXºiIjw[ln�aoklmWjDa³VYXGnte�_z_baok�Z`|+<whWad�ÂiIjw[lnA>ilsÖ�(o(g×I�^Öo×g�^�on¥�<wXw�UcDnuTO>=lÉ�lÖ�(^×W�7�^��(WÖ�n¥�r<ÁaA9liIe�hIka>"lÉ�g�m(�$4n��z<scDjDegiW_?>l �m(�$\�on8e�hIk@< 9WXw��egia> l�$m$l�v�W� $m$l�g�mn¥�SUTWa�yveg_bmWaoX�[gp³ju�<e�hIk�ju�<e�jDa�XÁcw[^jwaok�Vbh}cDTWaEe�jDjDe¸|�ÂTW[\XÁa�egkIkljwaoXwX�VYXUiIegXDXwatk�egXÂe�iIe�jue��Eadcwadjo�

#o(

Page 47: A Commentary on the Sixth Edition UNIX OS -- Lions

�< �� � �20 � � 3 �SUTWVYXEiWjD[ln�atkWmWjwa�VYXËnde�_z_zatkÑZ\|&<wXw�UcDnuTa> l �WÖt×m#I�8�g�^��(4neghIk3<wa�9liIeghIk1>ul �^��×�$Fn¥���cqjDatXwa�cDX�cDTWa�Xwadygath\cwTL]gadjDhWat_4XÁat�g�Eadh\cDe�cwVz[ghLegk`ÒkljDatXDX�jDad�^VzXÁcwatjt�ºeghIk�cwTIadh�jDatXwa�cDX4jD�}eghIk�ju�BprjD[g� cwTWahWat�Â_b|�egndndatXDXÁVzZW_za�nd[gi`|q[gp�<Ámº� m juXDe¸yF>tlr�ÂTWVYnuT�V{c��Ëe¸|Z*a�hW[�cDatkF�IVzXÂe�cÂcwTWa�Z*ad�^VbhWhIVbhW�E[gpd<wma>on���< �� � �#0 � � ,�3 �SUTWVYXÑiWjw[lndatklmWjDaÏVYXÑnte�_z_baok Z\| <DXÁ_zadatia> l �WÖt�g�4n�e�hfk<DXÁ�UcunuTa> lÉ�g��$\�mn����c�jDad_z[^e^kWXUjD�ËeghIk�ju��prjD[g�/cwTWa4e^kWkljDatXDXÂiIe^XwXwatk�egXe�iIegjDeg��adcwatjt��< �� � � � � � ( � � ���<DXÁ�UcunuTa>&VYXËndeg_b_zatkÑZ`|�<scDjDegia> l¨�\�^�v�I�$�\��×WÖ�n��*<wXw_zadadiO>lÉ���m(m$I�¸���g×o#on��1<ÁaA9`ife�hIk1>MlÉ�g��(`��n��a<ÁaA9lV{c >Sl�#^�^���4n¥�a<DXscD[gia>l�$^�^�\��n8e�hIk < 9leg_b_z[lnA>+l $o$o(g�4n¥�SUTWVYX³iWjD[ln�aoklmWjDaÂVzX$mWhWV � mIa�VbhEcDTIevc8V{cuX³a�9laon�mlcDVb[^hËVzXVzh}cwTIjwata4iWTIe^XÁaoXÂ�ÂTWVYnuTqVbh}�^adhWatjDeg_�Vzh\y^[g_zyga1cDTWjwata�XwadilÒegjDe�cwa1]gatjwhWat_FiWjD[`ndatXDXÁaoXd�OSUTWa �fjDXÁc�e�hIkBcDTWVbjuk�[�p,cwTWaoXÁaiWjD[ln�aoXwXwatXG�ÂVb_z_lZ*aUnte�_z_baok4cDTWaY<ÁjDa�cDVbjDVbhI�o>�eghIk�cDTWaY<wegjwVYXsÒVzhW�o>&iWjD[`ndatXDXÁaoX4jDatXwifaon¥cDVby^ad_z|g�z%³jD[ln�atXDX �.��VzX�e�_z�Ue¸|`XcDTWaËVbh\cDadjD��aoklVYevcwa�iWjD[ln�atXDX�ºVbc4�Ee¸|}Z*aEcwTIa}<wjwadcwVzjwVzhW�4>[^jUcwTWaf<De�jDVzXwVbhI�o>4iIjw[ln�aoXwXUe^XU�8at_b_É�~�[gcwa$cwTIe�cºcwTIa$[ghI_b|(yve�jDVzegZW_baoXFmIXwatk�Z`|+<wXw�UcDnuTa>�e�jDaatV{cDTWadj¢jDad�gVYXÁcwadjuXt�v[gj,�g_z[gZIeg_\[^jOXscuevcwVYndl¨XÁcw[gjDatk��g_z[gZIeg_b_z|1n¥�,Z�F\O7@� SUTWa XscuevcwVYn XÁcwjDmIn�cwmWjDa i*[gVzh\cwadjo� <wia>W��kla �fhWatXe Xscue�jwcwVzhW��i*[gVzh\c�pr[gj�XwategjDnuTWVzhW��cwTWjD[gmI�gTÓcwTWa

<ÁiWjD[lnA> e�jDjDe¸|Ðcw[Ï_z[`ntevcDa�cwTWa�hIa�9`cqiWjD[`ndatXDX�cw[egn�cwVzy¸e�cwa^� ��cuXËmIXwa�jwaoklmIn�aoX�cwTWa}ZIVze^XËXÁTW[v�ÂhÑcw[iWjD[`ndatXDXÁaoX�adh\cwatjwaok aoe�jD_b|�Vzh cwTWa <wiWjD[`n�>�e�jDjDe¸|^���pp<Áia>qVzX.h`mW_b_É�³Xwa�c.VbcDX.yve�_zmWa<cD[}cwTIaBZ*ad�^VbhWhIVbhW�[�p�cwTWa3<ÁiWjD[lnA>�e�jDjDe¸|^�<SUTWVYX�XwTW[gmW_Yk�[ghW_z|&[lntn�mWjmWi*[ghBcwTWa�y^adjD| �IjuXsc�ndeg_b_F[^h <wXw�UcDnuTa>2,Z�F\ �(� Ô nte�_z_�[gh <DXwe¸y`ma> l �\���^�mnEXDe¸ygaoX�cwTWa&ndmWjDjwath^cyve�_zmWatXÂ[gp¢cwTWa4ath`y\VzjD[ghW�Eadh\c�eghIk�Xscuegnu]7i*[gVzh\cwatjDX

lrj¥��eghIk�jD�4n�,Z� � B(� <ÁjDa�cDma> l¨�`��$\�on�jDatXwa�cDX<ju��eghIkÎju�W�Âe�hIk��Â��[\XscVb�Ei*[gjwcDegh^cD_b|^��jDatXwa�cDXGcDTWaÂ]gatjwhWat_WegkWkWjwaoXwX,jDad�gVYXÁcwadj�.cw[ËegkWkWjwaoXwX8cwTIaf<wXDnuTWatklmI_batj�' X >�kWe�cDeEXÁat�g�Eadh\c,,Z� ��g-� %³TfegXwa(SU��[EZfat�gVzhIX��

SUTWaBnd[lkla<prjD[g� cwTWVYX�_bVzhWa7cw[&_zVzhWa��^�g��$}VzX.[ghW_z|ady^adjEa�9latndmlcwaok Z\|Ñ]gatjwhWat_ÂiWjD[`ndatXDX �.�W� SUTWatjwae�jDa�cs��[7hWaoXscDatkq_z[`[giIXt�*prjw[^� �ÂTWVznuT&cwTWatjwa.VzX(hW[a�9lVbcUmIh^cDVb_Ge.jDmWhWhfe�ZW_za�iWjD[`ndatXDXUnde�h�Z*a1pr[gmWhIk��Ô�c�Xw_ze^nu]&i*adjDVb[lkWXt�,cwTWaBiWjD[`ndatXDXÁ[^j�XwifathIkWX.��[\Xsc[�p,V{cuX�cwVz��a�aA9latn�mWcwVzhW�._zVzhWa��g�^���W�,��cÂVzXU[^hW_z|7klVYXsÒcwmWjDZ*atk�cwTIadhInda4Z`|�egh}Vbh\cwatjwjDmWilcil¨ag� �I��prjD[g�/cwTWan�_z[lnu]yn%

,Z� � v-� SUTWa #feg� <ÁjDmWhWjDmWha>�VYX<jDatXwa�ct��lr��cBVzX7mIXÁaokÑcw[VzhIklVYnde�cwa�cDTIevcBe�TWVz�gTIadj<iWjDVz[gjDV{cs|�iWjD[ln�aoXwX�cDTIe�hcDTWaEn�mWjDjwath\c½iWjD[ln�atXDX�VYX(jwaoegkl|Bcw[�jDmWh��+<wXw�UcDnuTa>VYX1e�Z*[gmlc(cw[�_z[\[^]�pr[gj½cwTWaETWVz�gTIatXÁc(iWjDVz[gjDV{cs|�iWjD[�ÒndatXDXd� n�, ,O,a7(� SUTWa$iIjwVz[gjDV{cs|([�plcDTWai<De�jDVzXwVzhW�o>UiWjD[ln�aoXwXºVzXGhW[�cDatkVzhW<wn�mIjwiWjDV >bl¨eB�g_z[gZIeg_GyvegjwVYe�ZW_za�nÂpr[gj½prmlcwmIjwaEjDa�pÀÒatjwathIn�a�eghIk�n�[g�EiIegjwVYXw[gh , ,O,O\-� Ô�hW[gcwTWatj�ndeg_b_F[^h3<ÁjDa�cDma>�jwaoXÁadcDX�j¥�l�lju�.eghIk<cDTWaXwady^adh\cwT�]^adjDhWad_$e^kWkljDatXDX1jwat�gVYXscDadj1cD[qyve�_zmWatX4egilÒiIjw[^iWjwVYevcDa�pr[^jÂcwTIaf<we�jDVYXÁVzhW�o>�iWjD[`ndatXDX�, ,O,��-� %³TIe^XÁa1SUTWjDada1Z*ad�gVzhIX �

<DXÁmIjwat�o>ilÁÖ¸��#g×onºjDatXwa�cDXGcDTWaÂmIXwadj¢�E[`kWa�Tfe�jukl��egjwaXwad�^�Eadh\cDe�cwVz[gh�jDad�^VzXÁcwatjDXºmIXwVbhW�½cwTIaUXÁcw[^jwaok4iWjD[�cD[�Òcs|`i*atXUpr[^jUcwTWa4egjwVYXwVbhW��iWjD[ln�atXDX�, ,aB Q-� SUTWa<n�[^�E��ath\c4�ÂTWVznuT�Z*ad�^VbhIX4TWadjDaËVzX4hW[�c�athlÒnd[gmWjue��^VbhI�I�,��a1�ÂVz_b_FjDa�cDmWjwhBcw[�cDTWVzXUi*[gVzh\c�e��^egVbhcD[v��egjDkIX$cDTWa�adhfkB[gpºcDTWVzX�nuTIe�ilcDadj,, ,17 ~ � ��p$|g[^m&nuTWaonu]*�¼|^[gm}�ÂVz_b_��IhIk&cwTfevc1hW[ghWa.[�p³cDTWaiIjw[ln�aoklmWjDatX$�ÂTWVznuT�ndeg_b_ <wXw�UcDnuTa>�klVbjDatn�cw_z|Ea�9We���ÒVzhWaoXUcwTWa�yveg_bmWa1jDa�cDmWjwhIatkBTWadjDag�

!½hI_b| cDTWaÎiWjw[lndatklmWjDatX��ÂTWVYnuTÓnte�_z_}<whWad�ÂiIjw[lnA>�ÂTIVznuTqegjwa1Vzh^cDadjDatXÁcwaok�Vbh�cwTIVzX�y¸eg_bmIag�IZ*atnte�mIXwa�[�pcDTWa��Ue¸|ËcwTWa4nuTIVb_Yk7iIjw[ln�aoXwXUVYX �IjuXsc�e^n¥cwVzyvevcDatk1*�< �� � �2� � " � ( � � '��,Z�Fv��'� %³jD[ln�atXDX*iWjDVb[^jwVbcwVzatX�egjwaOnte�_Yn�mW_YevcDatk1egntn�[gjuklVzhW�8cw[cDTWa1pr[gjD��mI_ze

iIjwVz[gjDV{cs| � �EVbh�lsÖo�\�`�lÀcDVb�Ea4mfXÁaok �&%$x(�lÌ$Å � i hIVznda�n n

�ÂTIadjDa� �� cDVb�Ea�mfXÁaok �Legntn�mW�.mW_ze�cwaokËn�adh\cDjDeg_fiWjD[ln�aoXsÒXw[gj4cDVb�Ea}lrmIXwmIe�_z_z|�XwVzhIn�a7cwTWaBiWjw[lndatXDX4�UegX_YegXÁc¢Xw��egiWi*atk�VzhOn¥�^�EategXwmWjDatk�Vzh.nd_b[lnu]1cDVznu]lXklVzy`VzklaokÐZ`| Öt�ÑVÉ� a^�?cwTWVzjukWX�[�p.e XÁaon�[^hIkF�

l¨Çq[gjDa([^h�cwTWVYXÂ_YevcwatjÂ�ÂTWadh���a4klVYXwndmIXwX�cDTWan�_z[lnu]<Vzh^cDadjDjwmIilct� n�� ,�� %8x½�lÌ8Å � �?Öt�g�2� B � <wi hWVznda�>7VzX½eËiIe�jue��Eadcwadj½mIXwatk�cw[BZWVYegXÂcDTWaiWjD[ln�atXDX(iWjDVb[^jwVbcs|g�E��c�VYX1hW[gjD�Ëe�_z_b|&if[\XÁVbcwVzygae�hfkETWadhInda�jDatklmIndatX³cwTWa�iIjw[ln�aoXwX�' XOa �¼atn�cwVzygaiWjDatndatklathIn�a^�

~�[gcwa cDTWaÓXw[g�Eat�ÂTIevc�nd[ghlprmfXÁVzhW�:nd[gh`ygath^cDVb[^h Vbhx�~���¾ cwTfevcËcwTIa}_b[v��adjEcDTWa}iWjDVb[^jwVbcs|g�8cwTWa}TIVb�^TWadjËcDTWaiWjDatndatklathIn�a^�³SUT\mfXÂeEiWjwVz[gjDVbcs|Ë[�p �*Öt�.Z*atevcuX�eEiWjDVb[^jwVbcs|[�p�Öt�^��atygadjD|ËcDVb�Eag�#g×

Page 48: A Commentary on the Sixth Edition UNIX OS -- Lions

,Z�Fv�g-� �`adc cwTIa¿jDatXDnuTWatklmI_bVzhW� #feg�MVbp�cwTWa3iWjD[`ndatXDXd��ÂTW[^XwaUiWjDVb[^jwVbcs|�TIe^X 4smIXÁc$Z*adadhËjDatnte�_Yn�mW_YevcDatkF�gTIegX_baoXwXUiIjwaon�atkWadhInda½cDTIe�hBcwTIa4n�mWjDjwath\cUiIjw[ln�aoXwXt�SUTWa�XwadhfXÁa�[gpGcDTWa1cwaoXsc�[^h�_bVzhWa��lÖo�^�.VYX�XÁmIjwiWjDVYXÁVzhW�I�aoXÁi*atndVzeg_b_z|B�ÂTIadhqVbc½VYX�nd[g�EiIe�jDatk��ÂVbcwT�_bVzhWa.�WÖA$IÖ^�U��a_zate¸y^a�V{c�cD[ËcwTIa4jwaoegklatjUcw[7XDevcDVzXÁpr|�TWVb�ËXwad_bp¢cwTIe�c�cwTWVYX½VzXhW[gc�e�h7atjwjD[gjo�ql¨È�Vzh\c �O_z[`[g]<evcUcDTWa1iIe�jue��Ea�cDadjuX³pr[^j�cwTWante�_z_zXU[^h@<DXÁadcwiWjDV?>I� n

�< ��8� � � �� � ( ' ' �

SUTWVYX�iWjD[`ndatklmIjwaBVzX�ndeg_b_zatkIlÀprjD[g� hWaoe�jD_b|r#g��klV �¼adjDadh\ciW_YegndatX�Vzh�cwTWaBn�[lkla�n(�ÂTIadh�e�]gatjwhIad_OiWjD[ln�atXDX�nuTW[`[^XwatXcD[EXwmIXwifathIk�V{cuXÁat_{ps�8SUTWadjDa�e�jDa�cs��[EiIe�jue��Ea�cDadjuX�� cwTWa1jDate^XÁ[^h<pr[gj½XÁ_zadatiWVbhI�2 eUiWjDVb[^jwVbcs|��ÂVbcwT��ÂTWVYnuT1cwTWa$iWjw[lndatXDX¼�ÂVb_z_gjDmWh4evpÀcDadjZfatVbhI�Ee¸�Ue�]^adhWaokF���pFcwTIVzX$iWjwVz[gjDVbcs|�VYX³hWat�^evcDVby^aUcwTWa½iWjD[`ndatXDX³ndeghWhW[gc³Zfaegjw[^mIXÁaok�prjw[^� V{cuX½Xw_batadi�Z\|�cDTWa.egjwjDVbyveg_º[�p$e3<wXwVb�^hIe�_ >W�

<DXÁVz�ghIeg_zX >�egjwa�klVYXDn�mIXDXÁaok7Vzh&Í8TIe�iWcwadj�SUTIVbjwcwatadh��,OQ ~ Q(� SUTWaÂn�mIjwjDadh\cOiWjD[`ndatXDXÁ[^j,XÁcDe�cwmIX¢VYXOXDe¸ygatk4cw[1iWjDa�ÒXÁatjwy^aOcwTIa8VzhIn�[^�EVbhW�(iWjD[ln�atXDXw[gjºiIjwVz[gjDV{cs|1e�hfk4iWjDa�Òy`Vb[^mIX���[lkla�Vzhlpr[^jw�ËevcDVb[^h ,OQ ~ ,-� ��pIcDTWaUiWjDVb[^jwVbcs|1VzX¢hW[^hlÒ�hWad�\evcwVzyga^�ve�cDatXÁc¢VYX¢�Ëegklapr[gjs<w��egV{cDVbhW�EXwVb�^hIe�_YX >2,OQ ~ g-� Ô Xw�Ëe�_z_fndjwVbcwVYndeg_IXÁaon¥cDVb[^hËZfat�gVzhIX³TWatjwa^�^�ÂTIadjDadVzhcwTWa(iWjD[ln�atXDX�XscuevcwmfX8VYXUnuTIe�hI�gatk7e�hIk<cwTWa1iIegjDeg�.Òa�cDadjuX.egjwa�XscD[gjDatk�Vzh �^adhWatjDeg_b_z|�egndndatXDXÁVzZW_za7_z[lndevÒcwVz[ghIXSl¨y`V( ^�O�ÂV{cDTWVbh�cDTWa4e�jDjDe¸|r<wiWjw[ln�>on¥�

SUTWVYX�n�[lklaÎVzX�ndjwVbcwVYndeg_ËZfaondegmIXÁa cDTWaÐXweg�Ea VzhlÒpr[gjD�ËevcwVz[gh �Iad_YkWXL�Ëe¸| Z*a3Vzh\cwatjwjD[g�\evcwaok e�hfknuTIe�hI�gatk¿Z`| <Á�Ue�]gatmWia>=l �lÖ^Ö�#4nq�ÂTWVYnuT3VzX�prjDa�Ò� mWadh\cw_z|7nte�_z_baok7Z`|7Vzh\cwatjwjDmWilcÂTIeghIkl_zadjuX�

,OQO\ Q(� �ÏTWath <ÁjDmWhWVzha> VYX�hW[^hlÒ dadjD[I�<cwTWaLXwnuTWaoklmW_zadjlriWjD[ln�aoXwX �.�onÂVzXÂ�Ue�VbcwVzhW�EcD[<XÁ�Ue�i}e�hI[�cwTIadj�iWjD[�Òn�aoXwX�Vzh^cD[Ë�Ëe�VzhB�Ead�E[^jw|

,OQO\O7@� SUTWa�nde�_z_�[^h <wXw�UcDnuTO>�jwatiWjwaoXÁath\cDX<eÑklad_Ye¸|Ñ[gpmWhW]`hW[v�Âh�a�9`cwath\c.klmWjDVbhI���ÂTIVznuT�e�jDad_zadyve�h\c�a�9`ÒcwatjwhIeg_8atygath^cE�Ëe¸|�TIe¸ygaB[lndn�mIjwjDatkF�ÑÈ�adhfn�aBcwTWaXÁaon�[^hIk4cDatXÁc$[ghz<wVzXDXwVb�4>�lÉ���m(\�mn,VYXOhW[gc$VbjDjDad_zadyve�h\c�,OQO\ ~ � )W[^j�hWat�^evcDVby^aÎiWjwVz[gjDVbcs| <wXw_batadiIX >W�Ë�ÂTIadjDaÎcwTWaiWjD[`ndatXDX4cs|`iWVYndeg_b_z|���egV{cuX.pr[gj�prjwatadVzhW��[�p½Xw|lXscDad�cDegZW_ba�XÁiIe^n�a^�UcwTWa�[`ntn�mWjDjDadhIndaq[�p4e�<DXÁVz�ghfe�_ >�VzXhW[�cÂe�_z_z[v�8aok�cw[Ekla #Iaon¥c�cwTWa�nd[gmWjuXÁa½[�p�cDTWa1egn¥cDVby\ÒV{cs|^�

�< �� ( � 0=� � ( � � ,��SUTWVYX&iIjw[ln�aoklmWjDa n�[^�EiW_bat�Eadh\cDXI<wXw_batadia>I� ��c�XÁVz�EiW_z|Xwate�junuTWaoXËcwTIa�Xwa�c�[�p.eg_b_(iWjD[ln�atXDXwatXt��_b[`[^]\VzhW� pr[gj�e�h`|iWjD[ln�atXDXwatXF�ÂTWVYnuT�egjwa�<wXw_batadiWVzhW�o>�pr[^j,e½XÁi*atndV �fatk�jDate^XÁ[^hlr�^Vby^adh�egX(cwTIa�ife�jue��Ea�cDadju<wnuTIegha>on���e�hIk�jDategn�cwVzyvevcwVzhW�cwTIatXwa(VzhIklVzy`VzkWmIe�_z_b|BZ`|7eEnde�_z_�[^h@<DXÁadcwjDmWha>W��< �� , � �2�!0 � � (=� , 3 �,Z�47�Q-� SUTWa�iWjw[lndatXDX�XÁcDevcDmIX�VzX�Xwa�c�cw[W<D�lÅUx�~`>W�¢SUTWaiIjw[ln�aoXwX��ÂVz_z_4hW[v��Zfa�nd[ghIXwVzkWadjDatk�Z\| <wXw�UcDnuTa>eghIk <wXDnuTWatk1>3egXÎe ndeghIklVYkWevcDa pr[^jÏa�9latndmlcwVz[gheg�^egVbh ,Z�47��'� ��p<cwTIaÑe�jD[gmfXÁaok iWjw[lndatXDX&VYX&�E[^jwaÑVb�Ei*[gjwcDe�h\c

l¨_b[v��adj,iWjDVb[^jwVbcs| * n1cwTIegh4cwTIaUndmWjDjwath^c,iWjD[`ndatXDXd�¸cDTWajDatXDnuTWaoklmW_zVbhW� #feg�I� <wjwmWhIjwmWhO>�VYX³Xwa�c¢pr[gjO_YevcDadjOjDa�pÀÒatjwathIn�a�,Z�47�B-� ��pi<wXDnuTWaok1>ËVYX½Xw_batadiWVzhW�f�*�Ue�VbcwVzhW�7pr[gj1e<iWjD[ln�atXDXcD[E<DXÁ�Ue�i�Vzha>W�veghIk�VbplcwTWa8hWad�Â_z|�e�jD[gmIXwatk(iWjD[ln�atXDXVYXÂ[^h�klVYXw]*�I��eg]ga(mWi <wXDnuTWatk1>I��`VzhIn�aLV{c cwmIjwhIX [^mlcÑcDTIevc�<wXDnuTWaok1> VYX cDTWaL[ghW_z|iWjD[ln�atkWmWjwa��ÂTWVYnuTÏnde�_z_YXËXÁ_zadatiÑ�ÂVbcwT�<wnuTfe�ha>�a � mIeg_Ucw[

<��1jDmWhW[^mlc >I�f_zVzhWa<�lÖA$`�<nd[gmW_YkqZ*aEjwatiW_ze^n�aok}Z`|�cwTWaEjDa�Òn�mIjDXwVby^a(nte�_z_��= N � ��� � ��#>�� � �����5&

[gjUZ*a�cwcwadj½XscDVb_z_ �IZ\| 4smIXÁc�0# ����#>�� � ��� &,� N <�$�'&

�ÂTWatjwa�<wXwj >½VYXOe½_Ye�Z*ad_Wcw[1ZfaUVzhIXwadjwcwatk�evcOcDTWaUZfat�gVzhWhWVzhW�[�p,_bVzhWa��WÖ�#g×I��< ���3 � � � � � (8( '�� �SUTWaqnd[g�E�Eadh\c7evcËcDTWaqZ*ad�gVzhWhWVzhW��[gp(cDTWVYXËiWjD[`ndatklmIjwal �^�g�WÖ�n4XDe¸|lX��E[\XscE[�p(�ÂTIevcEhWadaokWX�cw[�Z*a�XDe�VYk egZf[^mlccwTIa�iIjw[ln�aoklmWjDag�¸a�9Wndadilc¢pr[gj,cDTWa � mIatXÁcwVz[gh�[gpc<DXÁ�Ue�iWiIVbhW�[gmWc >��ÂTWadh�hW[gcÂadhW[^mW�gT�n�[^jwa1VYXÂe¸y¸egVb_Ye�ZI_ba^�~�[gcwaËcDTIevc <wa�9liIeghIk1>�cDeg]gaoX�hW[qiIegjÁcDVzndmW_Ye�j�hW[gcwVYn�a[�pGcwTWa4nd[gh\cwath\cDXU[�p,cwTIa�mIXÁatj�kWevcueEe�jDate.[gj�XÁcDegnu]<egjwaoeW�, , ~ ~ � ��p�cwTWa�a�9liIeghIXÁVz[ghÎVYXBe^n¥cDmIe�_z_b|Îe�nd[gh\cwjuegn�cwVz[gh��cDTWadh�cDjwVz�¿[ �<cwTWaÂaA9Wn�atXDX,prjD[g� cDTWaÂTWVz�gTËegkWkWjwaoXwXathIk�, ,a\��'� <wXDe¸y`ma> XÁcw[^jwaoX&cDTWaÎyve�_zmWatX�[gpBj¥� eghIk¿ju��Vbh

<wm�� m jDXDe¸yy> , ,a\ B-� ��pºXÁm#�ËndVbath\c8�Ëe�Vzh<�Ead�E[gjD|�VzX8hW[�cUe¸yve�Vz_zegZW_ba��b�z�, ,a\O7(� SUTWa�adh`y`VbjD[ghW�Eath^c(if[^Vbh\cDadj1e�hIk�Xscuegnu]�if[^Vbh\cDadjegjwa�jDatnd[gjuklatk e��\e�Vzh Vzh <Ám�� m XwXDe¸yy>W�Ï��mlc<hW[gcwacDTIevcEXÁVzhInda7hW[qhIad�?iWjD[ln�atkWmWjwaoX�TIe¸y^aËZfatadh athlÒcDadjDatkF�ÂeghIkÑXwVzhIn�a�cDTWadjDa}TIegXEZ*adathÎhW[�n�mW�.mW_YevÒcDVby^a�XÁcDegnu]��gjD[v�UcwTº�vcwTWa½yve�_zmWatX$jwaon�[gjuklaok�egjwaUcDTWaXDe��Ea�egXÂe�c�_bVzhWa4�g�m(WÖ�

$\�

Page 49: A Commentary on the Sixth Edition UNIX OS -- Lions

, ,a\�g-� < 9WXw��egia>Sl $4#g�o(onFnd[giWVzatX�cwTWa�n�[gjDa³Vz�Ëe��ga$pr[gjºcwTWaiWjD[`ndatXDXEklatXwVb�^hIevcDatkÑZ`| VbcDX �IjuXÁcEife�jue��Ea�cDadjEcw[klVYXÁ]¼��`VzhIn�a&cwTWa�XÁaon�[ghfkÎiIe�jue��Ea�cDadjBVzXBhW[ghWÒ tadjD[�cwTWa�Ëe�VzhB�Ead�E[^jw|<egjwaoe�[lndndmWiWVzatkBZ`|EcwTWa4kWe�cDeEXwad��Ò�Eadh\c³VzX$jwadcwmWjDhWaok�cD[�cwTIa�_bVYXÁc³[�p�e¸yve�Vz_zegZW_baÂXwiIegndag�È�[v��ady^adjGcwTWa�nd[g�EiWmlcuevcwVz[ghËnd[gh\cwVzh`mWatX¢mIXwVzhW�(cwTWaXweg�Ea�e�jDate(Vbh7�EegVbhË�Eat��[^jw|.mWh\cwVz_WcDTWa�hWaA9`c8ndeg_b_[gh <ÁjDa�cDma> lÉ�lÖo×m#on8Vzh@<DXÁ�UcunuTa>W�

~�[gcwa�e�_YXÁ[}cDTIevc.cwTWa�ndeg_b_8[gh <wXDe¸y`ma>}evc�_bVzhWaB�WÖ�(^×Vzh <wXw�UcDnuTa> XscD[gjDatX�hWat� yve�_zmWaoX}Vbh <wm�� m juXDe¸yF> evpÀcDadjcDTWa�klVYXÁ].Vb�Ëeg�gaUTIegX³ZfatadhE�Ëegkla*l e�hIk�cDTWadjDa�pr[^jwaÂXwadjDygatXhW[EmIXwa�prmI_ºiWmWjDi*[^Xwa1XwVzhIn�a1cDTWa4n�[^jwa1Vz�Eeg�ga1TIe^XÂe�_zjwaoegkl|Z*adath�[��<n�VYe�_z_b|P<De�ZIeghIkl[^hWatk1>4n�, ,a\ v(� SUTWaI<D�W�`��Ô% >�#fe��ÑVzX�XÁadcBVzhÏcwTIa�iWjD[ln�aoXwX�' XiWjD[`n8e�jDjDe¸|(ad_zad�Eath^co� l SUTWVYXGVYX,hW[�cOXw��egiWifaok�[gmWct�XÁ[.cwTIa�a �¼atn¥c½VzXUhW[gc�_b[\Xsc n�, ,a\ ~ � <wXw�UcDnuTO>4VYXÂnde�_z_zatkF�WeghIkËcDTWa1iWjw[lndatXDXd�lXÁcwVz_b_FjDmWhlÒhWVzhW�ÏVbh¿V{cuXq[g_Yk e�jDateÏXwmIXwifathIkWXqVbcDXwad_bps� �`VzhIn�acwTWa�ndeg_b_G[gh < 9WXw��egia>E�ÂVz_b_,TIe¸yga�jwaoXÁmW_bcwaok�VbhqcwTWa

<D�lÆ�!�Ô½Ä`>�#fe���Z*adVzhW�ËXÁ�ÂVbcDnuTWaok7[ �,�`cDTWadjDa(VzXUhW[��e¸|7cwTIe�c+<DXÁ�UcunuTa>Ë�ÂVz_b_¢nuTW[`[^Xwa�cDTWa.iIjw[ln�aoXwX�pr[gjVb�E�EatkWVze�cwa1jwaoegn�cwVzy¸e�cwVz[gh��!½hW_z|7evpÀcDadj�cwTIa1kWVzXw]ËVb�Ëeg�ga(TIegX�Z*adadh�n�[^iWVzatk<Zfegnu]Vzh\cw[<n�[^jwa�eg�^e�Vzh�nde�h�cDTWa4iWjD[ln�atXDXUZ*a�egn�cwVzy¸e�cwaok�eg�^egVbh��SUTWa <wjwadcwmWjDha>�a�9latndmlcwaokÑZ`|�<DXÁ�UcunuTa>�VzX<e�jDa�cDmWjwhÑcw[cDTWa�iWjD[`ndatklmIjwa1�ÂTWVYnuT�nte�_z_baok3<wa�9liIeghIk1>W�

�< �� � � � � � �� ��=" � " �� ��ÏTIe�c$TIegiWifathIX¢cD[�cwTWa�iWjw[lndatXDX¢�ÂTWadhËVbc$VYXOjwaoegn�cwVzy¸e�cwaokVÉ� a^�OV{c�Z*atnd[g�EatX�cDTWaf<wegjwVYXwVbhW�4>4iWjD[ln�aoXwXUVzh <wXw�UcDnuTa>&%, ,O,O\(� SUTWa�XÁcDe^nu]7e�hfk�adh`y`VbjD[ghW�Eath^c�i*[gVzh\cwatjDX�egjwa1jDa�ÒXscD[gjDatk�prjD[g� <Ám�� m juXwe¸yy>zl ~�[�cDa<cDTIevcEeqi*[gVzh^cDadjcw[ <Áma>�VYX1e�_YXÁ[�e�if[^Vbh\cwatj(cw[ <Ám�� m juXwe¸yy>tl¨��$fÖo�onZWmlc4�z�b�, ,17�Q(� ��p�cwTWa<nd[gjDa.Vz�Ëe��gaE�UegX1Xw��egiWifaok&[^mlc4ag� �I�EZ`|

<ÁaA9`ife�hIk1>B�z�b�, ,17 ,-� ~�[ jwat_bVYe�hInda}VzX<iW_ze^n�aokÎ[ghÎcwTIaqyve�_zmWatXË[gp1cwTWaXscuegnu]�e�hIkEath\y`Vzjw[^hW�Eadh\c$i*[gVzh\cwadjuXt�^e�hfkEcwTWat|Ëe�jDajwaoXÁadcSUTWa � mWatXÁcwVz[gh4VYX,V{pIcwTWa�yve�_zmWatX,XscD[gjDatk�Vzh <wm�� m XwXDe¸yy>e�cÐ_bVzhWaÓ�^��(�$?egjwaLcwTIa¿Xweg�Ea egXÏyve�_zmWaoXÐXscD[gjDatk/Vbh

<wm�� m jDXDe¸yy>4evcU_bVzhWa��g�m(WÖg�\TW[v�ÐklVYk7cwTWat|Ë�ga�c�cw[�Z*a(klVbpÀÒpratjwath^c�%%³jDatXwmW�Ëe�ZI_b|7cwTWVYXÂVYX��ÂTIe�cp<Á|g[^m�egjwa�hI[�c�a�9li*atn�cwatkcD[ mWhIklatjDXÁcDeghIk1> l¨_bVzhWa��^��#o(on �z�b� nd_baoe�jD_b| < 9WXw��egia>XwTW[gmI_zk�Z*a<Vzh\y^atXÁcwVz�^e�cwatk �z�b�BcwTIa<cwjue�Vz_ �Ihfe�_z_b|�adhIkIX�evcÍ8TIegilcwatj),V{pÀcDadath��b�z�UVbh�cDTWa4�Eategh\cwVz��a�|^[gm}�Ëe¸|7�ÂVYXwTcD[�Vzh`ygaoXscDVb�\evcwa½pr[gjU|^[gmWjuXÁat_{p,XÁ[�cwTfevcÂ|g[^m7�Ëe¸|�4s[gVzhBcwTWa

<u�g��#o(m>.n�_zmWZ�cwTIe�cU�.mInuT}XÁ[`[^hWadjo�

�< ��#' )7� " �#" � � $� � �#"���� ���pFcs��[4[gj8��[^jwa�iWjw[lndatXDXÁaoX³[gi*adjuevcDa�[gh<cwTWa(Xweg��a½XÁadc8[�pkWe�cDeW��cwTWath�cDTWa<n�[^��ZWVzhWaok&[^mlcwiWmWc4[�p�cwTWaËXwa�c4[�p�iWjD[�Òn�aoXwXwatX½�Ëe¸|}kladi*adhIk�[ghqcwTWaEjDad_YevcwVzyga.XÁ|`hInuTWjD[ghIVzXDevcDVb[^h[�pGcwTWa�yvegjwVz[gmIXUiIjw[ln�aoXwXwatXt�SUTWVYX7VYX7mfXÁmIeg_b_z|În�[ghfXÁVYkladjDatk cD[�Z*a�TWVz�gTI_b| mWhIkladÒXwVbjue�ZW_za�e�hIk cw[�Z*aqe¸yg[gVYklaok evc<eg_b_�nd[^XÁcDXt� SUTWa}Xw[g_zmlÒcwVz[gh7VzX8mIXwmIe�_z_b|�cD[.kla��IhWa+<wn�jDVbcwVYnde�_*XÁaon¥cDVb[^hIX >ElrVbc�VYX³cDTWaiWjD[g�^jDeg���Eatj�' X(jwaoXÁi*[ghIXwVzZWVb_zVbcs|&cD[qjwaon�[^�ghWVYXÁa�cDTWatXwa�n4VbhcwTIaBn�[lklaB�ÂTWVYnuT VYX�aA9`aon�mlcDatk�Z`|�ate^nuT�iWjD[ln�atXDXt�&SUTWaiWjD[g�^jDeg���Eatj8�.mIXscÂcDTWadh}athIXwmWjwa(cDTIevc�e�c�e�h`|ËcwVz�Ea4hW[�E[gjDa�cwTIeghÏiWjD[`ndatXDXËVYX<a�9laon�mlcDVbhW�Ñe�XÁaon¥cDVb[^h [gp4n�[lkla�ÂTWVYnuTBVYX�ndjwVbcwVYndeg_F�ÂV{cDT}jwaoXÁi*atn�c�cD[<e�iIe�jwctÖon�mW_Ye�jÂXwa�c�[�pkWe�cDeW���h�x½~���¾ mIXwadj1iWjD[ln�atXDXwatX(kl[BhI[�c4XÁTfe�jDa.kWe�cDe�e�hIkXw[Ñkl[ hW[�c}n�[^h�#IVYn¥c�Vbh�cwTIVzX��Ue¸|g�MÃ1adjDhWat_½iWjD[ln�aoXwXwatXTW[v��ady^adj�TIe¸yga�XwTIe�jDatk�egntn�atXDX8cw[Ëyve�jDVz[gmIXUXw|`XÁcwat�/kWe�cDee�hfkBnte�h�n�[gh�#IVzn�ct���h�x½~���¾?e�h&Vbh\cwatjwjDmWilc�kl[`atX(hW[gc1nte�mIXwaEe7nuTIeghW�gaVzhËiWjw[lndatXDX³egX³e�kWVbjDatn�c8XÁVYkla�a��*aon¥co�R!½hI_b|��ÂTWadjDaÂ]gatjwhIad_iWjD[ln�atXDXwatX8�Ee¸|ËXwmIXwifathIk<cDTWad�ËXwad_zygaoX8VzhBcwTWa(�EVzkWkW_ba1[�pe1n�jDV{cDVznte�_IXwatn�cwVz[gh�Z`|.e�h�a�9liW_zVYn�Vbc8ndeg_b_l[^h}<DXÁ_zadatia>W�^kl[`atXe�hBa�9liW_zVzndV{cU_z[`nu]ËyvegjwVYe�ZW_za��ÂTIVznuT��Ëe¸|�Z*a1[gZIXwadjDygaokËZ`|eE�gjD[gmIi�[gpOiWjw[lndatXDXÁaoX n�hWatatk�cD[ËZfa.Vbh\cDjw[lklmIndatkF�ÂÌ$ygadhcwTIadhBcwTWa�egn�cwVz[ghIX�[gp�cwaoXscDVbhW�ËeghIk7Xwa�cwcwVzhW��cwTWa1_z[`nu]lXUkl[hW[gcUmfXÁmIeg_b_z|<TIe¸y^a(cw[EZfa��Ëe^kla�VbhfXÁatiIe�jue�ZW_zag��`[g�Ea�n�jDV{cDVznte�_UXÁaon¥cwVz[ghfX�[gp�n�[lklaBegjwa7a�9latndmlcwaok�Z`|Vzh^cDadjDjwmIilc}TIe�hIkW_batjDXt� Sº[ÎiWjD[�cDatn�cq[�cwTIadjqXwatn¥cDVb[^hIX�[�pn�[lkla7�ÂTW[^Xwa<[gmWcDn�[^�Ea<�Ëe¸|&Z*aBe �¼atn�cwaok�Z`|&cDTWa7TIeghlÒkl_zVbhI�.[gpGn�atjÁcue�Vzh7Vzh^cDadjDjwmIilcDXt�\cwTWa1iWjD[ln�atXDXw[gj$iIjwVz[gjDV{cs|EVYXjue�VYXÁaokqcDad�Eif[^jDegjwVz_z|&TWVz�gT�athW[gmW�^T�Zfadpr[gjDaËcwTWaBn�jDV{cDVznte�_Xwatn¥cDVb[^hEVzXOath\cwadjDatk.cD[4klad_Ye¸|.XwmInuTEVbh\cDadjDjwmWiWcDXOmWh\cDVb_fV{c³VYXXDevprag�¼�ÂTWathqcDTWa.iIjw[ln�aoXwXw[gj�iWjwVz[gjDVbcs|�VYX½jwaoklmIn�aokqe��\e�Vzh��SUTWatjwa1e�jDa�[gp,n�[^mWjuXÁa(e�h`mW�.Zfatj�[gp,nd[gh`ygath^cDVb[^hIX³�ÂTIVznuTVzh^cDadjDjwmIilc(Tfe�hIkl_zVzhW�}n�[lklaEXÁTW[^mW_Yk&[^ZIXÁatjwy^ag�FegX(�ÂVz_b_OZ*aklVYXwndmIXDXÁaok7_YevcDadjÂVzhqÍ8Tfe�ilcDadj�~�VzhWa^���hÐiIe^XwXwVbhI��V{c��Ëe¸|ÑZ*a�hW[�cDatkÎcDTIevcBcwTWa�XscDjDe�cwat�g|egkW[gilcDatk�Z`|�x�~���¾/��[gjD]lX4[ghI_b|�pr[gjEe&XwVzhW�g_za7iWjD[ln�aoXsÒXw[gjÂXÁ|lXÁcwat�Me�hIkB�8[^mW_Yk7Z*a(cw[�cue�_z_b|7VbhIegiWiWjD[giWjDVYevcwa½Vbh}e��mI_{cDVbiWjD[ln�aoXwXw[gjÂXw|`XÁcwat���

$IÖ

Page 50: A Commentary on the Sixth Edition UNIX OS -- Lions

�E��� ������� E ���

�������� ���� =�2� �;������:�)*<����%.=6� ���1��*+��@���� �$�)*+%�= �)* � ���(�>��*��*<3'@��>�;���$%���)�+�<= ��*B�1���(�>��* *<3�@(�>��4� *+��@������$% �$�)*+%�= �)* � ���(�>��* *<3'@��>� ������*B&%�3��:� ��3$%'%'�)�

��=6� ���$���:�;�����>!����������� �C���*<����"���������* 3$���� ��/�� ����$3��� ���0����3������:�'4��6��� � @)* ���� %'�:�2� �8���$�$���)� �:� � �*!�$����%�" ���� �:@)�(��� ��"�����$%&� �� �����=8��� �$��&�:�)3'* �3(�>��� %��������������� �8������8��%�� ���>���:�����*B�"�4 �0� � � ���$%'� ��!����� � �G�$����" � �<� ��� @$��* � )������)�����)*

�8���$�$���)� �:� �(��" " �(% ������� �������>�)� �:��" " ��� =�����*B��#�� � 3��0�)*@)* � �* ��� ���:� �� $�(�)3(�>�1���<��*+��@��7�����>��*<3$���� ����>��(��3��0�1���*+��@C%'�)" ��#)��* ���>��" ������%1����#��������;�����6�@)��* ������� ��>���>�>��� � ���� �>���(�� ������$%����0� � �>�����$����4�6���2�0)�+�<= �)* � �����>�)*<* 3�@(�"! �*#� � � ��$��" �%$1� �.� �8�(�)�����

��� ��� � �*-���� �13'��� �:���� �� #)���<=��:��� @)* ��:�:�0���:����@$��* �� �)3��" ��* " � =8���)�������)* �1� �&� #��$%A����= �'� 4

( ) � � � � � � � � ����� � � �+* �� �*� � E � ��*u

��hÏcDTWat%8Ä`%�ÖgÖqnd[g�EiWmlcDadjo��egX<VzhÐ�Ëe�h`| [�cDTWadj�n�[g��ÒiWmWcwadjuXt�OcwTWatjwa�VYXEe�h&<wVbh\cDadjDjwmWiWc >q�EaonuTIe�hWVYXw���8�ÂTWVYnuTeg_b_z[v��X(cwTWa<nd[gh\cwjD[g_z_zadjuX½[gp�i*adjDVziWTWadjue�_³kWady`VzndatXsl¨�ÂTWVznuTegjwaËklaty\VYn�aoX�a�9`cDadjDhIe�_OcD[�cwTWa�Í %$x`n½cD[}Vbh\cDadjDjwmWiWc�cwTWaÍ %8x¿evc(e�iWiWjD[giIjwVYevcDa�cwVz�EatXt�*�ÂVbcwT&jwa � mIatXÁcDXÂpr[^j�[^ifatjÁÒe�cwVzhW�ËXÁ|lXÁcwad�/XÁatjwy`VYn�ag�SUTWaUXweg�Ea$�EatnuTIeghWVYXÁ� TIe^XºZ*adath4mIXwa�prmW_z_b|4eghIk4nd[ghlÒy^adhWVzadh\cw_z|Ee�iWiW_zVzatk�cw[ <scwjue�ifX >(�ÂTWVYnuT<e�jDaÂady^adh\cDXOVzh\cwatjÁÒhIeg_IcD[4cDTWa1Í %8x4�\�ÂTWVznuT7jwat_ze�cwaÂcD[�TIegjDkl�Ue�jDa�e�hfk<XÁ[gpÀcÁÒ�Ue�jDaËadjDjw[^jDXt�¢e�hIk�cD[qjDa � mWatXÁcDX4pr[gjEXÁatjwy`VYn�aËprjD[g��mIXwadjiWjD[g�^jDeg�ËXd��< �� , ��� � � ���� ��#�!0 � � �SUTWaUa��*aon¥c³[�p¼e�h�Vbh\cDadjDjwmWiWc¢VYX,cw[�klVzygatjÁc¢cDTWa½Í %$xÑprjD[g��ÂTIe�cwatygadjUVbc���e^XUkl[gVzhW�Ee�hIk7cw[EjDatklVzjwaon¥cÂVbcÂcw[Ea�9latndmlcwaeghW[�cDTWadjÂiWjD[g�^jDeg���ĽmWjwVzhW�<e�TIegjDkl�Ue�jDa(Vbh\cwatjwjDmWilc �

SUTWaBÍ %$x?XDe¸ygaoX½cwTWa7ndmWjDjwath^c4iIjw[ln�aoXwXw[gj�XÁcDe�cwmIX�8[^jDk lk%8�1n�e�hfk cwTWaÎn�mIjwjDadh\c�iIjw[^�gjue��Qn�[gmIh^cl�%UÍqn$Vzh�V{cuXÂVzh^cDadjDhIe�_FjDad�^VzXÁcwatjDX�

cwTWau%�Í?e�hIk %8� e�jDa<cwTIadh jwat_b[\egklaok�prjw[^�Acs�8[n�[^hIXÁaon�mlcDVby^a.��[gjukWX(_z[`ntevcDatk�Vbh�cwTWaË_z[v�Óegjwaoe7[gp�Ëe�Vzh��Ead�E[^jw|^� SUTWa�egkIkljwaoXwX�[gp�cDTWa��IjuXscq[gpcwTWaoXÁa(cs��[E�8[^jDkWX�VYXU]`hW[v�Âh�e^X8cwTWaf< XO2F�����a�E5k�.-�m/y����� � >�[gpGcDTWa1Vbh\cwatjwjDmWilc,

�IhIeg_b_z| cDTWaÐ[gjDVz�gVzhIe�_p%UÍ eghIk�%8�Óyve�_zmWatXÑe�jDaXscD[gjDatk(Vzh^cD[UcwTWa8hWad�Â_z|1n�mWjDjwath\cºXscuegnu]¼� lr�ÏTIa�cwTIadjcwTWVYXOVYX¢cwTIa�]gatjwhWat_l[gjOmIXwadj8Xscuegnu]�klatifathIkWXO[^h�cwTWahWad��yve�_zmWa�[�pGcwTWa*%��¼� nĽV �¼adjDadh\c4i*adjDVbiWTIadjue�_Oklady`VYn�aoX1�Ee¸|}Tfe¸ygaEklV �¼adjDadh\cy^atn¥cD[gj4_z[lnde�cwVz[ghIXt��SUTIa7egn�cwmIeg_$ygaon¥cD[gj4_z[lndevcDVb[^h�pr[gj.eiIegjÁcDVzndmW_Ye�j³klaty\VYn�aÂVYX³kladcwatjw�EVzhWatkEZ`|�Tfe�juk��ÂVzjwVzhW�f�^e�hfknte�h�[ghW_z|�Zfa�nuTfe�hW�^atk4�ÂVbcwTEklV �<n�mW_bcs|g�¢Ç}[gjDad[vy^adjGcwTWatjwa

e�jDaÂ��ad_z_fath^cDjwathInuTWaokËn�[gh`y^adh\cwVz[ghIX,pr[^j8nuTW[`[\XÁVzhW�4y^atn¥cD[gj_z[`ntevcDVb[^hIX8pr[gjUcwTIa�y¸egjwVz[gmfXÂklady`VYn�atXt�SUT`mIX�evpÀcDadj(cwTWaEVzh\cwadjDjDmWilc1TIegX([lndndmWjwjDatk��FZfaonde�mfXÁacwTIab%�ÍMTIegXEZ*adathÏjwat_b[\egklaokF�³cDTWa&Xw[gmWjun�a�[�p1VzhIXscDjwmfn¥ÒcwVz[ghfX8aA9latn�mWcwatk7Z`|EcwTWa�Í %$x�TIe^X8Z*adath�nuTfe�hW�^atkF�¢SUTWahWat�ÓXw[gmWjun�a�XÁTW[^mW_Yk&Z*aËe7iWjD[ln�aoklmWjDa�e^XwXw[ln�VYevcwaokq�ÂVbcwTcwTIa}ifatjwVziWTWatjDeg_�klady`VYn�a}n�[^h^cDjw[^_b_zadjE�ÂTWVYnuTÏndegmIXÁaok�cDTWaVzh^cDadjDjwmIilct�Ô�_YXÁ[�XwVzhIn�a�cwTIa %8� TIegXËeg_zXw[�ZfatadhÏnuTIeghW�gaokF�$cDTWaiWjD[ln�atXDXw[gj(��[lklaË�Ëe¸|qTfe¸ygaEnuTIe�hW�^atkF�E��h�x�~���¾���cDTWaVzhWV{cDVzeg_º�E[lkla��Ëe¸|BZfa.adVbcwTWatjE<ÁmfXÁatj >E[^jE<Á]^adjDhWad_ >W�IZWmlcevpÀcDadj7cwTWa�Vbh\cwatjwjDmWilco�ÂcwTIa&�E[lkla&VYX7eg_b�Ue¸|lXz<Á]^adjDhWad_ >W�ÅÂaonde�_z_�e�_YXw[�cDTIevc�eEnuTIeghW�ga1Vzh��E[lkla1Vz��iI_bVzatX �� / � eBnuTIe�hI�ga4Vzh&�Ead�E[^jw|��Ëe�iWiIVbhW�\Xd�Yl¨~�[�cDa�cDTIevc½cw[e¸y^[gVYk�e�h`|�nd[ghlprmIXwVz[gh��,ygaon¥cw[^j4_z[`ntevcDVb[^hIX4e�jDa<e�_bÒ�Ue¸|lX�Vbh\cwatjwiIjwadcwatk�egXU]^adjDhWad_F�E[lkla4e^kWkljDatXDXÁaoXd� n�� � e�nuTIe�hW�^aBVzhÐXÁcDegnu]�i*[gVzh\cwatjDXt��l¨ÅÂaondeg_b_ÂcDTIevcËcDTWaXÁcDe^nu]1if[^Vbh\cwatjt���y%&[gj,jD�I�¸VzXGcwTIa$[ghI_b|�Xwifaon�VYe�_`jwat��ÒVYXÁcwadj½�ÂTWVYnuT}VzX�jwatiW_bVYnde�cwaok�pr[gj�aoegnuT}�E[lklag�ÂSUTWVYXVz�EiW_zVbaoX�cDTIevcËevpÀcDadjEe&�E[lkla�nuTIe�hI�gag�,cDTWa�XÁcDe^nu]i*[gVzh\cwatj(yveg_bmWa��ÂVz_b_OTIe¸y^a.nuTIeghW�gaokqatygadh&cwTW[^mW�gTVbc�TIe^XUhW[�c�Z*adath�jDad_z[^e^klatk�* n�< -( ��� � ���� ��#�!0 � � � � � � �)W[^j�[gmWj4XDe��EiW_zaËXÁ|lXÁcwat���ºcwTWa7jwatiWjwaoXÁath\cDevcDVby^a�i*adjDVbiITlÒadjue�_½klady`VYn�atX7nuTW[^XwadhÐegjwa}_zVzXÁcwaokÎVbhÐS,e�ZI_ba&×I�bÖ^�Âe�_z[ghW��ÂVbcwTËcDTWadVzj�nd[gh`ygath\cwVz[ghIeg_ITIegjDkl�Ue�jDa�kla��IhWatk<ygatn�cw[^j$_z[�Ònde�cwVz[ghIXUeghIk�iWjwVz[gjDVbcwVzatXt�XO2F�����a� � 24�N� � ��24�N/15 ������24���N����� ���N�Z�o2F6�65��Z�o/y���k�O� ��24XZ�k�m2 �����k�a�N��� � ���N���O�N� � ��g�^� cwat_badcs|\i*a�VzhWiWmlc $ $�g�m$ cwat_badcs|\i*a�[gmWcwiWmlc $ $�\��� iIe�i*adjUcue�i*a�VbhIiWmlc $ $�\�N$ iIe�i*adjUcue�i*a�[gmlcDiWmlc $ $Öt�^� _bVzhWa4nd_b[lnu] � �Öt�m$ iWjD[g�gjue��E�Ëe�ZI_ba � �n�_z[lnu]���^� _bVzhWa�iWjDVzh^cDadj $ $�g�g� Å�Ã3klVzXw]7kljDVzyga � �hc/��5k2� �k�f �����24���N����� �S24�m���O� � ���m/y����� ��6s/1���

LM�N���O�N� ����2F6

�< -, � ���� ��#� 0=� � , ��� �� �� ��ÏVbcwTWVzh1cwTWVYXºXwad_zatn�cwVz[gh1[�plx�~���¾ÑXw[gmWjun�aOnd[`kWag�tcwTWatjwa³egjwaXwadygath iWjD[ln�aoklmWjDatX�]`hW[v�ÂhLe^X <ÁVzh^cDadjDjwmIilc}TIe�hIkW_batjDX >W�VÉ� a^�,�ÂTIVznuT<egjwaÂaA9`aon�mlcDatkËe^X¢cwTWa½jwaoXÁmI_{c$[gps�^eghIkE[ghW_z|EegXcwTIa�jwaoXÁmW_bcÂ[�ps�WVzh\cwatjwjDmWilcuX��

���0�� � �7L�F��$�'� #8�$� �Q�>N � (0F8, � �� � ���>N �!� ��� ��,�� #8�Q# �Q�>N � (0F�L � �� ��� �Q�>N � (���F0�'� �J# �Q�>N � ( � F�:'�� ��� �Q�>N � (���F$('�

$`�

Page 51: A Commentary on the Sixth Edition UNIX OS -- Lions

<Dn�_z[`nu]y>��ÂVz_b_8ZfaBa�9We��EVzhWatk�Vzh kladcDegVb_�VbhÑÍ8Tfe�ilcDadj7Ö^Ög�SUTWa�[�cDTWadjuXBegjwa�klVzXDn�mfXwXwatkÏ�ÂVbcwTÐcwTWa�n�[lkla&pr[gjBcwTWatVbje^XwXw[ln�VYevcwaok7klaty`VzndatXt��< 3 57�!"��8� " �#"� �

Ô�h�Vzh\cwadjDjDmWilcqkl[`atX�hW[gc�hIatn�aoXwXDe�jDVz_b|Î[lndndmWj�Vb�E�EatklVbÒe�cwad_z| cwTWa�i*adjDVbiWTIadjue�_½kWady`Vznda�nd[gh\cwjD[g_z_batj7jDa � mWaoXscuX<Vbct�ZWmWc�[^hW_b|��ÂTWath�cwTIa}Í %8xMVYX�jDate^kl|�cw[�e^ndndadilc�V{co����cVYX1mIXwmIe�_z_b|�klatXwVbjue�ZI_ba.cwTIe�c4eBjDa � mWaoXsc(pr[gj4e�_z[v� iWjDVb[^jÁÒVbcs|ÑXwadjDy`Vznda�XwTW[^mW_zkÎhI[�c<Z*a&e�_z_b[v��atk cw[�Vzh\cwatjwjDmWilc7eghe^n¥cwVzy`V{cs|7�ÂV{cDT�e�TWVz�gTIadjÂiWjDVb[^jwVbcs|g���V{cuX,�8cD[��U[�p`cDTWa %8�(kladcwatjw�EVzhWaOcwTIa³iWjD[`ndatXDXÁ[^jFiWjDV{Ò[^jwVbcs|7evc�[^hWa1[�p¢adVz�gT\c�_zadygat_zXSl¨_zegZfat_b_zatk tadjD[.cD[<XÁatygathOn¥�Ì8egnuT7Vzh\cwatjwjDmWilc�e�_YXw[�TIe^XÂe�h�egXDXÁ[ln�VYevcDatkËiIjwVz[gjDV{cs|Ë_zady^ad_kladcwatjw�EVzhWatk&Z\|}Tfe�jukl��egjwa��ÂVzjDVbhW�f��Ô�h�Vbh\cwatjwjDmWilc(�ÂVb_z_Z*a VzhWTWVzZWVbcwatk¿egX}_z[ghW��egX�cDTWa iWjD[ln�aoXwXw[gj}iWjDVz[gjDV{cs|�VzX�^jwaoevcwatj�cwTIeghB[^jÂa � mIe�_¼cD[EcwTWa�Vzh\cwatjwjDmWilcÂiWjDVb[^jwVbcs|g�ÔÂpÀcDadj¢cDTWaUVbh\cwatjwjDmWilc,cwTIa�iIjw[ln�aoXwXw[gjGiWjDVb[^jwVbcs|1�ÂVb_z_`Zfakladcwatjw�EVzhWatkqprjw[^� cwTWaY%8�&XscD[gjDatk}VzhqcDTWaEygatn�cw[^j½_z[lndevÒcDVb[^h�e�hfk}cwTIVzX�kl[`aoX½hI[�c1TIe¸yga�cw[�Zfa.cwTWaËXDe��EaEegX�cwTWaVzh\cwadjDjDmWilcOiWjDVb[^jwVbcs|g�G�ÏTWadjDate^XºcDTWaÂVzh^cDadjDjwmIilcOiWjwVz[gjDVbcs|�VzXkladcwatjw�EVzhWatk�Z`|&TIegjDkW��egjwa^�FV{c4VYX�i*[^XDXÁVzZW_zaEpr[gj1cwTIaË[gilÒatjDe�cwVzhW��Xw|`XÁcwat�3cw[.nuTfe�hW�^aÂcwTWa(n�[^h^cDadh\cDX$[�pFcDTWa½y^atn�cw[gj_z[lndevcDVb[^h�e�c�e�h`|ËcwVz�Eag�Ô�X�eB�Ëe�cÁcwatj4[�pÂn�mIjwVz[^XwV{cs|^�FV{c.�Ee¸|}Z*a<hW[gcwaokqcDTIevccDTWa %$Äd%�Ö^ÖOTIe�jukl�Ue�jDa¢jwaoXscDjwVYn¥cuX¼cwTWa8if[\XwXwVzZW_ba$Vbh\cwatjwjDmWilciWjDVz[gjDV{cDVbaoXÂcw[ $I�F�l�¼�7eghIk&�EVÉ� a^��_zady^ad_YX4Ög���ËeghIkb#Be�jDahW[gc�XÁmIiWif[^jÁcDatkBZ`|ËcwTWa4x�hWVzZWmIXt��< �� � ���� ��!�!0=��� 5 �!" �8�!"��2" �

��h&x½~���¾.�*Vzh\cwatjwjDmWilc(TIe�hIkW_bVzhW�7jD[gmWcwVzhWatX½e�jDa4VbhIV{cDVze�cwatke�c�cDTWa4XDe��Ea1iWjwVz[gjDVbcs|7egX�cDTWa�Vbh\cDadjDjwmWiWcUiIjwVz[gjDV{cs|^�SUTWVYX��Eaoe�hIXUcDTIevc1klmWjDVbhI�EcwTWa.TIe�hIkW_bVzhW�<[gp,cDTWa�VzhlÒcDadjDjwmWiWct�1eÑXwatnd[ghIk Vbh\cwatjwjDmWilc�prjD[g� e klady`VYn�a�[�p�cwTWaXDe��Ea}iWjDVb[^jwVbcs| nd_ze^XwXE�ÂVz_b_�Zfa&kWad_Ye¸|gatkÑmWh\cwVz_�cDTWaqiWjD[�ÒndatXDXÁ[^j4iWjDVb[^jwVbcs|qVYX�jDatklmfn�atk��GatV{cDTWadj.Z\|�cwTIa7a�9laon�mlcDVb[^h[gp³[ghWa4[gp¢cwTWat<wXwiW_?><iWjw[lndatklmWjDatXt�I�ÂTIVznuT&egjwa�Vzh\cwathIklatkpr[^j�4smIXÁc<cwTWVYXBiWmWjDif[\XÁaPl XÁata}_bVzhWatX&Öo�g×m#�cw[ÏÖ�#WÖo�on¥��[gjZ`|�jwat_b[\egklVzhW��cDTWa7iWjD[ln�aoXwXw[gj�XÁcDe�cwmIX.��[gjuk�ag� �I�qmWi*[ghjDa�cDmWjwhIVbhW��prjD[g�?cDTWa�Vzh^cDadjDjwmIilct�ĽmWjwVzhW�BVbh\cwatjwjDmWilc½TIe�hIkW_bVzhW�I�fcwTIa�iWjD[ln�atXDXw[gjÂiWjDVb[^jÁÒVbcs|Ï�Ëe¸| Z*a�jDegVzXwatk cDad�Eif[^jDegjwVz_z|ÑcD[ iWjD[�cDatn�cBcDTWa�VzhlÒcDad�gjDVbcs|�[�p4n�atjÁcue�VzhÎ[gi*adjuevcwVz[ghfXd� )I[gj<VzhIXÁcDe�hfn�ag�ÂnuTIegjÁÒe^n¥cwatj [gjDVbath^cDatk klady`VYn�atX XwmInuT�egXLcwTIa3ife�i*adjLcDegifajDate^kladj��¸iWmIhInuT&[^j½cDTWaË_zVbhWaËiIjwVzh\cwadj�Vzh\cwatjwjDmWilc�e�c1_zady^ad_pr[^mWjt��SUTWadVzjËVbh\cDadjDjwmWiWc<TIe�hIkW_batjDXËnte�_z_p<Á�^a�cDn�> l¨�g×o#g�4n[^j*<ÁiWmWcDnA>El¨�g×^�\�mn¥���ÂTWVYnuTËjue�VYXÁaUcDTWa�iWjD[ln�aoXwXw[gjOiWjDVz[gjDV{cs|cDad�Eif[^jDegjwVz_z|.cD[._zady^ad_ �Iy^ag�l�ÂTWVz_ba½cwTIa1nuTfe�juegn¥cDadj8ZWm��¼adj� mWatmWatXÂegjwa1�Ëe�hWVziWmW_YevcDatkF�SUTWa�Vbh\cDadjDjwmWiWc�TIeghIkl_zadj.pr[gj.cwTWa}nd[ghIXw[g_zaËcwat_badcs|`ifa�Ëe�]^atX1mIXwaE[�pÂe <scwVz�Ead[^mlc >Bp¨egndVb_zVbcs|g�<SUTWVYX�Vzh\y^[g_zygaoX(e� mWatmWa��ÂTWVznuTÑVzXËeg_zXw[&�ËeghWVbiImW_ze�cwaok Z`|�cDTWa}n�_z[`nu]�VzhlÒcDadjDjwmWiWcETfe�hIkl_zadjo�³�ÂTWVYnuT jwmWhfX�e�cË_batygad_ÂXwV:9F�ÎSº[�iWjDa�Òy^adh\c$i*[^XDXÁVzZW_za�Vbh\cDadjwpradjDadhIndag��cDTWaE<ÁcwVz�Ead[gmWc >�iWjD[ln�aoklmWjDa

l�#o(m#\�mn&jwmWhfX�evc�_zadygat_<XÁatygath lrcwTWaÏTWVz�gTIatXÁc�if[\XwXwVbZI_ba_zadygat_ n��x�XwmIe�_z_z|7Vbc½kl[`atXUhW[gc��Ëe�]ga4XwadhfXÁa(cw[ËjDmWh}e�h�Vzh\cwadjwÒjDmWilcÂTIe�hfkl_batj�evc�e�iWjD[`ndatXDXÁ[^j8iIjwVz[gjDV{cs|Ë_z[v��adj�cwTIegh7cDTWaVzh^cDadjDjwmIilc<iWjDVb[^jwVbcs|g�8pr[gjËcDTWVYXË�8[^mW_Yk cDTWadhÏjDVYXÁ] e�XÁaon¥Ò[ghfk.Vzh\cwatjwjDmWilc³[gp*cDTWa�XDe��EaUcs|`ifa^�^atygadh�prjD[g�¿cwTWa�XDe��Eaklaty\VYn�a^�GZ*a�pr[^jwaBn�[g�EiW_za�cDVb[^h�[�pUcwTIa<iWjD[`ndatXDXÁVzhW�}[gp�cDTWa�IjuXscEVzh^cDadjDjwmIilct��SUTWVYX�_bVz]gat_b|�cD[�Z*a�evcEZfaoXscËVzhIn�[^h\y^a�ÒhWVzadh\c�eghIk�evc��8[^jDXÁc�klVYXwe^XscDjw[^mIXt�qÈ�[v��adygatj�cwTIaBn�_z[lnu]Vzh^cDadjDjwmIilc�TIe�hfkl_batjt�f�ÂTWVYnuT}[ghInda4ifatj½Xwatnd[ghIk�TIe^X�eE_z[�c[�p,a�9`cwjue��8[^jw]EcD[<kl[I�WkW[\aoXUa�9Wegn�cw_z|ËcwTIVzXt��< (' � 0�� � � �8� � ���� ��#�!0 � � , ����� ����

Ô�X�kWVzXDn�mIXDXwatk�e�Z*[vygag�FVzh\cwatjwjDmWilc�TIeghIkl_zadjuX½hIadatk�cD[�Z*andegjwadprmW_`e�Z*[gmlc,cwTWaU�Ëe�hIVbiWmI_ze�cwVz[gh4[gpWcwTWaUiWjD[ln�aoXwXw[gjGiWjwVbÒ[gjDVbcs|BcD[}e¸yg[gVYkqeg_b_z[v�ÂVbhI�7[�cDTWadj1Vzh\cwadjDjDmWilcDX½cD[�Tfe�iWi*adh<scD[`[qXÁ[`[ghO>W�BƺVb]^ad�ÂVYXÁa<nte�jDaEhWadaokWX�cD[qZfa<cDe�]^adh�cwTfevccwTIa8[gcwTWatj,Vzh\cwatjwjDmWilcuXGegjwa8hW[�cOklad_Ye¸|gaok�a�9WndatXDXÁVzygat_b|^�o_zatXÁccwTIa4ifatjÁpr[^jw�ËeghIn�a4[gp¢cwTWa.�ÂTW[g_za�Xw|`XÁcwat�/Z*a�klat�gjuegklaokF���c½VYX�Vz�Eif[^jÁcue�h\c�cD[<hW[�cDa4cDTIevc(�ÂTWadhqeghqVbh\cDadjDjwmWiWc�[ln¥Òn�mIjDXt�gcDTWa(iWjw[lndatXDX³�ÂTWVYnuT<VYX�ndmWjDjwath^cD_b|Eegn�cwVzyga½�ÂVb_z_fy^adjD|_zVb]^ad_z|BhW[gc�Z*a4cwTIa4iWjD[`ndatXDX��ÂTWVYnuT}VYX�Vzh^cDadjDatXÁcwaok�Vbh}cDTWa[lndndmWjwjDadhfn�ag�³Í8[ghfXÁVYkladjUcDTWa1pr[g_z_z[v�ÂVbhW�EXDn�adhfe�jDVb[ �x�Xwadj4iIjw[ln�aoXwX ����VzX�egn¥cDVby^a<e�hIk�VzhWVbcwVYevcwaoX4e�h�V �¸[[gi*adjuevcDVb[^h��º��c8a�9latndmlcwaoX³e(cwjue�iËVzhIXÁcwjDmIn¥cDVb[^hEeghIk.cwjue�hIXÁÒpradjuX�cw[&]^adjDhWad_��E[lklag��Ã1adjDhWad_�iWjD[ln�atXDX ��� VzhWVbcwVYevcwaoXcwTIa$jDa � mWVzjwaok1[gi*adjuevcwVz[gh4eghIk1cDTWadh�nde�_z_YXe<wXw_zadadiO>Ucw[(XÁmIXÁÒi*adhIk�VbcDXwad_bpGcD[<e¸��egV{cÂn�[^��iI_badcwVz[gh�[�p,cwTWa�[^ifatjDe�cwVz[gh&�z�z��`[g�Ea½cwVz�Ea½_YevcDadjo�\�ÂTIadhBXw[g�Ea½[�cwTIadj�iWjw[lndatXDXd�\mIXwadjiWjD[ln�atXDX���h�XDe¸|g�oVzXGegn�cwVzygag�tcwTIa$[gi*adjuevcDVb[^h1VzXGn�[g�EiW_za�cDatke�hfk�eghEVbh\cwatjwjDmWilcO[lndndmWjuXd��%³jD[ln�atXDX ��hËjwatygadjwcDX,cD[�]gatjÁÒhWat_(�E[lkla^�½e�hfkÐ]gatjwhIad_1iWjD[`ndatXDX ��h klateg_zXB�ÂV{cDT cDTWaVzh^cDadjDjwmIilct�¢ady^adh�cDTW[gmW�^T�Vbc.�Ëe¸|�Tfe¸ygaËhW[�Vbh\cwatjwaoXsc.Vbh[gjUiWjDVz[gjÂ]`hW[v�Â_zatkl�^a½[gpGcDTWa�[gi*adjuevcDVb[^h��x�XwmIe�_z_z|�]^adjDhWad_8iWjD[`ndatXDX ��h��ÂVz_b_�VzhIn�_zmIkla���eg]`VbhW�iWjD[ln�atXDX �4� egXEiIegjÁcE[�p(V{cuXËegn¥cDVby`Vbcs|g� SUTWVzX��ÂVz_b_ÂhI[�ce�_z�Ue¸|`X8Z*a1cwTWa4ntegXwa½cDTW[gmI�gT��la^� �f�O�ÂTWadjDa�e�h�adjDjw[^j�TfegX[lndndmWjwjDatkBe�hIkBcDTWa�[gi*adjuevcDVb[^h7VYXÂjwadcwjDVbaokF�Í8_baoe�jD_b|^�OcwTIaBVzh\cwadjDjDmWilcETIe�hIkW_batj.pr[^j�e�i*adjDVbiWTIadjue�_klaty\VYn�a}XwTW[gmI_zk hW[gc<�Ee^kla�jwadpradjDadhIndatX�cD[�cwTWaqndmWjwjDadh\c<ÁmO>.XÁcwjDmIn¥cDmWjDa½pr[^jUcwTWVYXÂVYXUhW[�cÂ_zVb]^ad_z|Ëcw[EZ*a1cwTWa4egiWiWjD[�ÒiWjDVze�cwar<ÁmO>�XÁcwjDmIn�cwmWjDag�bl SUTWa<e�iWiIjw[^iWjwVYevcDat<wma>�XscDjwmfn¥ÒcwmIjwa7nd[gmW_Yk � mWVbcwa7i*[^XDXwVbZW_z|�ZfaBVbhIe^ndndatXDXÁVzZW_zag�¢V{p�Vbc.TfegXZ*adadh�cDad�Eif[^jDegjwVz_z|<XÁ�Ue�iWi*atkB[gmWcÂcw[�cwTWa4kWVzXw]¼� nÆ�Vz]gat�ÂVzXwa7cDTWa�Vbh\cwatjwjDmWilcETIeghIkl_zadjËXÁTI[gmW_Yk�hW[gc<nde�_z_<wXw_zadadiO>ÏZfaondegmIXÁa�cwTWa iWjD[`ndatXDX}cDT\mfX�XwmIXwifathIklatk �ÂVb_z_�E[^XÁcÂ_bVz]gat_b|<Z*a4Xw[g�Ea1VbhWhI[`ndadh\c�iWjD[ln�atXDXt��< � � �# � �

<wSGjue�iIX >Âe�jDa³_zVb]^ai<ÁVzh\cwatjwjDmWilcuX >UVzh�cwTfevc,cwTWat|1egjwa$adygath\cDX�ÂTWVYnuT egjwa�TIeghIkl_zatk Z`|�cwTWa}XDe��Ea�TIe�jukl�Ue�jDa7�EatnuTfevÒhWVYXÁ���IeghIkBTWadhInda�Z`|7XÁVz�EVb_Ye�j�Xw[�pÀcs�Ue�jDa(��aonuTIe�hIVzXw�ËXd�<wSGjDegiIX >�e�jDaÂmWhW_zVb]^ap<ÁVzh\cwadjDjDmWilcDX >1VzhËcwTIe�c³cwTIad|E[ln¥Òn�mIj�e^X<cDTWa�jwaoXÁmI_{c�[�p�atygath^cuX�Vbh\cwatjwhfe�_(cw[ÑcwTWa�Í %$x��

$o#

Page 52: A Commentary on the Sixth Edition UNIX OS -- Lions

juevcDTWadj1cDTIe�h�aA9\cDadjDhIe�_z_z|g�tl¨��h�[�cwTIadj�Xw|lXscDad�ËX1cwTIaËcwatjÁÒ�EVzhW[g_z[g�^| <ÁVzh^cDadjDhIe�_¢Vzh\cwadjDjDmWilc >�e�hfk <wa�9`cwatjwhIeg_GVzh\cwatjÁÒjDmWilc >}VzX�mIXwatk�cD[&kljue¸�¿cDTWVzX�klVYXscDVbhfn¥cwVz[gh ��[^jwa<pr[gjun�a�ÒprmW_z_z|g� nËSºjue�ifXU�Ee¸|B[lndn�mIjÂmWhWa�9li*atn�cwatkW_b|�egX�cDTWa4jDatXwmW_{c[gp�TIe�jukl�Ue�jDa<[gj�if[v��adj�p¨e�Vz_bmIjwaoXd�O[^j.iWjDatkWVzn�cDe�ZI_b|�e�hfkjDadiWjD[lklmIndVbZW_z|g�`a^� �f�¢e^X³cDTWa(jwaoXÁmW_bcU[�pºaA9`aon�mlcDVbhI��egh7Vz_b_za�Ò�\e�_FVzhIXscDjwmfn¥cwVz[gh�[gj�e}<Ácwjue�ia>.VbhfXscDjwmIn�cwVz[gh��<wSGjue�iIX >Ëe�jDa4e�_z��e¸|lXUjDatnd[g�ghIVzXwatkBZ`|7cDTWaEÍ %8x Vb��Ò�EatkWVze�cwad_z|g�USUTWat|BndeghWhW[gc�Zfa�kWad_Ye¸|gatkBVzh�cwTWa4�Ue¸|<_z[v�iWjDVz[gjDV{cs|1Vzh^cDadjDjwmIilcDX,�Ëe¸|�Zfa^�G��p*|g[^m�_zVb]^ag� <scDjDegiIX >�TIe¸y^aegh@<wVbh\cwatjwjDmWilcÂiWjDVz[gjDV{cs|y>.[�pGatVb�^T\ct�<wSGjue�ia>?VzhIXÁcwjDmIn¥cDVb[^hIX��Ee¸| Z*a3kWad_zVbZ*adjuevcDad_z|"VzhlÒXwadjwcwaok�Vbh.mIXwadjº�E[lkla�iWjD[g�gjue��ËX¼cD[½ntevcDnuT4cwTWaUevcwcwadh\cDVb[^h[gpOcwTWa�[gi*adjuevcDVbhW��XÁ|lXÁcwat�"�ÂVbcwT�e<jDa � mWaoXsc½cw[7i*adjwpr[gjD�e�XÁi*atndV �fatk�XÁatjwy`VYn�ag�¢SUTWVYXU�EatnuTIeghWVzXw� VzXUmfXÁaok7egX�iIegjÁc[gpºcwTIa1p¨egn�Vz_zV{cs|B]\hI[v�Âh�e^XY<wXw|`XÁcwat�:ndeg_b_YX >W�Æ�Vz]ga.Vbh\cDadjDjwmWiWcDXt�IcDjDegiIX�jDatXwmW_bc½Vzh}cwTWa.jwat_b[\egklVzhW�<[gpcDTWa%�Í e�hfks%8��prjw[^�3e1y^atn�cw[gjO_z[lnde�cwVz[gh��\e�hIk�cDTWa�XDe¸y^ÒVzhW�<[gpOcwTWa.[g_Yk�y¸eg_bmIatX½[�p¢cwTWa�%�Í�e�hfkb%8��Vzh}cwTIa.n�mIjÁÒjDadh\c4Xscuegnu]¼�ËSGegZW_za<×W� �<_zVzXÁcDX�cwTWaËy^atn¥cD[gj1_z[`ntevcDVb[^hIX(pr[gjcDTWa�yve�jDVb[^mIX�<scwjue�iO>4cs|`i*atXt�

X 24�m���O� ����/�� � � �c2 ���N�Z�o246�65k�Z�m/y����� � ���N���O�N� � ��^��$ ZWmfX�cwVz��at[gmlc ��IÖt� Vz_b_zad�\e�_¼VzhIXscDjwmfn¥cwVz[gh ��IÖA$ ZWiWcÁÒÉcwjuegn�a ��\��� Vz[�c ��\�N$ i*[v�8atj�p¨e�Vz_bmWjDa ��o#g� at��mW_YevcD[gj�cwjue�i�VbhfXscDjwmIn�cwVz[gh ��o#�$ cDjDegiBVzhIXÁcwjDmIn¥cDVb[^h �Ö^ÖA$ Ö^Ö �`Öo�4iIegjwVbcs| ���$^� iWjD[g�^jDeg�E��aokËVzh^cDadjDjwmIilc ���$m$ #I[\evcDVbhW��i*[gVzh^c�atjwjD[gj ��^��� Xwad�^��ath\cDevcDVb[^h7y`Vz[g_YevcwVz[gh �

h /��5�2� � ,thc��/����S24�m���O� � ���m/y����� ��6s/1���LM�N�k�a�N� ����2F6

SUTWa&nd[gh\cwath\cDXË[gp1S,e�ZW_zatX7×W�zÖ�eghIkÎ×W� ��XÁTI[gmW_Yk Zfand[g�EiIe�jDatkÎ�ÂVbcwT�cwTIa�I_za <w_b[v��� X >�[gh��lTWadadc��\�l� Ô�XhW[gcwaok7aoe�jD_bVzadjo�\cwTWVYX �I_za1VzXÂ�^adhWatjDe�cwaok7evcÂaoegnuT7VzhIXÁcDeg_b_YevÒcDVb[^hbl¨e�_z[ghI�4�ÂV{cDTËcwTIa �I_zaE<wnd[ghlps� nA>sl XÁTIada�c $^�4n n¥�\egX³cwTWaiWjD[lklmIn�c1[gp³cwTIa�mWcwVz_bVbcs|qiWjD[g�^jDeg� <w�E]^n�[^hlp >I��XÁ[�egX½cw[jDa #Iaon¥cUcwTIa4egn¥cDmIe�_�Xwa�c�[gpGi*adjDVbiITWadjue�_YXUVbhfXscue�_z_baokF��< �� ��� � ��� � & � ��� 0= � � �! � 9)Ijw[^� <Á_z[v��� X ><Vbc�e�iIifaoe�juX�cDTIevc1cDjDegiIX�e�hIk�Vzh^cDadjDjwmIilcDXegjwa�TIe�hfkl_baok XwadiIegjDe�cwat_b|�Z`|�cwTWa}Xw[�pÀcs�Ue�jDag� È�[v�8atygatjnd_b[\XÁatj.aA9leg�EVbhIe�cwVz[ghÑjwatygateg_zX�cwTfevcr<wndeg_b_ >�e�hIk&<scwjue�iO>egjwa�klV �*atjwath\cUath\cwjD|<if[^Vbh\cuXUcw[ËeËXwVbhW�^_ba�nd[`kWa1Xwa � mWathIn�aVzhqcDTWa �f_bat<Á�Y$^�I� X >bl¨Xwada._bVzhWaoX½�`���g�W�*�`�g���on¥�(SUTWVYX½Xwa�Ò� mWathIn�a1VYXÂa�9We��EVzhWatkBVzh�kWa�cDegVb_ºVbhBcwTWa�hIa�9`c�nuTIe�iWcwadjo�ĽmWjwVzhW�BcwTWa.a�9latndmlcwVz[gh&[�p³cDTWVzX(Xwa � mWadhfn�ag�FeBnde�_z_,VzX�ËegkWa8[^h�ep<¥Í >�_Ye�hW�^mIe��^a³iWjD[`ndatklmIjwa$cw[1nde�jDjD|½[^mlcGprmIjÁÒcDTWadj$Xwi*atn�V �fnUiWjD[ln�aoXwXwVbhI�I����h�cwTIa�nde^XÁaU[�p¼e�hEVzh^cDadjDjwmIilct�

cwTIaf<uÍ >�iWjD[`ndatklmIjwa1VYXUcwTWa�Vzh\cwatjwjDmWilc�TIeghIkl_zadj�Xwifaon�V �fncw[�cDTWa�iIe�jwcwVYn�mI_zegjUkWady`Vznda4n�[^h^cDjw[^_b_zadjo���hqcDTWa�ntegXwa�[gp$eËcwjue�iº�fcDTWa}<uÍ ><iIjw[ln�aoklmWjDa4VYX(eghlÒ[�cDTWadj¢iWjD[ln�aoklmWjDaUnte�_z_baokb<Ácwjue�ia>�lr|^atXt�vcwTWaÂ��[gjukb<Ácwjue�ia>VYX7kla��IhWVbcwad_z| [vygadjD��[gjD]gatk�* n��$�ÂTWVYnuTÏVbhÐcwTWa&ntegXwa}iWjD[�Òn�aoXwX½[�p�e7Xw|`XÁcwat� adjDjw[^j��ÂVz_b_¢�E[^XÁc(_zVz]gad_z|}ndeg_b_¢iWjDVb[^jwVbcs|<Áife�hWVYnA>Ee�hfkBVzh�cwTIa�nde^XÁa�[gpOer<DXÁ|lXÁcwat�/ndeg_b_ >W�I�ÂVb_z_�VzhlÒyg[^]gaYlrVzhIklVzjwaon¥cD_b|By\VYe}<scDjDegiW_?>Ol �m(�$IÖ�n n³cwTWa4egiWiWjD[giWjDVYevcwaXw|`XÁcwat�:ndeg_b_FiIjw[ln�aoklmWjDag��< � � �#0=���x�i*[ghBn�[g�EiW_za�cDVb[^hË[�pFcDTWa�TIeghIkl_zVbhI�4[�pºeghËVbh\cwatjwjDmWilc8[gjcwjue�i�cDTWa�n�[lkla1pr[^_b_z[v��X�eËnd[g�E�E[gh�iIevcDT�adhIklVzhW�<Vzhqe�h<ÁjwcÁc >�VzhIXÁcwjDmIn¥cDVb[^h}l �m(^�^�mn��,SUTIVzXUjDad_z[^e^kWX�Zf[gcwTBcwTWa*%UÍe�hfki%8��prjw[^� cwTWaUn�mIjwjDadh\cOXscuegnu]¼�¸V � ag�GcwTWaU]^adjDhWad_`Xscuegnu]¼�Vzhq[gjukladj�cw[BjwaoXscD[gjDa1cwTWa�iWjD[`ndatXDXÁ[^j�adh`y`Vzjw[^hW�Eadh\c�cwTfevca�9lVYXscDatkBZfadpr[gjDa(cwTWa�Vzh\cwadjDjDmWilc�[gj�cDjDegi��

$o$

Page 53: A Commentary on the Sixth Edition UNIX OS -- Lions

��� E�� � � ��� ��� �A� � � E � ��*�� � � ���� ���u�

SUTWaBiWjDVbhIndVbife�_$iImWjwi*[^Xwa<[gp�cDTWVYX.nuTIegilcwatj�VYX�cD[qa�9We���ÒVzhWaÂcDTWa�egXDXwad��ZI_b|4_Ye�hI�gmIeg�gaÂn�[lkla�Vzhr<Á�Y$^�I� X >(�ÂTWVYnuTËVzXVzh`yg[g_zygaok<Vzh�cwTWa�TIeghIkl_zVbhI��[gp,Vzh\cwatjwjDmWilcuXÂe�hIk7cwjue�iIXt�SUTWVYX$nd[`kWaÂVzX¢pr[^mWhIkEZ*a�cs��adath�_zVzhWatX8�\���g�½eghIkE�m(^�^�l�eghIk7TfegX8cs�8[Eath^cDjw|Ëi*[gVzh\cDXt�R<scDjDegia>El �\�g�g�mn8e�hfk3<Dnde�_z_ >l �\�v�^�on�� SUTWadjDa�e�jDa�XÁatygadjue�_4kWV �¼adjDadh\c&e�hfk�jDad_zadyvegh^ciIe�cwTIXËcwTWjD[gmW�^T cDTWVYX<n�[lklaqeghIk �8a}XwTIe�_z_Âcwjuegnda}XÁ[^��aaA9leg�EiW_baoXU[�pGcwTWaoXÁa^�� = �� $�� 0=� � � ��� � �# � � ��� � ���� ��#�!0 � � �SUTWaÐkWVzXDn�mIXDXwVb[^hÓVzh �latn¥cDVb[^h !½hWaÎVbh\cwjD[lklmIndatkÓcwTWjDadaiW_YegndatX(�ÂTWatjwa�cwTWaE[lndndmWjwjDadhfn�a�[gp�e<cwjue�i&[^j1Vbh\cwatjwjDmWilc�UegXUaA9`i*atn�cwaok �� /�� <Á�Ëe�Vzha>blÁÖo���m$4nUnte�_z_zXE<sprmWVzZ`|^cDa�>ËjDadi*ate�cwaokl_b|�mWh\cwVz_e<hWat�^e�cwVzyga4yve�_zmWa�VzX(jDa�cDmWjwhIatkF��SUTWVYX��ÂVz_z_,[lntn�mWjevpÀcDadjÂe}<ÁZWmIX8cDVb�Ead[^mlc�adjDjD[gj >�TIegXUZ*adathBathIn�[^mWhlÒcwatjwaok&�ÂVbcwT�e�XÁmIZIXÁa � mWadh\c�cwjue�i�cw[�y^atn¥cD[gj�_z[lndevÒcwVz[gh+$flr_zVbhWa4�\�lÖ¸�mn�� �� SUTWa�nd_b[lnu].TIegXOZ*adath7Xwa�c³jDmWhWhWVzhW��eghIkE�ÂVb_z_I�^adhWatjÁÒevcDa�egh�Vzh\cwadjDjDmWilc�ady^adjD|qn�_z[`nu]�cDVznu]&V � ag��Öt�I� �Ë[gj���.�EVb_z_bVYXwatn�[^hIkWX�� ��� %³jD[ln�atXDX �7Ö&VYX7egZf[^mlc7cD[�a�9laon�mlcDa�e <Ácwjue�ia>�VzhlÒXscDjwmfn¥cwVz[ghEegX¢ife�jwc¢[gpfcDTWa�Xw|`XÁcwat�¿ndeg_b_l[^hr<Áa�9laonA>W�� = -( � 0 " � &�� �� � �13 � � � 0 "� �8� � � ��383 �<w�EegVbhO>�mIXÁaoX4Z*[�cDT <sprmWVzZ`|^cDa�>qeghIk <sprmIVb��[gjuk1>W���`VzhIn�acDTWa<pr[^jw�Eadj.VzX.�E[gjDa7n�[^�EiW_bVYnde�cwaok�Vbh e}hW[ghWÒÉaoXwXwadh\cwVYe�_�Ue¸|g�¼��a�_zate¸yga.V{c(cw[BcwTIa.jDate^kladjo�*eghIk&nd[ghIndadh\cwjuevcDa�[^hcDTWa�_ze�cÁcDadjo�

<sprmIVb��[gjuk1>�VzXËnte�_z_baokIlÁÖt�g�\�mn��ÂTWadhÑcwTIaqXÁ|lXÁcwad� VzXjDmWhWhWVzhW�qVzh�]gatjwhIad_³�E[lkla<�ÂVbcwT�[^hWa7egjw�^mW�Eadh\c4�ÂTWVYnuTVYX³e�hEegkIkljwaoXwX¢VzhEmIXwadj$e^kWkljDatXDX,XwiIe^n�ag�¢SUTWaUprmWhfn¥cwVz[ghË[gpcDTWa4jD[gmlcDVbhWa�VYXUcD[Epra�cDnuT�cDTWa4yve�_zmWa�[gp,cDTWa�nd[gjDjwaoXÁi*[ghIklÒVzhW���8[^jDk�eghIk�cD[�jDa�cDmWjwhÑV{cËegXEe&jwaoXÁmW_bcflr_za�pÀcËVbhÑjD�4n¥�È�[v�8atygadj�Vbp(e�h adjDjD[gj�[`ntn�mWjuXt�OcwTWa�yve�_zmWa �*Ö�VYX�cD[�ZfajDa�cDmWjwhIatkF�~�[gcwaEcDTIevc��ÂVbcwT <ÁprmWVb��[gjuk1>I�FcwTWatjwaEVYX4e�h�eg��ZWVz�gmlÒVbcs|Ñ�ÂTIVznuT kW[\aoX<hW[gcB[lndndmWj7�ÂVbcwT <sprmWVzZ`|^cDa�>I�ÂhIe��Ead_z|e&jwadcwmWjDhWatk yve�_zmWaB[gp �*ÖB�Ee¸|�hW[gc�hIatn�aoXwXDe�jDVz_b|�Z*a�eghatjwjD[gjBVbhIkWVzntevcwVz[gh ZWmlc�cwTWa�egn�cwmIeg_½yveg_bmWa�Vbh cwTWa�mIXwadjXwiIegndag�³Í8[gh`y`Vbhfn�a�|^[gmWjuXÁat_{p*cwTfevc$pr[^j³cDTWa��Ue¸|�Vbc8VYX$mfXÁaokVzh <Á�Ëe�Vzha>W�\cDTWVzX�kl[`atXÂhW[gcÂ�Ee�cÁcDadjo�Ô�_YXw[�cwTWa�n�[lkla&kl[`aoXËhW[�c�klVzXÁcwVzhW�^mWVzXwTÏZ*a�cs��adadhÐe<wZWmIX�cwVz�Ead[^mlc�adjDjw[^j >.e�hIk�e}<wXwad�^�Eadh\cDe�cwVz[gh7atjwjD[gj >W�SUTWa�jD[gmlcDVbhIa(iIjw[ln�atatkWXÂe^X�pr[g_z_b[v��X �Q \a7�v(� SUTWa4egjw�^mW�Eadh\c�VYXÂ�E[vygaokËcD[ËjtÖ�Q \a7�\(� <Á�^�8[^jDka>4VYXÂnde�_z_zatk�Q \ g ,-� SUTWa4ndmWjwjDadh\cj%8�BVYXÂXscD[gjDatkB[ghBcwTWa4XÁcDe^nu]�

Q \ gOB-� SUTWaËiWjDVb[^jwVbcs|q_zady^ad_³VYX�jue�VYXÁaokqcD[��}lÀcw[�klVzXDe�ZI_baVzh\cwatjwjDmWilcuX n%Q \ ga7(� SUTWa.nd[gh\cwath\cDX½[�pOcwTIa._z[lndevcDVb[^hqhW[gp¨e�mW_bcYlÁÖA$\�g�onegjwa�XDe¸ygaok<VzhBcDTWa4XÁcDegnu] Q \ g g%� <ÁhW[gp¨e�mW_bc >.VYXÂ_b[\egklaok7�ÂVbcwT}e^kWkljDatXDX8[gpºcDTWa�jw[^mlÒcDVbhIaf<ÁadjDj > Q \ gOv-� Ô�h=<Á��priWV >&VzhIXÁcwjDmIn¥cDVb[^h VYX.mfXÁaok�cw[�pra�cunuT cDTWa��[gjuk7prjw[^�MmIXwadj�XwiIegndag�

�d���O� ������GzGO��246�[Y�N�O��G cDTWVYX�yve�_zmWa��ÂVz_b_G_badpÀc½[ghcwTIa�]gadjDhWat_¼XÁcDe^nu]¼�Q \ g ~ � SUTWa�yve�_zmWa�VzX�cDjDeghIXspratjwjDatk�prjw[^� cwTWa}XÁcDe^nu]�cw[ju� Q \ ~ v-� SUTWaÂiWjDady`Vz[gmIXOyveg_bmWaoXO[�pq<ÁhI[�p¨e�mI_{c >�e�hIkY%8��egjwajDatXÁcw[^jwaok�� �F[ 6������ � 6�2�6�� 0P24� ������G&���Z2F6 G ��[Y�N�O��G�ÂVbcwT�cwTWaW<Á��priWV > VbhIXÁcwjDmIn�cwVz[gh��(e�hIkLe ZImIXBcwVz��adÒÉ[^mlckl[`atXU[lntn�mWjo�

Q \ gOv-� SUTWa+<Á��priWV >�VzhIXÁcwjDmIn¥cDVb[^h7�ÂVz_b_¼Z*a1egZf[^jÁcDatkF��%UÍ�ÂVz_z_,i*[gVzh\c�cD[<cwTIa�hWaA9\c1VzhIXscDjwmfn¥cwVz[gh@l¨�m(\�^�mnUe�hIke.cDjDegi�y`VYe�ygatn�cw[^j�_z[lnde�cwVz[gh+$��ÂVz_z_�[lndn�mIj�Q�g �1,%� SUTWaEhWad��%�Í �ÂVb_z_³TIe¸y^a�cDTWaËyve�_zmWaE[�pY<scDjDegia>W�SUTIa�hWad� %8�7�ÂVb_z_�VzhIklVYnde�cwa �

iIjwaoXÁath^cÂ�E[lkla � ]^adjDhWad_F�E[lklaiIjwaty\Vz[gmfXU��[lkla� ]gatjwhWat_¼��[lklaiIjwVz[gjDV{cs| �¿�

Q ~ gOv-� SUTWaÂhWaA9\c³VzhIXÁcwjDmIn¥cDVb[^hEa�9latndmlcwaok.VYX,cwTIa �IjuXscOVzhlÒXÁcwjDmIn�cwVz[ghÏ[�pf<Ácwjue�ia>I� SUTIVzXBXwe¸y^atXEcDTWa&iWjD[ln�aoXsÒXw[gjOXÁcDe�cwmIX¢��[gjuk�cs��[1�8[^jDkWX,Z*ad|^[ghIk�cwTWaÂndmWjwjDadh\c<Ácw[^iB[gp¢XÁcDe^nu]F>I� l SUTWVYXÂVzX�hW[�cÂjDad_zadyve�h\cÂTWadjDag� n�

Q ~ g ~ � <ÁhW[gp¨e�mW_bc >Ënd[gh\cDegVbhfXÂcwTIa�egkWkWjwaoXwX�[�pS<Áatjwj >Ee�hIkVYXÂhW[^hlÒ dadjD[2Q ~ v�g%� Ç}[vy`VbhI�ÏÖ�cw[Ñ�lÅ���jwatVbhIV{cDVzeg_bVYXÁaoXEcwTIaq�Ead�E[gjD|�ËeghIe��^ad�Eadh\cÂmWhWVbc�Q ~ v v-� SUTWa�nd[gh\cwath\cDXÑ[�p <ÁhI[�p¨e�mI_{c >¿e�jDaÐ�E[vygaok?[ghcD[giÎ[�p(cwTIa&Xscuegnu]¼� �FXO24��[��N��������G cDTWa}iWjDady`Vb[^mIXnd[gh\cwath\cDXt�Ë�ÂTWVznuT3�UegX�cwTIaÏjwadcwmWjDh3e^kWkljDatXDX�Vbh

<w�g��[gjuk1> Q ~ v ~ � SUTWa�<ÁjwcÁc >�jwadcwmWjDhIXt�¸hW[�c,cw[+<Á�^�8[^jDk1>UZImlcGcD[�cDTWa

�fjDXÁc��8[^jDk7[�pM<Áatjwj > Q \O\ Q-� <Áatjwj >&jDatXÁcw[^jwaoX}<ÁhW[gp¨e�mW_bc >�e�hfk %��¼�³Xw]\VziIXEcDTWajDa�cDmWjDh&cD[ <ÁprmWVz�8[^jDk1>I�¼iW_ze^n�aoX �*Ö�Vbh�jD�I��e�hIk�jDa�ÒcDmWjDhIX�klVzjwaon¥cD_b|ËcD[EcwTWa4nte�_z_bVzhW��jw[^mlcwVzhWa^�

$\�

Page 54: A Commentary on the Sixth Edition UNIX OS -- Lions

� = -, � ��� �#�!0=��� ��`mIiWif[\XÁa1cDTWa4n�_z[lnu]ËTIegXUVzh\cwatjwjDmWilcDatkBcwTWa�iIjw[ln�aoXwXw[gjo���[�cDT�nd_b[lnu]�ygaon¥cw[^j½_z[lnde�cwVz[ghIXt�OÖt�^�7e�hfk�Öt�m$I�¼TIe¸y^acDTWaËXweg��a�Vzhlpr[gjD�ËevcwVz[ghº�i%�Í VzX1Xwa�c1cw[BcwTWaËe^kWkljDatXDX½[gpcDTWaÂ_b[lntevcwVz[gh�_Ye�Z*ad_z_baokt<w]`�Â_bia>Yl �^���o(onGe�hIkY%��4VYX³Xwa�cOcw[XwTW[v� �iWjDatXwadh\cÂ�E[`kWa � ]gatjwhIad_F�E[lklaiWjDady`Vz[gmIXU�E[lkla � ]^adjDhWad_F[^jUmIXÁatjÂ�E[`kWaiWjDVb[^jwVbcs| � �~�[�cwa^�OSUTWaS%8�Ë�ÂVz_z_�n�[gh\cue�VzhËcwTWa(cDjwmWa(iWjDady`Vz[gmIX8�E[`kWag�jDad�\e�jukl_baoXwX�[�p�cDTWa�yve�_zmWaBiIVznu]^atk�mIi�prjD[g�AcwTIa�y^atn�cw[gj_z[lndevcDVb[^h��Q�g ~ Q(� SUTWa�ygaon¥cw[^jº_z[lndevcDVb[^h�n�[^h\cDe�VzhIX,e�hWat�3%�Í�yveg_bmWa�ÂTWVYnuT�VYXOcDTWa�e^kWkljDatXDX¢[�p¼cwTWa½Xscuevcwat�Eadh\c³_zegZfat_b_zatk

<Á]`�Â_zia>W��SUTIVzX½VbhfXscDjwmIn�cwVz[ghqVYX(e7XwmWZWjD[gmlcDVbhWa�ndeg_b_[gh <wnte�_z_?>.y`Vze�ju�W�ÔÂpÀcDadj4cDTWa<aA9`aon�mlcDVb[^h�[�pUcwTIVzX�VbhIXÁcwjDmIn�cwVz[gh��¢ju��VzX_badpÀc.�ÂVbcwT�cDTWa�egkWkljDatXDX�[gpÂcwTWa�n�[lkla7��[gjuk�evpÀcDadjcwTWa}VzhIXÁcwjDmIn¥cDVb[^hÎ�ÂTWVznuTÐnd[gh\cDegVbhfXr< n�_z[lnu]F>I�8VÉ� ag�jD�Ïnd[gh\cDegVbhfX � ��2 /1������2F6�6 ���z� ��2 /1�����N2F6�6[�pEcwTIa&<wnd_b[lnu]y>ÎjD[gmlcDVbhWa Vbh cDTWa �f_ba=<wn�_z[lnu]¼� n�>l�#`���g�on¥�

� = 43 � � � � ��� '��Q ~O~ ~ � Í8[gi`|E%��<[^h\cw[�cwTWa4XÁcDe^nu] Q ~O~ �(� Í8[gi`|<joÖ([gh\cw[�cwTIa4Xscuegnu] Q ~ \ Q(� Í8[gi`|7cwTWa�XÁcDe^nu]7i*[gVzh\cwadj�pr[gjÂcDTWa4iWjDady`Vz[gmIX�egk`ÒkljDatXDX�XÁifegn�a�[^h\cw[ËcDTWa.XÁcDe^nu]*�Sl SUTWVzX�VzX½[ghI_b|�XÁVz��ÒhWV �fndegh^c8V{pFcDTWa�iWjDady`Vz[gmIX$��[lkla���e^XOmIXwadj$�E[lkla�n¥�

SUTWVYX8jDadiIjwaoXÁath^cuX8e 6 � 2F�m��/a5 �m/a6�2 [gpºcwTIa+<w��priWV?>VbhfXscDjwmIn�cwVz[gh��¢�`ada³cwTWa�< %$Äd%�Ö^ÖR%³jD[ln�atXDXw[gj�È�eghIk`ÒZf[`[^]F>I�`iIe��^a1��Ò��g� ~ \Z��� Í8[^i`|4cwTIa�n�[gi`|.[�p %8�.[gh\cw[1cDTWa�XÁcDe^nu]�e�hIk��ËegXw][gmlc1e�_z_GZImlc½cDTWa�_b[v��adj �Iyga.ZWV{cuXd��SUTWa.jwaoXÁmI_{cDVbhW�yve�_zmWa�kWatXwVb�^hIevcDatXGcwTWa�nte�mIXwa�[�pIcDTWaUVbh\cDadjDjwmWiWcjl¨[gjcwjue�iOn��OSUTWa½[^jwVz�gVzhIeg_fyve�_zmWa([�p�cDTWaS%8�<TIegk<cw[�ZfandegilcwmWjDatk � mWVYnu]\_z| Q ~ \ B(� SGatXÁc�V{p,cwTWa�iIjwaty\Vz[gmfX8�E[lkla�VYXU]gatjwhWat_F[gjÂmIXwadjo�

�c� ��2 ����24XZ�k�O��6*0P�Z��2p�k6 �O24�N��2F5�0P����2 cwTWaZWjue�hInuT�VYX�cue�]^adhEl �\�N(m$4n���%8�1VYX,nuTIe�hW�^atk(cD[½XwTW[v�cwTWa1iWjDady`Vz[gmIXU�E[lkla4e^XUmIXÁatjÂ�E[`kWaYl �\��×m(on%Q ~ � �(� SUTWa�XÁi*atndVzeg_bVYXÁaokÏVzh^cDadjDjwmIilcBTIeghIkl_zVbhI� jD[gmlcDVbhWaif[^Vbh\cDatk�cw[�Z`|�ju��VYX�ath^cDadjDatkF�@lr��h�cDTWVzX�nde^XÁa7V{cVzX�cwTIa7jD[gmlcDVbhWa@<wnd_b[lnu]y>W�,�ÂTWVYnuT�VzXEklVYXDn�mIXDXÁaok�Vbhkla�cue�Vz_FVbh�cDTWa�hWa�9`c�nuTIegilcwatjt� nQ \OQ Q(� �ÏTWath.cDTWas<wnd_b[lnu]y>�jD[gmWcwVzhWaSlr[gj³Xw[g�EaU[�cDTWadjOVzhlÒcwatjwjDmWilc,TIe�hIkW_batj nºjwadcwmWjDhIXt�ocwTWa8cw[^i4cs��[���[gjukWXº[gpcwTWaEXÁcDegnu]}egjwaEklad_za�cDatkF�.SUTWatXwa�egjwa�cwTWa��ËegXw]gaokn�[^i\|�[�pËcDTWa@%�� e�hIkLcDTWaÑnd[gi`|�[gpËcwTWa Xscuegnu]if[^Vbh\cDadj,

Q \OQ�,%� jtÖ(VYXÂjwaoXscD[gjDatk<prjw[^�?cwTWa4XÁcDe^nu] Q \OQ B-� Ä�at_badcwa1cDTWa4n�[^i\|7[�p�%��ËprjD[g�:cwTWa4XÁcDe^nu] Q \OQO7(� ÅÂatXÁcw[^jwa½cwTIa�y¸eg_bmIa�[�pGju�.prjw[^�?cwTIa4Xscuegnu] Q \OQ�g%� ),VbhIeg_b_z|}cDTWar<ÁjwcÁc >BVzhIXscDjwmfn¥cwVz[gh�jDa�cwmIjwhIX½cD[BcDTWa

<w]gatjwhWat_?>.�E[lkla�jw[^mlcwVzhWa(cwTfevc��UegX�Vbh\cDadjDjwmWiWcwatk ���� ��2 ���N24XZ��� ��6d0P�Z��2*[i/a6`��6�24�S0P�Z��2 V{cOVYXhI[�c.ndadjwcDe�Vzh�cwTIe�c4cwTIa<Vbh\cDadjDjwmWiWcwatk�jD[gmlcDVbhIaË�ÂVb_z_Z*a�jDatXwmW�EatkBVb�E�EatklVYevcDad_z|

Q ~ \ \-� ÔÂpÀcDadj�cwTIa�XÁi*atndVzeg_bVYXÁaok Vzh\cwatjwjDmWilc}jD[gmlcDVbhWa l¨VbhcDTWVYX.ntegXwa3<wnd_b[lnu]y>on(jDa�cDmWjDhIXd�Oe�nuTWatnu] l�<wjwmWhIjwmWh� �o>onUVYX��ËegkWa�cw[7Xwada�V{p³e�h`|�iWjD[`ndatXDXÂ[�pOTWVz�gTIadjiIjwVz[gjDV{cs|�cDTIe�h�cDTWa<n�mWjDjDadh\c(iIjw[ln�aoXwX1VYX1jDategkW|�cw[jDmWh�����p1cwTWaqklaon�VYXÁVz[ghÎVYXEcw[�eg_b_z[v�McDTWa&ndmWjwjDadh\ciIjw[ln�aoXwX$cw[En�[^h\cwVzh\mIag�\cwTWath7VbcÂVzX8Vb�Ei*[gjwcDegh^c�cwTfevcVbcOZfa�hW[gc,Vzh\cwadjDjDmWilcwaok�e^XºVbcOjwaoXscD[gjDatX�VbcDX,jDad�^VzXÁcwatjDXiIjwVz[gj½cw[�cwTIa}<wjwadcwmWjDh}prjD[g� Vzh\cwadjDjDmWilc >BVzhIXscDjwmfn¥ÒcDVb[^h��OÈ�athIn�aÂZ*a�pr[^jwaUcDTWaUcwaoXsco��cwTIa�iWjD[`ndatXDXÁ[^j¢iWjwVbÒ[^jwVbcs|1VzXGjue�VYXÁaok1cw[1XÁatygathElr_zVbhIa��`�N(\�mn¥�tcwT`mIX,adhfXÁmWjwÒVzhW��cDTIevc�hI[}��[^jwaEVzh\cwadjDjDmWilcDX4[`ntn�mWj�mIh^cDVb_8mIXwadj�E[lklaUVYXGjDatXwmW�Eatk�� l Ô�hW[gcwTWatjOVbh\cwatjwjDmWilc¢�Ëe¸|�[ln¥ÒndmWjÂVz���EaoklVze�cwat_b|7cwTWatjwaoevpÀcwatjt�lTI[v�8atygadjo� n

��p�<wjwmWhIjwmWh �Ó�o>W�*cwTWath�e�hW[gcwTWatjt�¼TWVz�gTWatj1iWjwVz[gjDVbcs|g�iWjD[ln�atXDX1VYX4�Ue�VbcwVzhW�I��SUTWa<iWjD[ln�atXDXw[gj�iWjDVb[^jwVbcs|qVYX4jDatXwa�ccw[��W�Oe�_z_z[v�ÂVbhW��e�h`|�i*adhfklVbhI��Vzh\cwadjDjDmWilc4cD[&Z*a7cue�]gath��Ô nte�_z_1VzX7cwTWath �ËegkWaqcw[=<wXw�UcDnuTa>Il �WÖ¸�N(4n¥�UcD[Ñe�_z_z[v�cwTIa<TWVz�gTWatj4iWjDVb[^jwVbcs|&iWjD[ln�aoXwX1cD[qiWjD[ln�adaokF���ÏTWadh�cDTWaiWjD[ln�atXDXEjDa�cwmIjwhIXËprjw[^� <wXw�UcDnuTO>W�8cwTWaqiIjw[^�gjue�� _z[\[^iIXZIe^nu]Ecw[ËjDadi*atevcUcDTWa1cwaoXsco�SUTWa&egZf[vy^a�kWVzXDn�mIXDXwVb[^hÑ[^Z\y`Vz[gmIXw_z|�a�9`cwathIkWXEcD[ e�_z_Vzh^cDadjDjwmIilcDXt�OSUTWa1[ghW_z|<iIegjÁcU�ÂTWVYnuT�jDad_YevcDatXUXwifaon�V �fndeg_b_z|cw[<cwTWa�n�_z[`nu]BVbh\cDadjDjwmWiWc½VYXÂcwTIa.ndeg_b_G[gh�cDTWa.Xwifaon�VYe�_zVzXwatkjD[gmlcDVbhWau<Dn�_z[`nu]y>I�� �� � � ��/57� � �8�# � � �# � �SUTWa <wXw|lXscDad� nte�_z_?>��EatnuTIeghWVYXÁ� �ÂTWVYnuT adhIegZW_baoXEmIXwadj�E[lkla1iWjw[^�gjue��ËX$cw[Ende�_z_F[ghBcwTIa([^ifatjDe�cwVzhW�EXÁ|lXÁcwad�Mpr[gjegXDXwVzXÁcDeghIn�a^��Vbh`y^[g_zygatXOcwTWa½a�9latndmlcwVz[ghËZ`|.cwTWa½mIXÁatj$�E[lklaiWjD[g�^jDeg� [�p�[ghIaq[�p��g�g��ygatjDXwVb[^hIXE[�p1cDTWa <Ácwjue�ia>�VzhlÒXÁcwjDmIn¥cDVb[^h�� l¨SUTIa <wygatjDXwVb[^ha>}VYX�cwTWa�yve�_zmWa�[�p½cwTWa�_z[v�[gjuklatj�Z`|\cwa1[gpGcDTWa�VbhfXscDjwmIn�cwVz[gh��8[^jDk�� nQ�g �y\-� Ì�9latndmlcwVz[gh�[�pUcDTWaEcwjue�i�VzhIXscDjwmfn¥cwVz[gh�Vzh�e�mIXwadj�E[lkla³iIjw[^�gjue��ÐndegmIXwatXFe�cwjue�i(cD[�[lndn�mIj¼cw[�y^atn¥cD[gj_z[lnde�cwVz[ghE#m$4�ÂTWVYnuT7ndegmIXÁaoXOcDTWa`%UÍ cw[�Z*a�_z[^e^klatk�ÂVbcwT<cwTWa½y¸eg_bmIa�[�p¼cDTWa�_Ye�Z*ad_ <scDjDegia>slr_zVbhIatX��^�lÖ¸�l��`���^�mn¥�OÔLhWat�W%��<VYX�Xwa�c��ÂTWVYnuTBVzhIklVYnde�cwaoX

iIjwaoXÁath^cÂ�E[lkla � ]^adjDhWad_F�E[lklaiIjwaty\Vz[gmfXU��[lkla� mIXwadjÂ�E[lklaiIjwVz[gjDV{cs| �¿�

Q ~ gOv-� SUTWaÂhWaA9\c³VzhIXÁcwjDmIn¥cDVb[^hEa�9latndmlcwaok.VYX,cwTIa �IjuXscOVzhlÒXÁcwjDmIn�cwVz[gh}[�p*<Ácwjue�ia>I�ÂSUTWVzX½Xwe¸y^atXUcDTWa4iWjD[ln�aoXwXw[gj$\�

Page 55: A Commentary on the Sixth Edition UNIX OS -- Lions

XscuevcDmIXË��[gjuk VzhÎcwTWa�Xscuegnu]�cs��[��8[^jDkIXEZfat|g[ghfkcwTWa�ndmWjwjDadh\cs<scD[gi�[�pOXscuegnu]y>W���cºVYX�Vz��i*[gjwcDegh\c�cw[�XDe¸yga,cDTWa %8�1e^XºXw[`[gh�egXFi*[^XDXwV{ÒZW_zag�vZ*a�pr[gjDa�V{c³ndegh�Z*aÂnuTIe�hW�^atkF��XwVzhIn�a�V{c³nd[gh\cDegVbhIXVbhWpr[gjD�Ee�cwVz[ghËkla��IhWVzhW�4cDTWa�cs|`i*a�[�p¼cDjDegiEcwTIe�c8[ln¥Òn�mWjDjDatkF��SUTIa.Xw[g�Ead�ÂTIe�c�mWhInd[gh`ygath\cwVz[ghIeg_GklaoXscDV{ÒhIevcDVb[^h�[�pUcwTWa3<Á�E[vyga�>7VYX�cD[qiWjD[vy\VYklaËn�[^�EiIevcDV{ÒZWVz_bVbcs|E�ÂV{cDT7cDTWa½Tfe�hIkl_zVzhW��[gpºVbh\cDadjDjwmWiWcDXt�\Xw[4cDTIevccwTWa�XDe��Ea�n�[lkla4nte�h�Zfa�mIXwatkBprmWjwcwTIadjÂ[gh

Q ~ g ~ � <ÁhI[�p¨e�mI_{c >��ÂVb_z_$Z*a* datjw[}Xw[�cwTWa7ZWjDeghInuT�VzX�hW[�ccDeg]gadh Q ~ g��(� SUTWa��Ead�E[gjD|Ð�Ëe�hfe��gat�Eadh\c�XÁcDe�cwmIX�jDad�^VzXÁcwatjDXe�jDa�XÁcw[^jwaok 4smfXsc<VzhÏndegXwa�cwTWat| �ÂVz_b_�Zfa}hWatatklaokF�e�hIk cDTWa���at�E[gjD|Ñ�Ëe�hfe��gat�Eadh\c7mWhWVbc�VzXBjwatVbhIV{ÒcwVYe�_zVzXwatk Q ~ v�,-� Ô?XwmWZWjD[gmlcDVbhWaEath^cDjw|&VzX1�ËegkWa.cD[ <wnte�_z_?>BmIXwVbhW�jD�I� l SUTWVzXBhWaoevcw_z|ÏXscD[gjDatX<cwTWa�[g_YkÏyve�_zmWa&[gp4jD�Vbh�cDTWa7XÁcDe^nu]*�,ZWmlc.hW[�c.e�jDa�cDmWjDh�egkWkljDatXDXt�BSUTWahWad�Ïyveg_bmWa(VYX$cDTWa1egkWkljDatXDX³[gp�cwTIa(e^kWkljDatXDX³[�pºcwTWajw[^mlcwVzhWaBcw[�Zfa�ath^cDadjDatk hWa�9`cblrVzh cDTWVYXËndegXwaBcwTWa

<scDjDegia>�jD[gmWcwVzhWa1Vbh�cwTIa �I_bau<Ácwjue�i�� nA>ul �g�g×o#on n%Q ~O~ ,-� SUTWa�XÁcDe^nu]�if[^Vbh\cwatj³VYXOegk#4smIXÁcwaok.cw[�i*[gVzh^cOcD[(cwTWa_b[lntevcwVz[ghÑ�ÂTWVYnuTÎeg_bjDate^kl|�n�[^h\cDe�VzhIX.cwTIaqn�[gi`|�[gp

%8� Q ~O~ B(� SUTWa.Í %8x�iIjwVz[gjDV{cs|ËVYX�Xwa�cUcw[ tadjD[2

-Z�N� 0 ��24�N2z� ��2z6�/10P2 ��/y� � /a6 � �O� /1� �k� -��24���N�����s��6 � �O5k5��F[i2F� �

� = (' ��� � ����� � $��2 � �

SUTWaËXÁcDe�cwaE[�p8cwTWaE]gatjwhIad_³XÁcDegnu]qe�c1cwTWa�cwVz�EaEcwTIe�c1cwTWa<Ácwjue�ia>BiWjD[`ndatklmIjwafl�<¥Í >7y^adjuXÁVz[gh n�[^j1[ghWaE[�p�cwTIa<XÁi*a�ÒndVzeg_bVYXÁaokÏVzh^cDadjDjwmIilc�Tfe�hIkl_zVzhW� jD[gmlcDVbhIatXBVzX�adh\cDadjDatkF�½VzXXwTW[v�Âh�Vbhf),Vb�^mWjDa�Öo�W�zÖg�

�z�z�b� LM�N24XZ��� ��6Y����� � �e6���/1� �l¨jwiIX �on � iIX [^_zk+%8�l¨j¥� Ö�n � i¼n [^_zk+%�Í&lrj���nl¨jD� �4n � � � ju� [^_zkBju�

$ hWifX hIad� %8�BevpÀcwatjUcwjue�il¨jtÖ �l�on # joÖ [^_zkBjoÖl¨jD� �F#4n � XÁi [^_zk��y% pr[^jÂiWjwaty`Vb[^mIX���[lklaÖ klaty �Ëe^XÁ]^atkBhWad�W%8�� � � cwi¼n jDa�cDmWjDh�e^kWkljDatXDXUVbh <wnte�_z_?>l¨ju� �l� �*Ö lrj¥�mn [^_zkBj¥�l¨j $ �I� �l� lrj $4n [^_zkBj $l¨j # �y( �F# lrj #on [^_zkBj #l¨ju� �l× �4$ lrj¥�mn [^_zkBj¥�

),Vz�gmWjDaEÖt�I�bÖ

Í8[g_zmW�EhIX*lÉ�mn�e�hIkrlk#on��gVzyga½cwTIa�if[\XÁVbcwVz[ghIX�[�p,XÁcDe^nu]��[gjukWX1jwat_ze�cwVzyga�cw[�cDTWa<i*[^XwV{cDVb[^hIX�Vzh�cwTWaBXscuegnu]q[gp�cDTWa��[gjukWX�_zegZfat_b_zatk <Áju�m>.e�hIk <Ácwi¼nA>�jwaoXÁi*atn�cwVzygat_b|^�Í8[g_zmW�EhIXjlsÖ�n,e�hIk l �mn,kla��IhWaSlr[^j¢a�9liW_Ye�VzhOnºcwTWaÂn�[^hlÒcwath\cDXU[�p,cwTIa �I_baf<wjwat�I� Ta>ElÉ�`TWata�c(�g�on¥�<wklatyy>W��<DXÁiO>W��<wjtÖ�>W��<ÁhWiIX >u<Áju�m>I�Z<Ái¼nA>�e�hIkz<wiIX >1VbhcwTfevcU[gjukladj�e�jDa�cwTIa½hIeg�EatX8[�p�cDTWa½ife�jue��Ea�cDadjuX³mIXwatk7VbhcwTIaUkWatn�_Ye�juevcDVb[^h4[�pfcwTWaUiWjD[ln�aoklmWjDatXd<scDjDegia>ilÉ���g×o#onºe�hIk

<wnd_b[lnu]y>+l�#\�g�g�on¥�~�[gcwa1cwTfevc 4smIXÁc�Zfadpr[gjDa�adh\cwjD|ËcD[}<Ácwjue�ia>ulA<uÍ >�ygatjÁÒXwVb[^hOn�[^j�cDTWa�[�cwTIadj1Vbh\cDadjDjwmWiWc(TIeghIkl_zVbhI�7jD[gmlcDVbhWaoXd�¼cDTWayve�_zmWatX4pr[gj�cDTWa7jDad�^VzXÁcwatjDX4ju�W�Gj #W�,j $�e�hIk�j¥��TIe¸ygaËhI[�c|gadc$Z*adadhBXwe¸y^atk�Vbh<cwTWa(Xscuegnu]¼�,SUTIVzX8VzX$ifatjÁpr[^jw�EaokEZ\|Ëendeg_b_`[^ht<DndXwyF>�lr_z�\�g�onG�ÂTWVYnuT.VYXOe�mWcw[g�Ëe�cwVYnde�_z_z|�VbhInd_bmfklatkZ`|4cDTWap<uÍ >1nd[g�EiWVz_batj$evcOcDTWa�Z*ad�gVzhWhWVzhW��[gp¼atygatjw|�nd[g��ÒiWVz_baok�iWjD[`ndatklmIjwa^��SUTWa<pr[gjD� [�pUcDTWaBnte�_z_³[gh <DndXwyF>�VYXa � mWVzyve�_zadh\cUcw[EcDTWa�egXDXÁat��ZW_zadjÂVzhIXÁcwjDmIn¥cDVb[^h? � � � �/� ��� �SUTWVYX(XDe¸ygaoX�cDTWaEn�mWjDjwath\c½yve�_zmWaE[�p$j¥�Ë[^hqcDTWa�XÁcDe^nu]e�hfk}jwatiW_Yegn�aoX�Vbc1Z\|�cDTWa�e^kWkljDatXDX�[gp³cwTWa�hWaA9\c1VzhIXscDjwmfn¥ÒcwVz[gh�VzhBcDTWaf<uÍ >�iWjD[ln�aoklmWjDag�

�F7�,Z�'� SUTWVYXUy¸eg_bmIa�[�pGj¥�.VzXÂnd[giWVzatk�Vzh\cw[EjD�2�F7�, ,%� cwTWaÐndmWjDjwath^c�yveg_bmWaÏ[gpBcDTWa XÁcDe^nu] if[^Vbh\cDadj�VYXnd[giWVzatk�Vzh\cw[Eju�W�~�[gcwa�cwTIe�c�e�c�cwTWVYX�if[^Vbh\ct�(j¥��i*[gVzh\cDXBcw[ÎeÑXÁcDe^nu]_z[`ntevcDVb[^h�n�[^h\cDe�VzhWVzhW�<cDTWaEiWjDady`Vb[^mIX(yve�_zmWa.[gp8j¥�<VÉ� ag��Vbci*[gVzh^cuX�cD[<cDTWa�Z*ad�^VbhWhIVbhW��[�p$eBnuTIe�Vzh}[�p³i*[gVzh\cwatjDXt�¼[ghWai*adj1iWjD[`ndatklmIjwa^�*�ÂTIVznuTI<scwTIjwaoegk1><cwTWaEXscuegnu]¼���ÏTWath�e

<uÍ >qiWjw[lndatklmWjDa7aA9lV{cuXd�OVbcEe^n¥cDmIe�_z_b|�jDa�cDmWjwhfX4cD[I<Dn�jDa�c >lsÖ�$o#^�onU�ÂTWatjwa�cwTWa.yve�_zmWa.[gp³ju�ËVzX(mIXwatk�cD[7jDatXÁcw[^jwa�cDTWaXÁcDegnu]�eghIkÑju�W�³j #�eghIk j $�cw[�cwTWatVbjËaoe�jD_bVzadjËnd[ghIklVbcwVz[ghlrVÉ� ag�OegX¢cDTWad|���adjDaÂVb�E�EatklVYevcDad_z|.iIjwVz[gjOcD[4adh\cDadjDVbhW�1cDTWaiWjD[ln�atkWmWjwa�n¥�})W[gj.cwTIVzX.jwaoegXw[gh�j¥��VYX�[gpÀcwadh ndeg_b_zatk�cDTWa2F��XZ� �N� ��0P2F��� � � ������24� �

$`�

Page 56: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � �A�*��� � �Y��� � � �+* ��

SUTWa�iIjw[ln�aoklmWjDa <wn�_z[lnu]y>Ilk#\���^�mnBTIeghIkl_zatX�Vzh^cDadjDjwmIilcDXprjD[g�JadVbcwTWatj�cwTWa _bVzhWaÎprjDa � mWadhfn�| cDVb�Ea nd_b[lnu] lrcs|`ifaÃ1� Ö^Ö�Ò�Æ¢�IVzh^cDadjDjwmIilc�ygaon¥cw[^jÂegkWkljDatXDX1Öt�^�on8[gjUcDTWa4iWjD[�Ò�^jDeg���ËegZW_ba�jDate�_bÒÉcwVz��a�nd_b[lnu]=lrcs|`ifa�Ã1� Ö^Ö�Ò %¢��Vzh\cwatjÁÒjDmWilc�y^atn¥cD[gjÂegkIkljwaoXwX(Öo��$4n��x�~���¾ jwa � mWVbjDatX$cwTfevc�evcU_baoegXÁc�[^hWa([�p�cDTWatXwa�XÁTW[^mW_YkZ*aÂe¸y¸egVb_Ye�ZI_ba^� lr��p¼Zf[gcwTEe�jDa$iWjDatXwadh\co�v[ghW_z|1cwTWaU_zVbhIa8cDVb�Eand_b[lnu]<VYXUmIXwatkF� n�ÏTWVYnuTWady^adjËn�_z[lnu]�VzX�mIXwatk��$Vzh^cDadjDjwmIilcDX�e�jDaB�^adhWatjÁÒe�cwatk evcB_zVzhWaqprjDa � mWathIn�| lrVÉ� ag�3�ÂV{cDT eÑ�g��È� �if[v��adjXwmWiWiW_z|g�latygatjw|7�g�.�EVz_b_zVYXÁaon�[ghfkWX n��OSUTWa�n�_z[`nu]7Vbh\cwatjwjDmWilciWjDVz[gjDV{cs|q_zady^ad_8VzX.XÁV 9F�GTWVz�gTIadj�cDTIe�h�pr[^j�e�h`|&[gcwTWatj4i*a�ÒjDVbiITWadjue�_*klady`VYn�a�[^h<[gmIj³cs|`iWVYnde�_¼Xw|`XÁcwat���`Xw[�cDTIevc�cwTWatjwa�ÂVz_b_,mIXwmIe�_z_z|�Z*a�ygadjD|�_bVbcÁcD_baEklad_Ye¸|�VbhqcwTWa�VbhIV{cDVze�cwVz[gh&[gp<Dn�_z[`nu]y>}[^hIn�aBcwTIa�Vzh\cwatjwjDmWilcETIegX�Z*adath jDa � mWatXÁcwaok�Z`|cDTWa4n�_z[lnu]7n�[^h^cDjw[^_b_zadjo��8�8 �� � � � � � � , � ( ���SUTWa8prmWhIn�cwVz[gh�[�p <wn�_z[lnu]y>ÂVzX¢[^hWa�[�pI�^adhWatjDeg_^TW[^mIXwad]gatadilÒVzhW���

cwTWa klVYXÁiW_Ye¸| jwat�gVYXscDadj�VzX�mWi¼kWevcDatk lk%$Äd%�Ö^Ö ��$`�e�hIk�ÖgÖ��g���4[ghI_b|1n� yve�jDVb[^mIXUegndnd[gmWh\cDVbhW��yve�_zmWatXÂXwmInuT�egX8cwTIa1cwVz��a�[gpkWe¸|g��egntn�mW�.mW_ze�cwaok�iWjD[ln�atXDXwVbhW��cwVz�EatX<eghIkÑa�9la�Òn�mlcDVb[^hBiIjw[ �I_baoXÂe�jDa½�ËegVbh\cDegVbhIatk� iWjD[`ndatXDXÁaoX¢XÁ_zadatiWVbhI�½pr[^j³e �19latk�cwVz��a�Vbh\cwatjwyveg_We�jDae¸��eg]gathWatk<e^XUifatj�XDnuTWatklmI_ba� n�[^jwaqXw��egiWiWVzhW� e^n¥cwVzy`V{cs| VYX<VzhWV{cDVze�cwaokÏ[ghInda&i*adjXÁaon�[^hIkF�<wnd_b[lnu]y>BZWjwaoe�]lX½��[\Xsc�[gp$cwTIa�jDmW_zatX½pr[gj1i*adjDVbiITWadjue�_klaty`VzndaËTIe�hIkW_batjDX �4Vbc.kl[`atX�jDa�pratjwathIn�a�cDTWa7n�mIjwjDadh\cf<Áma>XÁcwjDmIn¥cDmWjDag��e�hfk4VbcOeg_zXw[�jDmWhIX¢e�cOe½_z[v��iWjwVz[gjDVbcs|½pr[^jOXÁ[^��a[gp�cwTWa½cwVz�Eag�O��cÂe�ZWZIjwaty\VYevcDatX8V{cuXUegn¥cDVby`Vbcs|ËV{p,e�iWjDady`Vz[gmIXaA9`aon�mlcDVb[^hBTfegXUhW[gc�|ga�c�nd[g�EiW_za�cwaokF�

B ~ 7�Q(� <wkWVzXwiW_Ye¸|F>.VYXÂe.hI[�Ò�[gi�[ghBcwTWa*%8Ä`%�ÖgÖ �N$^�2B ~ 7�B(� SUTWa�e�jDjue¸|=<Dnde�_z_z[gmlc >Il �^���\�mn<VzX}egh�e�jDjue¸| [gp

<w~1Í�Ô�ƺÆ�> l¨�IÖA$o#4nEXscDjwmfn¥cwmIjwaoX<[�p1cs|`i*a <wnte�_z_b[4>l¨�\���g�4n¥��SUTIa}<Dndeg_b_z[o>BXscDjwmIn�cwmWjDaËn�[^h^cue�VzhIX½cwTWjDadaad_zad�Eadh\cuX��1e�h�VbhIndjwat�Eadh\cDeg_¢cwVz��a^�ºe�h�e�jD�gmI��ath\ce�hIk�cwTWa�egkWkljDatXDX�[gpIeÂprmWhfn¥cwVz[ghº�G�ÏTWath4cDTWa³prmWhfn¥ÒcwVz[gh�ad_zad�Eadh\c�VYXÂhW[gc�h\mI_b_É�`cwTWa4prmWhIn¥cDVb[^h�VzXUcD[EZfaa�9latndmlcwaokq�ÂVbcwT�cwTWaEXwmWiWiW_zVbaok�egjw�^mW�Eadh\c(e�pÀcwatj1eXÁi*atndV �fatk7cwVz��a^�l�)I[gj�cDTWa.Xw|lXscDad�ËX�mIhIkladj1XÁcwmIkl|^�IcDTWa�[^hW_z|7prmWhfn¥ÒcwVz[gh atygatj&a�9laon�mlcDatk Vzh cDTWVzX��Ue¸|�VYXW<scwcwjuXscDjÁc >l�(m$o(g�4n¥�`TIeghIkl_zadjo�qlÉ�`ada.Í8Tfe�ilcDadj��g�W� n n�

B ~ 7�\(� ��p4cDTWa �IjuXÁcBad_zad�Eath^c�[�p�cDTWa�_bVYXsc�VzXBh`mW_z_ ��cwTWa�ÂTW[g_za1_bVYXÁc�VzXUh`mW_z_1

B ~ gOQ-� SUTWau<wnte�_z_b[^mlc >�_bVYXscÂVYXÂe�jDjDeghW�gaokEVbh�cDTWa�klatXwVbjDatk[^jDkWadj�[gp³a�9latndmlcwVz[ghº�(SUTWa�cwVz�Ea.jDatnd[gjuklatk�VYX�cDTWah`mW�.ZfatjÂ[�pGnd_b[lnu]EcDVznu]lXUZ*a�cs��adadh�ady^adh\cDXt�¢x�hW_zatXDXcDTWa �IjuXÁcOcwVz��a*lrcwTWa�cwVz��a�Zfadpr[gjDaUcwTWaÂhWaA9`c$ady^adh\c nVYX,e�_zjwaoegkl| dadjD[I�Flr�Eaoe�hWVzhW�ÂcDTIevcGcwTWa8a�9latndmlcwVz[gh�VYXeg_bjDate^kl|4klmWa�n,cwTIVzX¢cDVb�Ea�XwTW[gmI_zk�Z*a�klatndjwat��ath\cwatkZ`|B[ghWa^���pºcwTWVYX³cDVb�Ea(TIegX8e�_zjwaoegkl|�Z*adadh�n�[^mWh\cwatk�cD[ tadjD[I�kWatn�jDad�Eath^c�cDTWa<hWaA9`c�cwVz��a7mWhW_zatXDX�V{c.VzX4eg_bjDate^kl| tadjD[&e�_YXw[I�¢a�cun���V � ag��klatndjwat�Eadh\c�cDTWa��fjDXÁc.hW[^hlÒ tadjD[�cwVz��a7Vbh�cDTWaË_bVYXÁct�BÔ�_b_$cwTWaË_zate^klVzhW�}adh\cwjDVzatX�ÂVbcwT tadjD[ cDVb�EaoX}jwatiWjDatXwadh\c}[gi*adjuevcwVz[ghfXB�ÂTIVznuTegjwa�eg_bjDate^kl|�klmIag�jl¨SUTWa½[gi*adjuevcDVb[^hIXOe�jDa�egn�cwmIeg_b_z|nte�jDjwVzatk7[gmlc�e�_zV{cwcw_za4_Yevcwatjt� n�

B ~ g��-� Ì�9We��EVzhWa¢cwTIa³iWjDady`Vb[^mIX¼iWjD[ln�atXDXw[gj�XÁcDevcDmIXF��[gjukF�eghIk�VbpÂcwTWaBiWjDVb[^jwVbcs|&�UegX�hW[ghlÒ datjw[f�ºZ`|`iIegXDX�cDTWahIa�9`c�Xwatn�cwVz[gh��\�ÂTWVYnuT<a�9latndmlcwaoXOcDTW[^Xwa�[^ifatjDe�cwVz[ghIX�ÂTIVznuT}e�jDa1klmWa�B ~ v v-� ÅÂatkWmIn�a�cDTWa�iIjw[ln�aoXwXw[gjÂiIjwVz[gjDV{cs|7cw[ �fygaEl¨[�cwTIadj_zady^ad_�XwV:9�Vbh\cDadjDjwmWiWcDXU�Ëe¸|<hW[v��[`ntn�mWj n�B ~ v ~ � �`ategjDnuT7cwTWau<Dnde�_z_z[gmlc >.egjwjue¸|E_b[`[g]`VzhW�.pr[gjÂ[gi*adjwÒe�cwVz[ghIXU�ÂTIVznuT}e�jDa1klmWa4e�hfkBaA9latn�mWcwa(cwTWat�

B ~O~ B-� Ç}[vyga�cDTWa�adh\cwjDVbaoXËpr[^j7[gi*adjuevcDVb[^hIX<�ÂTIVznuTÐegjwaXÁcwVz_z_^hW[gcG|^a�c,kWmWag�¸cD[ÂcwTWa�Z*ad�gVzhWhWVzhW��[gplcwTWaUe�jDjue¸|�B ~ \ ~ � SUTWa�n�[lklaBprjw[^� TWadjDaBmIh^cDVb_Â_zVzhWa+#`�v×`��VYX.aA9la�ÒndmlcwaokF�l�ÂTIe�cwady^adj$cwTWa(iWjDady`Vb[^mIX³iIjw[ln�aoXwXw[gj8iWjDVb[^jÁÒVbcs|g�fevcÂadVbcwTWatj�iWjDVb[^jwVbcs|Ë_zadygat_ �Iyga1[^j�XÁV 9�B ~ \ \-� ��p¼cwTWa½iWjwaty`Vb[^mIXO�E[lkla��UegXS<wmIXÁatj³�E[lkla�>I�gcDTWadhVzhIndjwat��ath\c,cDTWaÂmIXwadj¢cDVb�Ea�n�[^mWh\cwatjt�geghIk.V{pFe�h�a�9`Òaon�mlcDVb[^h7iWjD[ �f_ba�VYX�ZfatVbhI�.egntn�mW�.mW_YevcwaokF�lndeg_b_ <ÁVzhlÒndmWi¼nA>sl¨eo(g×\�mnºcw[1�Ëe�]^aUeghEadh\cwjD|4VzhEe1TIVzXÁcw[^�gjue��pr[^jUcwTWa�mfXÁatjÂ��[lkla�iIjw[^�gjue��Mn�[^mWh\cwatjMlk%�Íqn��

<wVbhfn�mWi¼nA>�VYXU�ÂjwVbcÁcDadh�Vbh�egXDXÁat��ZW_zadjo�`iWjDatXwmW�Ëe�ZW_z|pr[^j�a �ËndVbathIn�|}eghIkqn�[^h`ygadhIVbathIn�a^��Ô¿klaoXwndjwVzilcwVz[gh[gp��ÂTfevc4Vbc�kl[`atX��Ëe¸|qZ*aEpr[gmWhfk�Vzh�cwTWaBXÁaon¥cwVz[gh< %$Åe!d),�sÆ l¨�Á� n >.[�pºcwTWa�x%8Ç��I�`ata1eg_zXw[4cDTWa1iWjD[�ÒndatklmIjwau<ÁiIjw[ �I_?>+l�#^�g�`��n�

B ~ ��,%� ��pFcwTWa½iWjDady`Vb[^mIXO�E[lkla��UegX³hW[�c�mIXÁatj$�E[lklag�\VzhlÒndjwat�Eadh\cÂcwTWa.XÁ|lXÁcwad� lr]^adjDhWad_ n8cwVz�Ea�n�[^mWh\cwadj�pr[gjcDTWa�iWjD[ln�atXDXt�SUTWa�n�[lkla 4smIXÁc8klaoXwndjwVzZ*atk.ifatjÁpr[^jw�ËX,cwTIaÂZIegXwVzn8cDVb�Eaegntn�[^mWh\cwVzhW� pr[gj�cwTIa XÁ|lXÁcwat��� ̳ygatjw|�n�_z[`nu]ÐcwVYnu] jDa�ÒXwmW_{cuX4Vzh�cwTWa7VbhIndjwat�Eadh\cwVzhW�q[gpUatV{cDTWadj <Ám�� m mlcDVb�Ea�>q[gj

<Ámº� m XÁcwVz�Ea�> pr[gj}XÁ[^�Ea&iWjD[ln�atXDXt� ��[gcwT <wm�� m mlcwVz�Ea�>e�hfk <wm�� m XscDVb�Ea�>Ðe�jDa�VbhIV{cDVzeg_bVYXÁaok�cw[ tadjD[ÏVbh <Ápr[gjD]F>l�#o#^�^�mn¥� SUTIadVzj&yve�_zmWatX�e�jDa�Vzh^cDadjDjw[^�^e�cwatkLVzh <Á�Ue�Vbc >l�#\�^���on¥�OSUTWa1yve�_zmWaoXÂ�ÂVb_z_��^[.hWat�^e�cwVzyga�evpÀcDadje#^�gà cDVznu]lXl¨egZf[^mlc4Öt�.TW[^mWjDX n *B ~ ��g%� <Ái ndiWma><VYX(mIXwatk}Vzh�kladcwatjw�EVzhWVbhI�7iWjD[ln�atXDX½iWjwVbÒ[^jwVbcwVzatXt�,��c8VYX$e�nuTIegjDe^n¥cwatjOyve�_zmWa��ÂTWVYnuTËVzX8e�_z��e¸|lX

$4(

Page 57: A Commentary on the Sixth Edition UNIX OS -- Lions

Vbh\cDadjDiWjwadcwaokÑe^XËe�if[\XÁVbcwVzyga�Vzh^cDad�^adjbl¨��cD[ �g�^�mn¥��ÏTWadh V{cEVzX.�E[vygaok�cw[�e�XÁi*atndVzeg_$jDad�^VzXÁcwatjt�OXwVb�^ha�9`cwathIXwVb[^h.[lndndmWjuXOXÁ[(cwTfevc$�g�^�l�vpr[^jOVbhIXÁcDeghIn�a^��Z*a�Òn�[^��aoXU_bVz]ga �¼Ög�³Ô½kWklVzhW�<[ghIa1cwTWath�_zate¸y^atXÂe tadjD[jwaoXÁmI_{co�Ð��h cwTWVYX7ntegXwaBcDTWaqyve�_zmWa}VYXËjDatklmIndatkÑcw[�*Ö<eg�^e�Vzh��¢e�hIk�XÁcw[^jwaok�egX��^�g��mWhfXÁVz�ghWaokF�&~�[�cwacwTIe�c�VzhBcwTWa1[�cDTWadjUiW_YegndatX��ÂTWatjwa+<Ái ndiWma>�VzX�jDa�pÀÒadjDadhIndatkIl �lÖo�WÖ^�R#m(WÖ�$4n��¢cwTWa�cD[gi atVb�^T\cEZIV{cuXËe�jDa�ËegXw]gatk�[ �3evpÀcwatjqcDTWa�yve�_zmWa�TIe^X}Zfatadh cDjDeghIXsÒpradjDjwaokËcD[<e�Xwi*atn�VYe�_FjDad�^VzXÁcwatj�

B ~ � ~ � ��hIndjwat��ath\c@<Á_zZ*[g_bc >�eghIkÏVbp�V{c�a�9Wn�atatkWX3<wÈ �>W�V � ag�OeËXwatnd[ghIkB[gjU�E[gjDa1TIegXUat_zegiIXÁaok&�z�z�B ~ � \(� SUTWathÏiWjw[vy`VYklatkÑcDTWaqiWjD[ln�atXDXw[gjË�UegXËhW[gc7iWjDa�Òy`Vb[^mIXÁ_z| jwmWhIhWVbhI�Ñevc�e�hW[^h datjw[�iIjwVz[gjDV{cs|^��kl[Ñe�ÂTW[g_za1_b[gcÂ[�p¢TW[gmIXwad]^adatiWVbhI�2B \OQ Q(� Ľatn�jDad�Eath^cs<w_bZ*[g_bc >�Z`|3<DÈ �>2B \OQ���� ��hIndjwat��ath\c�cDTWa1cwVz�Ea�[�pOkWe¸|7e^ndn�mI��mW_YevcD[gj,B \OQ B(� SUTWa ady^adh\cDXÑ�ÂTWVYnuT:pr[^_b_z[v� �Ëe¸|3cDeg]ga XÁ[^��acwVz�Eag��ZWmWcOcwTWat|��Ëe¸|�jwaoegXw[ghIegZW_z|(Z*aÂVzh^cDadjDjwmIilcwaokcw[�XÁatjwy`VYn�a([�cwTIadj�ifatjwVziWTWatjDeg_zXt�¢�l[�cDTWa1iWjw[lndatXDXÁ[^jiWjDVb[^jwVbcs|�VYX$kljD[giIifaokEZfat_b[v�Ïe�_z_WcDTWa½kWady`Vznda�iWjDVb[^jÁÒV{cs|7_batygad_YXUVÉ� a^�OZfat_b[v� � � ��� �

È�[v��ady^adj³cDTWadjDa1VzXUhI[v� e�if[\XwXwVbZIVb_zV{cs|7[�pGeghW[�cDTWadjn�_z[lnu]�Vbh\cDadjDjwmWiWc7Zfadpr[gjDa�cwTWVYX7e^n¥cDVbyvevcDVb[^hÎ[�p(cwTWa<wnd_b[lnu]y>qiWjD[ln�aoklmWjDa�VYXËn�[^�EiW_badcwaokF�Ï�8| XÁadcÁcDVbhW�cwTWaËiIjw[ln�aoXwXw[gj1iWjDVz[gjDV{cs|�cD[ �O��2 juevcDTWadj1cDTIe�h�cw[Fm24�N� ��eBXÁaon�[^hIk&e^n¥cwVzyvevcDVb[^hq[�pi<Dn�_z[lnu]F><�ÂVb_z_OhW[�cevcwcwad�Eilc,cw[(a�9laon�mlcDa8cDTWaUn�[lkla8prjw[^� _bVzhWaq#m(g�m$�[^he�_YXÁ[f�G~�[�cwa�TW[v�8atygatj¢cwTIe�c³cw[�cDTWa�TIegjDkW��egjwa^��iWjDV{Ò[gjDV{cs|�[ghIa�VYX�prmWhfn¥cwVz[ghfe�_z_b|�cwTIa�XDe��Ea�e^X�iWjDVz[gjDV{cs| datjw[

B \OQO7@� ��p4cDTWa�ndmWjwjDadh\c<cDVb�Ea lr�Eate^XÁmIjwaokÏVbh�XÁaon�[ghfkWX nVzX.a � mIeg_³cD[&cDTWa7yve�_zmWa�XscD[gjDatk�Vzh�<scD[gmlc >W�O�Ue�]^ae�_z_�iWjD[ln�atXDXwatX��ÂTWVYnuTÏTIe¸yga�ad_zatn�cwaok cD[�XÁmfXÁi*adhIkcwTWat�ËXÁat_by^atXFpr[^j,e�ifatjwVz[lk4[gplcwVz��a�y`Vze�cwTWa�<wXw_zadadiO>XÁ|lXÁcwat�Qnte�_z_.VÉ� ag�5y`VzeÐcwTWa iWjD[ln�atkWmWjwa=<wXDXÁ_zadiO>l �g×\�v×4n¥�

<scD[gmlc >1XscD[gjDatXGcwTWa�cDVb�Ea�evcO�ÂTWVYnuT.cwTWaUhWaA9\c³iIjw[ln�aoXwXVYX½cw[�ZfaËe¸�Ue�]^adhWaokF�1��p$cwTIadjDa.VYX1�E[gjDa4cwTfe�h�[ghWaEXÁmfnuTiWjD[ln�aoXwXt�*cwTWath&cDTWaEjwat�EegVbhfkladjo�¼�ÂTWVznuT��ÂVb_z_OTIe¸y^a�Z*adadhklVYXÁcwmWjDZfaokF�¢��mIXÁc�jDatXwa�c <Ácw[^mlc >�Z*a�cs��adath�cwTWat���qSUTIVzX�EatnuTfe�hWVYXÁ���8�ÂTWVb_za � mWV{cDa�a �¼atn¥cDVby^ag���ÂVb_z_ÂhW[gcEZ*a}a�EÒndVbath^c�Vbp,cwTWa�h`mW�.Zfatj�[�pOXÁmfnuTBiWjD[ln�aoXwXwatX�ady^adjÂZ*atnd[g�EatX_Ye�jD�ga^���h�cwTWVYX�XÁVbcwmIe�cwVz[gh��(e �EaonuTIe�hWVYXw� XwVz��Vz_Ye�jBcw[ÑcwTWa<Dnde�_z_z[gmlc >�egjwjue¸| l¨Xwadab#\���\�mn4��[gmW_YkÑhWadaok�cD[�Zfa}iWjD[�Òy`VYklatkF�Ylr��h&p¨egn�ct�¼TW[v� klV �ËndmW_bc(��[gmW_Yk}Vbc(Z*a4cD[7�EadjD�gacDTWa�cs�8[½��aonuTIe�hIVzXw�ËX %7�ÏTIevcO��[gmW_Yk�Z*a�cwTWaUklVYXwe^klyve�hlÒcue��gaoX % %�n%B \OQ v(� �ÏTWath<cwTIa�_YegXÁc$cs��[�ZWVbcDX�[�pe<ÁcwVz�Eao{bÖ�| >4e�jDa tadjD[V � ag�}atygatjw|�pr[gmWj�XÁaon�[^hIkWXt�GjDatXwa�c4cDTWaBXDnuTWaoklmW_zVbhW�

#*e�� <wjwmWhIjwmWhO>}e�hIk��Ue�]^aËmWi�ady^adjD|\cwTWVzhW�}�Ue�VbcÁÒVzhW�.pr[gjUeb<w_bVz�gT\cwhIVbhW��Zf[^_{c >W�jl�<w_bZ*[g_bc >.jwatiWjDatXwadh\cDXe½�gathWadjue�_^ady^adh\cG�ÂTWVYnuT�VYX,nde�mfXÁaok�ady^adjD|½pr[^mWj¢XÁaon¥Ò[^hIkWXt�¼cw[BVbhWVbcwVYevcDaE��VYXDn�ad_z_Ye�hWat[gmIX½TW[gmfXÁat]gadatiWVzhW�I���c�VYXÂmIXwatkBZ`|3<wi*nd[gi*adha>ul�(^��$4(on¥� n�B \Z�yQ-� )W[^j�e�_z_�n�mWjDjwath\cw_z|7kla �fhWatk�iWjD[ln�atXDXwatX �

VzhIndjwat��ath\cp<Ái cDVb�Ea�>EmIi�cw[<e��ËeN9lVb�.mW�:[gpÂÖo�^�l¨V{c½VzXU[^hW_b|Be�nuTfe�juegn¥cDadjUyve�jDVzegZW_za�n�kWatn�jDad�Eath^c�<Ái ndiWma>ÓZ`| <D�IÍ�ȽÇqÔ��M> lk#\���\��nZImlc�kW[ hW[gc�eg_b_z[v�AV{c�cw[��g[ÐhWat�^e�cwVzygag� ~�[gcwacDTIevc�egX4klVYXDn�mIXDXÁaok&aoe�jD_bVzadjpl¨_bVzhWaE#`�v×\�mn <Ái ndiWma>VYXUcDjwaoevcwaok�egXÂeEi*[^XwV{cDVby^a�Vbh\cwat�gatjÂVbh�cwTIa4jDeghW�ga��cD[7�g�^�&Vbp�cwTWaËiWjD[ln�aoXwXw[gj1iWjDVb[^jwVbcs|}VYX4n�mWjDjDadh\cw_z|qXÁadc�evc�ekWadiWjDatXDXÁaok7yveg_bmWa^�WjDatndeg_zndmW_Yevcwa(Vbct�

~�[gcwaqcDTIevc <Ái ndiWma> adh\cwatjDXBVbh\cD[�cwTIa�ndeg_zndmW_YevcwVz[gh[�p.iWjw[lndatXDX7iWjDVz[gjDV{cDVbaoXd� <Ái iWjDV?>I��Z`| <wXwa�cDiWjDV?>Wl �WÖo���4n¥�<Ái iIjwV > VzX mIXwatk Z`| <DXÁ�UcunuTa> l �^���^×onÑVbh nuTW[`[^XwVbhW��ÂTWVYnuT7iWjD[ln�aoXwXt�\prjw[^�Me��E[ghW��cwTW[\XÁa(�ÂTWVYnuTBegjwa(Vbh�n�[^jwal�<u�lÆ�!�Ô�Äd>on<e�hIkÏjDate^kl|Ñcw[ jDmWh�lA<D�lÅUx�~`>on��UXwTW[^mW_zkhWaA9\cÂjDatndadVzyga(cwTWa.Í %8x*' XÂevcwcwadh\cDVb[^h��

<Ái cDVb�Ea�>}VzX.mIXwatk�cD[&�Eate^XÁmWjDaËTW[v� _z[ghW�3l¨VbhÑXÁaon¥Ò[ghfkWX n�e.iWjD[`ndatXDX�TIegX�Z*adadh�atV{cDTWadjÂVzh�nd[gjDa½[^jÂXÁ�Ue�iWi*atk[gmWc(cD[}klVzXw]¼�t<wi cwVz�Ea�>�VzX�Xwa�c1cD[ tadjD[BZ`| <whWad�ÂiIjw[lnA>lsÖ�(g�^×on¥�fZ`| <DXwnuTIatk1>flÉ����$l��nÂeghIk}Z`| < 9WXw��egia>fl $4#m(g�4n¥���c}VzX�mfXÁaok Z`| <DXwnuTWaok1>WlsÖt×^�^�W�1�g�g�g×4nEcD[ÎkWa�cwatjw�EVzhWa�ÂTWVYnuTBiIjw[ln�aoXwXwatX8cD[<XÁ�Ue�iBVbh�[gjÂ[^mlct�B \ ,OQ-� ��p cDTWa?XwnuTWaoklmW_zadj VYX ��egV{cDVbhW�/cw["jDate�jDjue�hW�^acDTWVzhW�^Xt�f�Ue�]^a�V{c½mWi���SUT`mIXUcDTWa�hI[gjD�Eeg_�juevcwa4pr[gjXDnuTWaoklmW_zVbhW�Ëklaon�VYXÁVz[ghfXUVzXÂ[^hIn�a1i*adj�Xwatnd[ghIk�B \ ,a7(� ��p�cDTWa�iWjwaty`Vb[^mIX���[lkla�Z*a�pr[^jwa�cwTWa�Vzh\cwatjwjDmWilc�UegXi<ÁmIXwadj8�E[`kWa�>W�`XÁcw[gjDaÂcDTWa½e^kWkljDatXDXO[�pe<wjD�o>1Vbhe}XÁcDeghIkWegjDk&iW_ze^n�a^�Ge�hfk&Vbp�e@<DXÁVz�ghfe�_ >7TIe^X1ZfatadhjDatndadVzygaok4pr[^jOcwTWa�iWjw[lndatXDXd��nte�_z_R<ÁiIXwVz�o>Yl $\��$o#4nºpr[gjcDTWa4e�iIiWjw[^iWjDVze�cwa1egn¥cDVb[^h���8�� )( �#" �� �'0 � � ,�� 3 � �SUTWVYX�iWjD[ln�atkWmWjwaÏ�Ëeg]gatX�hWad� adh\cwjDVzatX�Vzh cwTWa <wndeg_b_bÒ[gmWc >�e�jDjDe¸|^�Ï��h cwTWVYX7Xw|lXscDad� Vbc7VYXË[ghI_b| nde�_z_zatkÑprjw[^�cwTIa½jD[gmlcDVbhIa <ÁcÁcDXÁcDegjÁc > lk(^�g�^�mn��^ifegXDXÁVzhW�.cwTWa(iWjD[`ndatklmIjwa<scwcwjuXscDjÁc >�lk#�$4(g�on��º~�[gcwa�cwTfevcS<scwcwjuXscDjÁc >½nte�_z_zXd<scwcDXÁcDegjÁc >W��ÂTWVYnuT��Ëe¸|&nte�_z_S<scDVb�Ead[^mlc >I�Fpr[gj4e�cDTW[gjD[gmI�gTW_z|}Vbhfn�atXÁÒcwmI[gmIXUjDad_YevcDVb[^hIXÁTIVbi�*~�[gcwa�e�_YXÁ[�cwTIe�cÂ��[\XscU[�pd<scDVb�Ead[^mlc >�jwmIhIXUevcÂiWjDVb[^jÁÒVbcs|<_batygat_�XÁatygadhº�`cw[<e¸yg[^VzkBn�_z[lnu]<Vbh\cDadjDjwmWiWcDXt�

$^×

Page 58: A Commentary on the Sixth Edition UNIX OS -- Lions

� � E � ��*u �*� � ���E���� � � ��� ��

SUTWVYXÂnuTIegilcwatj8VYXÂn�[^hIn�atjwhWaok<�ÂVbcwTBcwTWa1�Ue¸|EcwTWa�Xw|lXscDad�TIeghIkl_zatX8cwjue�ifX$Vzh7�^adhWatjDeg_*eghIk7Xw|lXscDad�Mndeg_b_YX8VbhBiIe�jwcwVYn¥ÒmW_Ye�jo�SUTWatjwa�e�jDa � mWVbcwa�eqh`mW��Z*adjE[gp�n�[ghfklV{cDVb[^hIX��ÂTWVYnuTnte�h�nde�mfXÁaEcDTWaËiWjD[`ndatXDXÁ[^j(cw[ <scDjDegia>W�ËÇqegh\|�[�p�cwTWaoXÁaegjwa � mWVbcwa(n�_zategjw_z|�atjwjD[gj$nd[ghIkWV{cDVb[^hIXd�`XwmInuT7egX$TIe�jukl�Ue�jDa[^j�i*[v��adjUp¨e�Vz_zmWjwaoXd�leghIk�x�~���¾ kW[\aoXUhW[�c�e�cÁcwat�Eilc�e�h`|Xw[giWTIVzXÁcwVYnde�cwatkBjDatn�[vy^adjD|EiWjw[lndatklmWjDatX8pr[^jUcwTWaoXÁa^�SUTWa�VzhWVbcwVYe�_Fpr[ln�mfXUpr[gjÂ[^mWj�evcwcwadh\cDVb[^hBVYXUcwTIa�iWjwVzhIndV{ÒiIeg_FiWjD[`ndatklmIjwa1VzhBcDTWa �I_zaf<scDjDegi�� n�>W�� ( �� �2�# � � ( '�� ,��SUTWa��Ue¸|ÏcDTIevc}cDTWVzXqiWjw[lndatklmWjDa�VzXqVbh`yg[^]gaokÐ�UegX�a�9`ÒiW_z[gjDatk�Vzh�Í8TIegilcwatj�Sºath���SUTWa�e^XwXwad�.ZW_zadjp<Ácwjue�ia>EjD[gmlÒcDVbhWa�ndegjwjDVbaoX1[gmlc�n�adjwcDegVbh�prmIhIkWe��Eath^cue�_8TW[gmIXwad]^adatiWVbhI�cuegXw]`X�cD[ XÁadc�mWi3cwTWaÏ]^adjDhWad_<XÁcDe^nu]*�<Xw[LcwTIe�c��ÂTWadhcDTWVzX.iWjD[ln�atkWmWjwaËVYX�nde�_z_zatkF�¢ady^adjD|\cwTWVzhW�qe�iIifaoe�juX�cw[&Zfa]^[^XwTWadjo�SUTWat<scwjue�iO>.iIjw[ln�aoklmWjDa4ndegh}[gi*adjuevcwa4e^XUcwTI[gmW�^T}V{cTIe^k�Z*adadh ndeg_b_zatk�Z`|�e�hI[�cwTIadj <¥Í >}iWjD[ln�atkWmWjwaBVbh�cwTWahW[^jw�Ëeg_F��e¸|Ë�ÂVbcwT}XwadygathBife�jue��Ea�cDadjuX

klaty¼�IXÁiº�ljw_É�WhWiIXt�lju�W�li¼n��WiIXt�l¨SUTIadjDa7VYX�eqXwifaon�VYe�_�n�[ghfXÁVYkladjuevcDVb[^h��ÂTWVznuTÑXÁTW[^mW_YkZ*a½�Eath^cDVb[^hWatk<TWadjDa�Vzh7iIe^XwXwVzhW�I�¢~�[^jw�Ëe�_z_z|Eeg_b_*iIegjDeg�.ÒadcwadjuX¢iIe^XwXwatk�cw[f<¥Í >½iIjw[ln�aoklmWjDatX¢e�jDaUiIegXDXwatk.Z\|.yve�_zmWag���p¼cwTIa�iWjD[ln�atkWmWjwa�XwmWZIXwa � mWath\cw_z|.nuTIeghW�gaoX¢cwTWa�y¸eg_bmIatX³[gpcDTWa�iIe�jue��EadcwadjuXt�`cwTWVYXÂ�ÂVz_b_�hI[�c�e �¼atn�cÂcwTWa4nte�_z_bVzhW�ËiWjD[�ÒndatklmWjDa�klVzjwaon¥cw_z|g�È�[v��ady^adj V{pI<scwjue�iO> [gjÑcwTIaLVzh\cwatjwjDmWilc TIe�hIkW_batjDXnuTIeghW�ga�cwTWa(yve�_zmWatX8[�pºcwTWatVbjUiIegjDeg��adcwatjDXt�gcDTWa(hWad�Ðyveg_{ÒmWaoX(�ÂVb_z_OZfa�iWVYnu]gaokqmWi�e�hIk&jwa�#Iatn�cwaokqZIe^nu]}�ÂTWadh&cwTWa

<wiWjwaty`Vb[^mIX���[lkla�>�jwat�gVYXscDadjuX�egjwa1jDatXÁcw[^jwaokF� nSUTWa<yveg_bmWaË[gp�<Dkladyy>��UegX1[gZWcDe�VzhWaok�Z`|&nte�ilcDmWjDVbhW�cDTWa½yveg_bmWa([�pºcwTWa(iWjD[`ndatXDXÁ[^j8XÁcDe�cwmIX���[gjukEVb�E�EatklVYevcDad_z|e�pÀcwadj,cDTWa$cDjDegi.eghIk4�ËegXw]`VbhI�½[^mlc¢eg_b_`ZWmWc,cDTWa�_b[v��adj��IygaZWVbcDXt�U���E��aoklVYevcwat_b|�Z*a�pr[gjDa1cwTIVzXt�IcDTWa4iWjD[ln�aoXwXw[gj�XÁcDe�cwmIX��[gjuk�Tfegk�ZfatadhËXwa�c³mIXwVbhI�1cwTWa�iIjw[gcw[�cs|`i*aÂn�[gh\cue�VzhWatk.VbhcDTWa4e�iWiIjw[^iWjwVYevcDa½y^atn�cw[gjU_z[lndevcDVb[^h��SUT`mIX�Vbp8cDTWa<Xwatn�[^hIk��8[^jDk&[�p�cwTWaËy^atn¥cD[gj1_z[`ntevcDVb[^h�UegX3<ÁZWj�� �½h >�l¨ag� �I� _zVbhIa��^�WÖt�4n.cwTWathÐcwTIa&yve�_zmWa&[gp<Dkladyy>.�ÂVb_z_�Z*a�h��,Ov�� \(� <wXDe¸y\pria>ÂXDe¸ygatX�cwTWa #I[^e�cwVzhW��i*[gVzh\cGjDad�gVYXÁcwadjuX lrpr[gjcwTWaS%8Ä`%�ÖgÖ �N$^�I�gcDTWVzX�VzX�e�hW[gÒÉ[^i�* n�, ~ Q Q(� ��pEcwTWa iWjwaty`Vb[^mIX}�E[lkla�VYX <ÁmIXwadj&��[lklao'b�4cwTWayve�_zmWa4[�pS<Dkladyy>EVYX��E[lklV �fatk}Z`|BcwTWa�e^kWklVbcwVz[ghq[gpcwTWa1[ln¥cue�_�yveg_bmWa��\���+l ���^�^�on�, ~ Q���� SUTWa�Xscuegnu]�egkWkWjwaoXwXº�ÂTWadjDa$ju�ÂVYX,XÁcw[^jwaok1VzX,hW[gcwaokVbh <wm�� m e�ju�m> pr[gj�prmlcDmWjwa jwadpradjDadhIndag�^l �lmWZIXwa�Ò

� mWadh\cw_z|.cwTWa½y¸egjwVz[gmfXOjwat�gVYXscDadj8y¸eg_bmIatX$nte�hËZ*a�jDa�pÀÒadjDadhIndatk�egX�<Ámº� m egjD�O{ Å�hy| >I� n%

, ~ Q�,%� SUTWadjDa1VzX�hW[v�Le��.mW_{cDV{Ò��Ue¸|P<wXw�ÂV{cunuTa>Ekladi*adhfk`ÒVzhW�Ë[^h7cDTWa�yve�_zmWa1[�pM<wklatyF>I�Ô�c$cDTWVzX$if[^Vbh\c��8a�nte�hË[gZfXÁatjwy^aUcwTIe�c8x�~���¾�klVzy`VzklaoXcwjue�ifXGVzh\cw[½cwTWjDadaUn�_YegXDXwatXt��kladi*adhIkWVbhW�1[^h4cwTIa�iIjwVz[gj,iWjD[�Òn�aoXwXw[gjU�E[lkla�e�hIkBcDTWa4XÁ[^mWjun�a([�p,cwTWa1cDjDegi �

� / � ]^adjDhWad_F�E[lkla�� � mIXÁatjÂ�E[`kWag�WhW[gc�klmWa1cD[Ee}<Ácwjue�ia>.VbhfXscDjwmIn�cwVz[gh � � � mIXÁatjÂ�E[`kWag�IklmIa½cD[<e}<scwjue�iO>�VzhIXÁcwjDmIn¥cDVb[^h��� (< )( � ����� � : � � � �# � �SUTWa�cwjue�i�VYX¢mWhWa�9li*atn�cwatk�e�hfk��ÂVbcwTE[ghIa�aA9Wn�adiWcwVz[gh��vcDTWajDategn�cwVz[ghÑVzX�cD[W<wiIe�hIVzn�>W�ÏSUTWa}n�[lkla�a�9laon�mlcDatk VzX�cDTWa<wkWa�p¨e�mI_{c >.[gpºcDTWaf<wXw�ÂV{cunuTa>EXscuevcDad�Eadh\c �, ~ �yv-� %³jDVbh\c �

cwTIa�ndmWjDjwath^c�yve�_zmWa�[�p�cDTWa}XÁatygadh\cDT ]gatjwhIad_Xwad�g�Eath^cqe^kWkljDatXDXBjDad�^VzXÁcwatjzlrVÉ� a^� cwTWa�e^k`ÒkljDatXDX�[�pBcwTWa ndmWjDjwath^c�i*adj�iWjD[ln�aoXwX�kWe�cDee�jDate4n� cwTIa4egkWkljDatXDX8[�pM<ÁiIX > l¨�ÂTWVYnuTBVYXUVbh�cDTWa�]gatjÁÒhWat_ºXscuegnu]1n�WeghIk cwTIa1cwjue�iBcs|\i*a�h`mW��Z*adj,

, ~ ���-� <ÁiIeghWVYnA>W�`�ÂVbcwT�hW[ËjDa�cDmWjwhº�),_b[\evcwVzhW��if[^Vbh\cÂ[gi*adjuevcDVb[^hIX�e�jDa½[^hW_b|ËmfXÁaok<Z`|ËiWjD[�Ò�gjue��ËXt�oeghIk4hI[�c¢Z\|(cDTWaU[gi*adjuevcwVzhW��Xw|lXscDad���O�`Vbhfn�aUXÁmInuT[gi*adjuevcDVb[^hIXF[^h�cwTWaq%$Äd%�Ö^Ö �N$\��e�hIk<ÖgÖ �^�v�Ue�jDa³TIeghIkl_zatkegXw|`hInuTWjD[ghW[^mIXw_b|^�fVbc�VzX1i*[^XDXÁVzZW_za�cDTIevc��ÂTWath�e�#I[\evcwVzhW�i*[gVzh^c�aA9Wn�adiWcwVz[gh�[lndn�mIjDXt�lcwTIa�iWjw[lndatXDXÁ[^j��Ëe¸|BTIe¸yga�e�_bÒjDategkW|�Xw�ÂV{cunuTWatkqcw[B]gadjDhWat_G�E[lkla.cw[7Tfe�hIkl_zaEe�hqVzh\cwadjwÒjDmWilct�SUT`mIX�eÐ]gatjwhIad_���[lkla #I[\evcwVzhW��if[^Vbh\c�a�9Wn�atilcwVz[ghcwjue�i�nte�h�ZfaBa�9li*atn¥cDatk�[lndntegXwVb[^hIe�_z_z|&e�hIk�VYX�cDTWa7n�[^hlÒn�atjwh�[�pGcwTWa4ndmWjDjwath^cÂmIXwadjÂiIjw[^�gjue����

, ~ � B-� Í�e�_z_*<ÁifXÁVz�ghIeg_?>rlk#g×g�o#on�cw[�XÁadc�e #fe���cD[qXÁTI[v�cDTIevc�e #I[\evcDVbhW�Ei*[gVzh\c�a�9Wn�atilcwVz[gh�TIegXU[lntn�mWjDjwaok�, ~ �O7(� ÅÂa�cDmWjDh��SUTWVYXEjDegVzXwatX�e�hÑVbh\cwatjwaoXscDVbhI� � mWatXÁcwVz[gh �3<Á�ÏT`|�egjwacwTIaË]gadjDhWat_³�E[`kWa<e�hIk�mIXwadj4�E[lkla #I[\evcDVbhW��i*[gVzh\c�a�9`Òn�atilcwVz[ghfXUTIe�hIkW_baok�Xw_zVb�^T^cD_b|BklV{pratjwath\cw_z|$%�>

� (< ), � � �� : � �� � �# � �Í8[ghfXÁVYkladj��IjuXÁc,[gp*e�_z_We½cwjue�i.�ÂTWVznuT�VYX¢hW[�cO�gathWadjuevcDatk.egXcwTIa�jDatXwmW_{c½[�pOcwTIa�a�9laon�mlcDVb[^h}[�p$ez<Ácwjue�i}VzhIXscDjwmfn¥cwVz[ghO>W�SUTWVYX(VzX(jDad�^egjDkWatk}egX(eBiWjw[^ZIe�ZI_ba.adjDjw[^j�pr[gj1�ÂTWVYnuTqcDTWa[gi*adjuevcDVbhI��XÁ|lXÁcwad�L�Ëe�]^atXFhW[�iWjw[vy`VYXÁVz[gh�egiIe�jwcFprjw[^� cDTWai*[^XDXÁVzZWVz_bVbcs|E[�pGet<wnd[gjDa�klmW�Eia>I�³È�[v��adygatj³cDTWa½mfXÁa(iWjD[�Ò�gjue�� VbcDXwad_bp1�Ee¸|�Tfe¸yga�e�h\cwVYn�VziIevcDatkÑV{c7eghIkÑiWjw[vy`VYklatkpr[gjÂVbct�

�g�

Page 59: A Commentary on the Sixth Edition UNIX OS -- Lions

SUTWa �Ue¸| cwTWVYXÎiWjD[vy\VYXwVb[^hMVzX �ËegkWa eghIkMVz�EiW_za�Ò�Eadh\cDatk}VYX�cDTWa.XwmWZ&4saon¥c([�pOcwTIa.hWaA9`c(nuTIegilcwatjt��Ô�c½cwTWVYXXÁcDeg�gag�`cDTWa�iWjDVbhfn�VziIe�_FjDa � mWVzjwat�Eadh\cÂVzX�cD[z<wXwVb�^hIe�_ >�cDTIevccDTWa1cwjue�i�TIegXU[lntn�mWjDjwaokF�, ~ ,Z��� ÔÎZWmIX¢atjwjD[gj¢TIe^X¢[lndn�mIjwjDatk��ÂTWVb_zaUcwTIaUXw|lXscDad�ÓVzXVbhËmfXÁatj8�E[lklag�³�`adc�<wV?>1cD[�cwTIa�yve�_zmWaE<u�`�Á�1�Ux½�y>

l¨�IÖo��#4n�, ~ ,OB(� SUTWa <wZWjwaoe�]y> ndegmIXÁaoX�e ZWjue�hInuT3[gmlcÑ[�p�cwTWa

<wXw�ÂV{cunuTa>�Xscuevcwat�Eadh\cÂcw[E_zVbhWa��m(WÖ�( , ~ B B(� Ô�ife�jwc(prjD[g� cwTWaË[^hWaËXÁi*atndVzeg_³ndegXwa�hW[�cDatkF�ºcwTWacwjDate�cw�Eadh\cE[�p½Vz_z_bat�^e�_UVzhIXÁcwjDmIn¥cDVb[^hIX�VzX�cDTWa}Xweg��aevcUcwTIVzXÂ_zady^ad_�e^X�pr[gjÂZWmIX�adjDjw[^jDX�, ~ B �(�

, ~ 7�B(�, ~ 7 ~ �

, ~ � v(� Í$ps�¢cwTIa4n�[g�E�Eadh\cÂpr[^jÂ_bVzhWa��^�g�lÖ^�~�[gcwa1cDTIevc�ntegXwatX�< $ �(x½�lÌ8Åe> l¨if[v��adjUp¨egVb_ nUe�hfk

<¥� �(x½�WÌ$Åe>MlriIjw[^�gjue��E�Eatk(Vbh\cDadjDjwmWiWc nFegjwaOTIeghIkl_zatk1Z`|cDTWaf<wkladp¨e�mW_bc >EntegXwaYl¨_bVzhWa��\�`Öo�on¥�,O\Z�yQ(� SUTWVYX�jDadiWjDatXwadh\cuX�eËnde^XÁa4�ÂTIadjDa�[gi*adjuevcwVzhW�<Xw|lXsÒcwat�"e^XwXwVzXÁcDeghIn�a�VYX½jwa � mIVbjDatkBcw[Ba�9`cwathIk�cwTIa�mIXwadj�E[`kWa1XÁcDe^nu]7e�jDateI�

SUTWa egXDXÁat��ZW_zadjÑjw[^mlcwVzhWa <ÁZIe^nu]\mIia> lÁÖt�WÖ¸�mn�VzXmIXwatk3cw[¿jwaon�[ghfXscDjwmIn�c�cwTIa�XwV{cDmIevcDVb[^h cwTIe�cÑa�9`ÒVzXÁcwaok�Zfadpr[gjDa�a�9latndmlcwVz[gh}[gpGcDTWa4VzhIXscDjwmfn¥cwVz[gh�cDTIevcndegmIXÁaokËcDTWa1cwjue�i��<Á�^jw[v�e>sl�$IÖ�#^�on¢VYX�mIXwatkËcD[�kW[�cDTWa(e^n¥cDmIe�_¼a�9`cDadhlÒXÁVz[ghº�

SUTWa�iWjD[ln�atkWmWjwa@<ÁZIe^nu]`mWia>}VYX�hW[ghlÒÉcwjDVzy\VYe�_Ue�hfk�VbcDXnd[g�EiWjDadTWathIXÁVz[gh Vzh\y^[g_zygaoX�e�nte�jDa�prmW_½n�[ghfXÁVYkladjuevcDVb[^hÑ[gpyve�jDVz[gmIX1egXwi*atn¥cuX1[�p8cwTWap%8Ä`%�ÖgÖEe�junuTWV{cDatn�cwmWjDag�.��c4TIegXZ*adathÐ_badpÀc7pr[^j7cDTWa&Vzh\cwadjDatXÁcwaokÎjwaoegklatjËcw[ÑiWmWjuXÁmIaqiWjDV{ÒyvevcDad_z|g�Ô�XUhI[�cwaokËpr[^j8cDTWaS%$Äd%�Ö^Ö ��$\�W�Z<wZIegnu]`mWiO>4�Ëe¸|ËhW[�ceg_b�Ue¸|lXOXÁmIntn�atatkËZ*atnte�mIXwaÂcwTIa�iWjD[`ndatXDXÁ[^j$kl[`atX$hW[�c�Xwe¸y^aathW[gmW�^TBVzhlpr[^jw�ËevcDVb[^h7cD[EjwaoXÁ[^_by^a(eg_b_Fi*[^XDXÁVzZWVz_bVbcwVzatXt�,Z�F\(� Í�eg_b_3<ÁiIXwVb�^hIe�_ >"l�#g×^�m#4n}cD[ XÁadc�cwTWaÐegiWiWjD[giWjDV{ÒevcDa <wXwVb�^hIe�_ >W� l¨~�[gcwa�cDTIevc&cwTWVYX&XÁcDe�cwad�Eath^c�VzX[ghW_z|�jwaoegnuTWaok�prjD[g�ÓcwTI[^Xwa½nde^XÁaoXO[�pFcDTWaE<DXÁ�ÂVbcDnuTO>�ÂTWVYnuTBVzhIn�_zmIklaok�et<wZWjDate�]y>�XscuevcDad�Eadh\ct� n�,O\ ,Z��� <ÁVYXDXÁVz�o>EnuTWaonu]`XUVbp³er<wXwVb�^hIe�_ >�TIegX�ZfatadhqXwadh\c�cw[cwTWa�mfXÁatjÂiWjw[^�gjue����ladVbcwTIadj 4smIXÁc�hW[v�L[gj�e�c�XÁ[^��aategjw_zVbatjºcDVb�Ea�eghIk�TfegX¢hW[gc¢|^a�cOZ*adadhËe�cÁcwathIklaok�cD[2,O\ , ,-� <ÁifXÁVz�o>:ifatjÁpr[^jw�ËX cwTWa?e�iIiWjw[^iWjDVze�cwa¿e^n¥cwVz[ghfXd�

l¨��[�cDT <ÁVYXwXwVz�o>Ee�hIk <wiIXwVb�4>�egjwa4kWVzXDn�mIXDXwatk�Vzhqkla�ÒcDegVb_FVzh�cwTWa�hWaA9`c�nuTIe�ilcDadjo� n%,O\ ,OB(� ÅÂaonde�_Yn�mI_ze�cwa�cDTWa(iWjwVz[gjDVbcs|.pr[^j$cDTWa�n�mWjDjDadh\c8iWjD[�Òn�aoXwXt�

� (< 3 $ & � �� � )� � � �x�XwadjG�E[`kWa$iWjD[g�^jDeg�EX�mIXÁa�<scDjDegia>ÂVzhIXscDjwmfn¥cwVz[ghfXºegXGiIegjÁc[�p(cwTIa <wXw|lXscDad� nte�_z_?>��EaonuTIe�hWVYXw� cw[Ñnde�_z_�mWi*[ghÎcDTWa[gi*adjuevcDVbhI��Xw|lXscDad�Mpr[^j�egXDXÁVYXÁcDe�hfn�ag��`VzhIn�a�cDTWadjDa4e�jDa1�Ëe�h`|<i*[^XDXÁVzZW_zaf<ÁygatjDXwVz[ghIX >�[gpGcDTWa<scDjDegia>1VzhIXscDjwmfn¥cwVz[ghº�gcDTWa�cs|`i*a�[�pºe^XwXwVYXscue�hIndaÂjwa � mIatXÁcwatkndegh.Z*a�e�hfk.VYX¢adhfn�[lklatkEe^X¢iIe�jwc³[�pfcwTWas<Ácwjue�ia>(VzhIXscDjwmfn¥ÒcwVz[ghº�

%Oe�jue��Ea�cDadjuXO�ÂTWVYnuT7e�jDa�iIegjÁc�[�pºe4Xw|lXscDad�?ndeg_b_*�Ëe¸|Z*a(ifegXDXÁaok<prjD[g�?cDTWa1mIXwadjÂiWjD[g�^jDeg�3Vzh�klV �¼adjDadh\c��Ue¸|lX��� / � y`VYe.cwTWa4Xwifaon�VYe�_FjDad�^VzXÁcwatj�ju� � � egX�e Xwa�c�[�p4��[gjukWX7at��Z*atkWkWatkÐVzhÏcDTWa�iIjw[^�gjue��XÁcwjDVzhW��pr[g_z_b[v�ÂVzhW��cwTWaf<Ácwjue�ia>.VzhIXscDjwmfn¥cwVz[gh � � � egX4eqXwa�c.[�pÂ�8[^jDkIX�Vbh�cDTWa<iWjD[g�^jDeg�u' X�kWe�cDeqegjwaoeW�

l SUTWVYXÂVzXÂcwTWaf<wVbhIkWVbjDatn�c >�nde�_z_É� n��hIklVzjwaon¥c<ndeg_b_YXETIe¸y^a�e�TWVz�gTWatjË[vygatjwTWaoegk�cDTIe�hÎklVbÒjDatn¥cËXw|`XÁcwat� ndeg_b_YXt����hIklVzjwaon¥c<ndeg_b_YXEe�jDaBhIadatkWatkÑ�ÂTWadhcwTIa.iIegjDeg�Ea�cwatjDX½e�jDa�kWe�cDe�kladi*adhIkWadh\c1eghIk&nte�hWhI[�c½Z*akladcwadjD�EVbhIatk�evc�n�[^�EiWVb_za(cwVz�Eag���hIklVzjwaon¥c$nte�_z_zX,�Ëe¸|�Xw[g�Ea�cDVb�EatX¢Z*a�e¸yg[^VzkWatk4VbpIcDTWadjDaVYXq[ghI_b|L[ghWaÑkWevcueÏkladi*adhIkWadh\c�iIegjDeg�Ea�cwatjt���ÂTIVznuT VYXiIe^XwXwatk�y\VYe½jD�I�G��hEnuTW[`[^XwVbhI���ÂTWVYnuT.ife�jue��Ea�cDadjuX,XwTW[^mW_zkZ*a8iIe^XwXwatk4y\VYe�ju�W�¸cDTWaUXÁ|lXÁcwad� kWatXwVb�^hWadjuX�TIe¸y^a$iWjDatXwmW��Òe�ZI_b|4Z*adathE�gmWVYklatk�Z`|�cDTWadVzj³[v�Âh�a�9lifatjwVzadhfn�ag�^XÁVzhIn�aUcDTWaiIe�cÁcwatjwh�kl[`atXwhZ' cqXDevcDVzXÁpr| cwTWa�_Ye¸� [�p�_zate^Xsc�egXÁcw[ghIVzXwTlÒ�Eadh\ct�SUTWa3<¥Í >}n�[^��iIVb_zadj�kl[`atX4hI[�c��^Vby^a<XÁi*atndVzeg_$jDatn�[^��ÒhWVbcwVz[gh/cw[MXw|lXscDad� nte�_z_zXt�qZWmlcÏcDjwaoevcuX cwTWat� Vzh/cDTWaXDe��Ea���e¸|�e^XE[�cwTIadjËiWjD[ln�atkWmWjwaoXd� �ÏTWathÎcwTWa}_z[^e^kladjn�[^�EatX�cw[7jDatXw[g_zyga�mWhIkladcwadjD�EVbhIatk�jwadpradjDadhIndatXt�fVbc1XDevcDVzXÁÒ

�IaoX�cDTWatXwa��ÂV{cDTÑ_zVzZWjDegjw|�jD[gmlcDVbhIatX��ÂTWVYnuTÑn�[^h\cDe�Vzh�cDTWaegn�cwmIeg_j<scDjDegia>�VzhIXÁcwjDmIn¥cDVb[^hIXt�, ~ g ,%� SUTWa1adjDjw[^jUVbhIkWVzntevcw[^jDXUegjwa1jDatXwa�c�, ~ ga7(� SUTWaÂmIXwadjO�E[lklaÂVzhIXscDjwmfn¥cwVz[ghE�ÂTWVYnuTËndegmIXÁaok4cDTWacDjDegiqVYX�jDa�cwjDVzadygaok}e�hIk&e�_z_GZWmWc�cwTIa�_zategXÁc(XwVz�ghWV �WÒnte�h\cGXwV:91ZWVbcDX,e�jDa³�ËegXw]gaok½[ �,�,SUTWa$jDatXwmW_bcºVYX�mIXwatkcD[½Xwad_zatn�c,e�h�adh\cwjD|�prjD[g�LcDTWa8egjwjue¸|�[gpIXscDjwmIn�cwmWjDatXt�

<DXÁ|lXwadh\c >I�,SUTIa½egkIkljwaoXwX³[�pFcwTIa½Xwad_zatn¥cDatkËath\cwjD|.VYXXÁcw[^jwaok7Vzh <wnte�_z_bia>2, ~ g g%� SUTWa}< datjw[`adcwTa>BXÁ|lXÁcwad� nte�_z_¢VzX½cwTIa}<wVbhfklVbjDatn�c >Xw|lXscDad�Mnte�_z_ �`VzhB�ÂTWVYnuT<cDTWa(iIe�jue��Ea�cDadj�iIegXDXwatkËVYXe^n¥cDmIe�_z_b|�cwTWa½egkWkljDatXDX¢Vzh.cDTWa�mIXwadj$iWjw[^�gjue�� kWe�cDeXwiIe^n�a1[�pOeEXÁ|lXÁcwad�/nde�_z_FiIegjDeg��adcwatj�XÁa � mIadhIndag�~�[gcwa�cwTWa�XÁatiIe�juevcDa&mIXwatXB[�pt<sprm`�8[^jDka>�e�hIk <sprmWVbÒ��[gjuk1>W��SUTWaËklVYXscDVbhfn¥cwVz[gh�Z*a�cs��adadh&cwTWaoXÁa�VYX1mWhWVz��i*[gjwÒcDegh\c�[gh�cwTIa %$Äd%�Ö^Ö �N$^�W�ºZWmlc�VYX4�E[^XÁc�Vz�Eif[^jÁcue�h\c�[gh�ËegnuTWVzhWaoX¢�ÂV{cDT<XÁatiIe�juevcDa�<wV?>1eghIk}<wk1>1egkIkljwaoXwXOXwiIe^n�atX�

, ~ v Q-� <ÁV �(�\�^�N> XwVz��mW_YevcDatX}eÎndeg_b_�[^h�cDTWa�ygatjw| _ze^XscXw|lXscDad� ndeg_b_ l �g×\���on¥�f�ÂTWVznuT&jwaoXÁmW_bcDX½Vzh&e<ndeg_b_,[gh<whW[^Xw|lX >YlÉ��(^�^�mn��g�ÂTWVYnuTËjwaoXÁmI_{cuX³Vzh<e�hËadjDjD[gj³n�[^hlÒkWV{cDVb[^hB�ÂTWVYnuT��ÂVb_z_FmIXwmIe�_z_b|7Zfa(p¨evcue�_*pr[gjUcDTWa1mIXwadj�E[lkla�iWjD[g�^jDeg�

�lÖ

Page 60: A Commentary on the Sixth Edition UNIX OS -- Lions

, ~ v�,-�

, ~ v�g-� SUTWaËh`mW�.Zfatj4[�p�e�jD�gmI��ath\cDX�Xwifaon�V �Iatk�Vzh <wXw|^ÒXÁath\c >�VzXEcDTWaqegn�cwmIeg_Âh`mW��Z*adjËiWjD[vy`VzkWatkÑZ\|�cwTWamIXwadjqiWjD[g�^jDeg�E��atjt�1[^j}cwTIe�c&h`mW��Z*adj�_baoXwX&[ghWaV{p4[^hWa�egjw�^mW�Eadh\cBVYX7cwjue�hIXÁpradjDjwaokÎy`Vze jD�I�ÓSUTWae�jD�gmW�Eath^cuXÏe�jDa n�[^iWVbaok/prjw[^� cDTWa mIXwadj kIevcDe[gj�VbhfXscDjwmIn�cwVz[gh e�jDateqVzh\cw[�cwTWa �Iy^aBat_bat��ath\cËegjÁÒjDe¸| <Ám�� m e�jD�o>I� l�)Ijw[^� <DXÁ|lXwadh\c >rl �lTWadadc���×4n(V{c�8[^mW_Yk�Xwadat�5cwTIe�c}pr[gmWj&ad_zad�Eadh\cDX���[gmI_zkLTIe¸y^aZfatadh�XÁm2�<ndVbath^c½pr[gju<Ám egjwaoea{1| > ��VYX½cwTWVYX1e�h&eg_{Ò_b[v�Ue�hfn�a½pr[gjUprmlcDmWjwa�Vzh�#fe�cwVz[gh %�n%, ~O~ Q(� SUTWa8y¸eg_bmIa³[�p`cwTIa��IjuXsc¢e�jD�gmW�Eath^c�VYX,n�[giIVbaok1Vbh\cw[

<Ám�� m klVzjwiO>W�v�ÂTWVYnuT�Xwadad�ËXºcw[½prmWhIn�cwVz[gh��ËegVbhW_z|�egXeEn�[gh`y^adhWVzadh\c�cwad�Ei*[gjue�jD|7XÁcw[gjue��^a�_z[lndevcDVb[^h , ~O~ ��� <scDjDegiW_ >�VYX�ndeg_b_zatk��ÂVbcwT�cwTIa4egkWkljDatXDXU[�p,cwTIa4kla�ÒXÁVzjDatkqXw|lXscDad� jD[gmlcDVbhWa^�4~�[gcwa.cwTWaËn�[^�E��ath\c½Z*a�Ò�gVzhWhWVzhW�E[gh�_bVzhWa��m(^��(2, ~O~ v(� �ÏTWath7e�hEadjDjD[gjO[lndndmWjDXt��cDTWaE<Dn¥Ò�ZWVbc >1VzhEcwTWa½[g_YkiWjD[`ndatXDXÁ[^j<XscuevcDmIX7��[gjukÎVYX7Xwa�c}l XÁata&_zVbhIa����\��(4ne�hIk7cwTIa�adjDjw[^j�h`mW�.ZfatjÂVzXUjDa�cDmWjDhWatk�y`Vze�ju�W�� ( (� $ & � �� � )7 � � , ��� �� �� �SUTWa(prmW_z_ºXwa�cÂ[�p¢XÁ|lXÁcwat�:ndeg_b_YXU�Ëe¸|ËZfa�jDady`Vzad��atk<VzhBcwTWa�I_za <wXw|lXÁath\ct� nA>Ñ[gh �`TWata�c��g×W�(ZWmlc&�E[gjDa�jwat_batyve�h\cw_z|g�cDTWatXwa�egjwa&kWVzXDn�mIXDXwatkÏVzhÏprmW_z_�kla�cue�Vz_(Vzh��`aon¥cDVb[^hÐ�Á�<[gpcDTWa4x%8Ç��SUTWa�iWjD[`ndatklmIjwaoX��ÂTWVYnuT�TIeghIkl_za7cDTWa�XÁ|lXÁcwad� nte�_z_zXegjwa pr[^mWhIk �E[^XÁcw_z|"Vbh cDTWa �I_zatX <wXw|lXÁ_É� n�>W��XÁ|lXu�l� n1<d�Xw|lX #I� n�>.eghIk3<DXÁ|lX $I� nA>I�SU��[�Vz�Eif[^jÁcue�h\cr<scwjDVzy\VYe�_ >�iWjw[lndatklmWjDatX�e�jDa <Áh`mW_z_{ÒXw|lX >+l �m(^�g�on�e�hIk@<ÁhW[\XÁ|lX > lÉ��(^��$4n$�ÂTWVYnuT}e�jDa�pr[^mWhIk�VbhcDTWa �I_zaf<scwjue�iº� n�>W�� ( (' ��� � " �� ��& � � � 9SUTWVYX �I_za�n�[^h^cue�VzhIX�cwTIa�iWjw[lndatklmWjDatXBpr[^j �Iyga�Xw|lXscDad�nte�_z_zXt�$[gp(�ÂTWVYnuTÑcwTWjDada��ÂVz_b_�Z*aqn�[^hIXwVzklatjwaok�hW[v���Ue�hfkcs��[IlA<ÁjDa�9lV{c > eghIk <w��egV{c >onË�ÂVz_z_(Z*a�kla�pratjwjDatkÏcw[ÑcwTWahWaA9`c�nuTIe�ilcDadjo�SUTWa �fjDXÁcOiWjw[lndatklmWjDaÂVzh.cDTWVYX �I_zag�^eghIkEe�_YXÁ[(cDTWa �IjuXscXw|lXscDad�:nte�_z_��8a1TIe¸y^a½athIn�[^mWh\cwatjwaokF�lVzXY<wa�9latn�>W�� ( � �� � � , (� �SUTWVYXËXw|`XÁcwat� ndeg_b_É� �<Ö^Ög��nuTIe�hW�^atXEe�iWjD[`ndatXDX�a�9latndmlcÁÒVzhW��[ghWaEiWjD[g�^jDeg� Vbh\cw[}e�iWjD[ln�atXDX(a�9latndmlcwVzhW�}e�klV �*atjÁÒath^c³iIjw[^�gjue����G�`ata��`atn�cwVz[ghr<wÌ$¾½Ì�Ídl¨�Á� n >½[gpfcDTWa�x`%$Ç��SUTWVYX½VzX½cwTIa�_z[ghW�^atXÁc(e�hfk}[ghWa.[�p³cDTWa���[\Xsc(Vb�Ei*[gjwcDegh^cXw|lXscDad�:nte�_z_zXt�B QOBO7@� <Áhfe��EadV > l¨�^�WÖ�(onfl¨�ÂTWVznuT VzX�klVYXwndmIXDXÁaokÎVbhLkla�ÒcDegVb_1Vzh Í8TIegilcwatj�Öo×on7n�[gh`y^adjwcDX7cwTWa �IjuXsc}e�jD�gmlÒ�Eadh\c`lr�ÂTIVznuT<VYX$e4if[^Vbh\cwatj³cD[.e4nuTIegjDe^n¥cDadj³XÁcwjDVbhW�kla �fhWVbhI��cwTWa<hfe��Ea<[�pUcDTWa<hWat�3iIjw[^�gjue��pn½Vbh\cw[

egh <ÁVzhW[lkla�><jDa�pradjDadhfn�ag��l�<wVbhW[lklaoX >7e�jDa4atXDXÁath\cwVYe�_ife�jwcDXU[�p,cwTIa �I_ba1jDa�pratjwathIn�VzhW�E�EatnuTIeghWVzXw��� n%B QOB ~ � ��egV{cUVbpºcwTIa(h`mW�.ZfatjU[�p<wa�9latn�>gX�n�mWjDjwath\cw_z|�mIhlÒkWadj$�Ue¸|4VYXOcD[\[�_zegjw�^aMlÉ�`ada�cwTWa(n�[g�E�Eadh\c³[^hË_bVzhWa

#^�WÖ^Ög� n�B Qa7�Q-� <Á�^a�cwZI_b] l¨~M!(Ä½Ì ]dn >7jDatXwmW_bcDX1Vzh�cDTWaËe�_z_b[lntevcwVz[gh[gp³e7�lÖ¸��Z`|\cwa�ZWm��¼adj�prjD[g�/cwTIa4if[`[^_º[�pOZWm��*atjDXt�SUTIVzX}ZIm��*atjqVYX}mIXwatk�cwat��i*[gjue�jDVz_b|ÏcD[ÐXscD[gjDa�Vbhnd[gjDag�$cwTIe�c<Vbhlpr[^jw�Ëe�cwVz[gh �ÂTIVznuT VzX7n�mWjDjwath\cw_z|�VbhcDTWaqmIXwadjBkWevcue�e�jDateW�Ue�hfkÎ�ÂTWVznuTÎVYX<hWatatklaokÑcw[XÁcDegjÁc�cwTIa(hIad� iIjw[^�gjue����G~�[�cwa(cDTIevcUcwTIa1Xwatnd[ghIkegjw�^mW�Eadh\cUVbh <Ámº� m egjw�4>�VYXÂe�i*[gVzh\cwatjUcw[�cwTWVYXUVzhlÒpr[^jw�Ëe�cwVz[gh B Qa7��'� <we^ndn�aoXwX >.jwadcwmWjDhIX�eEhW[^hlÒ dadjD[�jwaoXÁmW_bc�Vbp,cDTWa �I_zaVYX4hI[�c�aA9`aon�mlcue�ZW_zag�}SUTWaBXÁaon�[ghfk�n�[ghfklV{cDVb[^h�a�9`Òeg�EVbhWaoX��ÂTWa�cDTWadj�cDTWa �I_ba�VYX}eÑkWVbjDatn�cw[gjD|Ï[gj}eXwi*atn�VYe�_GnuTIe�juegn�cwadj �I_zag�l¨��c��8[^mW_YkBXwadat�McwTfevc�Z`|�Ëeg]\VzhW��cwTIVzX�cDatXÁc<ate�jD_zVbatjt�³a^� �f� 4smIXsc7e�pÀcwatjË_bVzhWa

#^�m#^�W�*cwTWaEa �ËndVbathIn�|&[�p$cDTWaËn�[lklaËn�[^mW_YkqZ*a�Vz��ÒiIjw[vy^atkF� n�B Q g ,%� Í8[gi`|ÏcDTWa�XÁadcq[�pËe�jD�gmW�Eath^cuX�prjw[^� cDTWa�mIXwadjXwiIe^n�a1Vbh\cD[.cDTWa1cwat�Eif[^jDegjw|<ZIm��*atj�B QOvO7(� ��p$cDTWa<e�jD�gmW�Eath^c�XÁcwjDVbhW��VYX(cw[`[�_zegjw�^a�cD[ �Ic4VbhcDTWa�ZWm��¼adjo�lcue�]ga�eghBatjwjD[gjUa�9lVbc�B Q ~ �'� ��pFcwTWa½h`mW��Z*adj�[�pºnuTIegjDe^n¥cDadjuXOVbh<cwTWa(e�jD�gmW�Eadh\cXÁcwjDVzhW�EVzXÂ[lkWk��WegkWk�e�h�a�9`cDjDeI�lh\mI_b_ºnuTfe�juegn¥cDadj,B Q�� Q-� SUTWa �IjuXscUpr[^mWj���[gjukWXMl�(EZ`|\cwatX n8[�p,cwTWa�hfe��Eatk

�f_ba7egjwaËjDate^k�Vbh\cw[ <wm�� m e�jD�o>I�BSUTWa<Vzh\cwatjwiWjDa�cuevÒcDVb[^h�[�p�cwTWaoXÁaB�8[^jDkWX�VzX.VzhIklVYndevcDatk�Vzh�cDTWa�nd[g��Ò�Eath^c½Zfat�gVzhWhWVzhW�<[gh}_zVzhWai#g�`�v�Ee�hfkF�I�E[gjDa1prmW_z_b|^�Vzh�cwTWa4Xwatn�cwVz[gh <wÔ�� !(x½SSl ]dn >E[�p,cwTWa�x`%$Ç��~�[�cDa<cwTIaBXwa�cÁcDVbhI�q[�ps<Ámº� m ZfegXwa�>W�d<Ámº� m nd[gmWh\c >W�<wm�� m [ �FXÁadc >�eghIk"<Ám�� m XÁat� #I�4>�iWjwatiIe�juevcD[gjD|�cw[cDTWa�jDategkB[gi*adjuevcDVb[^h

B Q���g%� ��pUcwTWa7cwa�9`cEXÁat�g�Eadh\c4VYX�hW[gc4cw[&ZfaBiWjw[gcwaon¥cwaokF�e^kWk�cwTIaËcwaA9\c�e�jDate�XÁV� daEcD[�cwTWaBkWevcue}e�jDate}XwV( tag�eghIk�XÁadcUcwTWa1pr[^jw�EadjUcD[ dadjD[2B��FQ�g%� Í8TWatnu]Î�ÂTWadcwTWatj7cDTWa�iWjw[^�gjue�� TIegX�e=<ÁiWmWjDa�>cDa�9`c�egjwaoeW��ZWmlcBcwTWa�iWjw[^�gjue�� �f_baqTfegX7eg_bjDate^kl|Z*adath.[^ifathWatk�Z`|4XÁ[^��a�[�cDTWadj¢iWjD[g�^jDeg�Le^X¢e½kWe�cDe

�f_ba^�O��p¢Xw[I�`cue�]ga(cDTWa�adjDjw[^jUa�9lV{c,B��y, ~ � �ÏTWadh&cwTWVYX(if[^Vbh\c1VzX(jDate^nuTWatkF�fcwTIa�klaon�VYXÁVz[ghqcw[aA9latn�mWcwa�cwTWa�hWad� iWjw[^�gjue�� VzXBVzjwjDady^[`nte�ZW_zaqVÉ� a^�cDTWadjDa<VYX4hW[}_z[ghI�gadj4cwTWa<[^iWi*[gjwcwmWhWVbcs|�cw[qjDa�cDmWjwhcD[�cwTIa�[gjDVb�^Vbhfe�_liWjD[g�^jDeg� �ÂV{cDT<e�hËadjDjD[gj�#fe��4Xwa�c,B��y,��-� <ÁaA9`ife�hIk1>½TWatjwaÂegn�cwmIeg_b_z|4Vz�EiW_bVzatX$e1�Ee�4s[gjOn�[^hlÒcDjDe^n¥cDVb[^h��\cw[.cwTWa+<Ái*adj�iWjD[`ndatXDX8kIevcDeo>�egjwaoe4[ghI_b| B��FB Q-� < 9We�_z_z[`n�>�cDeg]gatX7nde�jDaq[gp�eg_b_z[lnde�cwVzhW� lrVbp4hWaon�atXÁÒXDe�jD|1n�e�hIkB_bVzhW]`VzhW�Ecw[�cwTIa1cwa�9`c�egjwaoe

�^�

Page 61: A Commentary on the Sixth Edition UNIX OS -- Lions

B��ygO\(� SUTWa�Vzhlpr[gjD�ËevcDVb[^hBXÁcw[gjDatkBVzhBcDTWa�ZWm��¼adj½e�jDate.VzXn�[^iWVbaok7Vzh\cw[�cwTIa4Xscuegnu]<Vzh�cwTWa�mIXwadj�kIevcDeEegjwaoe.[gpcwTWa1hWat��iIjw[^�gjue��

B��F\ v(� SUTWa�_z[lnde�cwVz[ghIX$VbhEcDTWa�]^adjDhWad_*Xscuegnu]��ÂTIVznuT<nd[ghlÒcDegVbh�nd[giWVzatXG[�pIcwTWa�<ÁiWjDady`Vz[gmIX >Âyve�_zmWaoXº[gpWcwTWa�jDad��ÒVzXÁcwatjDX�VzhBmfXÁatj��E[lkla1e�jDa(Xwa�cUcD[ tadjD[I�`a�9Wn�atilcUpr[gjjD�I�³cDTWa&XÁcDegnu] if[^Vbh\cwatjt���ÂTWVYnuTÎ��e^XËXÁadcËe�c<_bVzhWa#WÖ¸�g�&

B�� �O7@� Ľatn�jDad�Eath^c�cwTWa<jDa�pratjwathIn�a<nd[gmWh\c4pr[^j4cDTWaP<ÁVzhlÒ[lkla�>EXÁcwjDmIn¥cDmWjwa�B�� ��g-� ÅÂat_baoegXwa½cDTWa1cwat�Eif[^jDegjw|ËZWm��*atj�B�� � v(� ��e�]ga7mWi e�h`|�[�cDTWadj�iWjD[`ndatXDX��Ue�VbcwVzhW��e�c�_bVzhWa

#g�o#\�`�� ( � � �8��� � ,8,8(8( �Ô nte�_z_Â[gh"<Áa�9laonA>�VzX�prjDa � mWath^cD_b|ÑiWjDatn�aoklatkÑZ`| e�ndeg_b_[^h <spr[^jw]y>I�(Ç}[\Xsc([�p³cDTWa��8[^jw]�pr[gj+<spr[^jw]y>ËVYX1kl[ghIa.Z`|<whWad�ÂiWjD[lnA>@lsÖ�(\���4n¥�OZWmlcËZ*a�pr[^jwaBcwTWa�_YevcwcwadjEVYXEnde�_z_zatkF�<Ápr[gjD]F>��Ëe�]^atXEe�h Vbhfkladi*adhIkWadh\c7XÁaoe�junuT�pr[^j<e�Xw_z[�cËVbhcDTWa <wiWjD[`n�>4e�jDjue¸|g�^eghIk<jDad�Eat��Z*adjuX³cDTWa½iI_ze^n�a1egX�<Áif�m>lk#m#^�\��n��

<ÁhIad�ÂiWjD[lnA>Ïe�_YXw[ÐXÁaoe�junuTWatX <wiWjD[`n�> ZWmlc�VzhIklatifathlÒklath\cw_z|g� %³jDatXwmW�Ëe�ZI_b| Vbc e�_z��e¸|lX�_z[`ntevcDatX�cwTIaÐXweg��aat��iWcs|�Xw_z[�c.e^Xb<spr[^jw]y>I�GXwVbhInda7Vbc�kl[`aoX4hW[gc�jwatif[^jÁc�cwTWayve�_zmWa�ZIe^nu]*� lr�ÏT`|ÐVYX�cwTWatjwa�hW[Ïn�[^hlprmIXwVb[^h [gh cwTWVYXi*[gVzh\c %�nB BOB�g-� )W[^jFcwTIa³hWad��iWjD[ln�atXDXt�a<spr[^jw]y>�jDa�cwmIjwhIXFcwTWa³yveg_bmWa[�pFcDTWa�iIegjwath\c�' X$iWjD[ln�aoXwX$Vzklath\cwV �fnde�cwVz[gh��`e�hIk7VbhIV{ÒcwVYe�_zVzXwatXUyvegjwVz[gmIXUe^ndn�[^mWh\cwVzhW��iIe�jue��Ea�cDadjuX�B Ba7 7@� )W[^jEcwTWa}ife�jDadh\cËiWjw[lndatXDXd�*<Ápr[gjD]y>&jDa�cDmWjwhfX�cwTWayve�_zmWaÂ[�pFcDTWa�nuTWVz_zkZ' X$iWjw[lndatXDXOVzkWadh\cwV �fnde�cwVz[gh��`e�hfk

6��Z�"��6 cwTIa½mIXwadjU�E[lkla(iWjw[^�gjue�� n�[^mWh\cwadj�Z`|Ë[ghWa�8[^jDk��~�[�cwa(cDTIevcUcwTIa(yveg_bmWaoX �IhIeg_b_z|<jDa�cwmIjwhWaokËcD[Ee}<¥Í >�iWjD[�Ò�^jDeg�¿e�jDa�XÁ_zVz�gT\cw_z|.klV �¼adjDadh\c³prjD[g�ÓcwTWa�egZf[vy^ag�,ÅÂa�pratj³cw[cDTWa4XÁaon¥cDVb[^h+)�!(Å�Ãslr�w� n�[�pºcDTWa4x%8Ç��� ( � ��� � � � � ,8, � 3 �SUTWVYX�iIjw[ln�aoklmWjDa�Vb�EiW_zad�Eath^cuX½Xw|lXscDad�"nde�_z_�7Öv���ÂTWVYnuTVYX<klaoXwndjwVzZfaok Vbh cwTIa&�`atn�cwVz[gh�<w�UÅ�Ì8Ô�à l¨�Á� n >�[�p(cwTWax`%$Ç��FSUTWaËn�[^�E��ath\c1e�c½cDTWaETWate^kq[�p8cwTWaEiWjD[ln�aoklmWjDaTIe^X&nd[ghlprmIXwatk �E[^jwa�cDTIe�h [^hWa�jDate^kladj ��nd_baoe�jD_b| cwTWaVYkladh\cDV �Iatjz<ÁZWjDateg]y>qVYXEmIXÁaok Vzh�<uÍ >�iWjD[g�gjue��ËX+lr_zate¸y^aegh}adhInd_b[\XÁVzhW�ËiWjD[g�^jDeg�:_z[\[^iOnUVzh&e�h}ath\cwVzjwat_b|�klV �¼adjDadh\c�Ue¸|�prjD[g� cDTIevc8Vbh\cwathIklaokETWadjDaSl¨nuTIeghW�gaUcDTWa�XwV( taÂ[�p*cwTWaiWjD[g�^jDeg�?kWevcueËe�jDateon��

<wXwZWjDateg]F>qTIegXEn�_zategj.XwVb�EVz_zegjwVbcwVzatX��ÂVbcwT cwTWa�iWjD[ln�a�ÒklmIjwau<Á�^jw[v�e> l $fÖ�#g�4n8ZWmlc�mWhW_zVz]ga1cwTIa�_ze�cÁcwatjt�lVbc�VYXÂ[ghW_z|Vzh`yg[g]^atkËaA9liW_bVYn�Vbcw_z|7eghIk7�Ëe¸|ËVzh�p¨egn¥c�nte�mIXwa(e�n�[^h\cwjuegn¥ÒcDVb[^h�[gp$cDTWa<kWevcue�e�jDate�egX1��ad_z_³egX�e�h�a�9liIeghIXwVb[^h@l¨kWa�Òi*adhIkWVbhW�Ë[^h7cDTWa�hWat�LklaoXÁVzjDatk�XÁV� da�n¥�

B BOvO7(� Í�e�_Yn�mW_YevcDa(cwTWa�hWat�LXwV� da1pr[gjUcDTWa�kWe�cDeEe�jDateul¨Vbh#\�.�8[^jDk7ZW_b[lnu]lX n�

B B ~ �'� Í8TWatnu]�cwTfevc�cwTWaBhWad�MXwV( ta7VYX.nd[ghIXwVYXscDadh\c.�ÂVbcwTcDTWa��Ead�E[gjD|7Xwad�^��ath\cDevcDVb[^h�nd[ghIXÁcwjue�Vzh\cDX�B B ~ v-� SUTWaEe�jDateËVYX1XÁTWjDVzhW]`VbhW�f��Í8[gi`|�cwTWaEXscuegnu]}e�jDatekW[v�ÂhÐVbh\cD[�cwTIaqpr[gjD�Eadj�kWevcue e�jDateI�3Í�e�_z_E<wa�9`Òife�hIk1>.cD[EcwjDVb�/[ �}cwTIa�a�9Wn�aoXwX�B BO\ v-� Í�e�_z_ <wa�9liIe�hfk1>Îcw[�Vbhfn�jDategXwa�cDTWa�cD[�cDeg_�egjwaoeW�Í8[^i`|1cwTWaUXscuegnu]�e�jDate�mWi�Vbh\cw[½cwTIa8hWat��iIegjÁco��e�hIknd_baoe�jUcDTWa�e�jDate^X��ÂTWVznuT���adjDa(pr[gjD��atjw_z|<[lndndmWiWVzatkZ`|7cwTWa4XÁcDe^nu]*�SUTWa�pr[g_z_b[v�ÂVzhW�ÑiWjw[lndatklmWjDatX��ÂTWVYnuT�egjwa�e�_YXw[Ñn�[^hlÒcDegVbhIatkBVbh <wXw|lXÁ_É� nA>�e�jDa1kWatXDn�jDVbZ*atkBVbh&Í8TIegilcwatj�Ö�#����=�� �$N �OL������'� 3�� �$N �7L���F0�'�=�� �$N �OL��8, � �

� (< �� ��� � " �� � � & � (< � 9 ��� ��& � ,< � 9<wXw|lXD�W� n�>�e�hIk <wXw|`X #W� nA>�egjwa&�EegVbhI_b|Ïn�[^hIn�atjwhIatkÏ�ÂVbcwTcwTIa �I_za&Xw|`XÁcwat�5e�hIkÎVzhWiWmlc��¸[^mlcwiWmWct��eghIkÎcwTIad| TIe¸ygaZ*adadh�jDad_zad�^e�cwaok4cD[��latn¥cDVb[^h�)I[gmWjO[gpIcDTWaÂ[gi*adjuevcDVbhW�1Xw|`XÁÒcwat�/Xw[gmWjun�a1n�[lkla^�� (< ��8� ��� � " �� ��& � 3= � 9Ô�_z_1cwTIa�iWjD[ln�aoklmWjDatX�Vbh cwTWVYX �I_za�Vb�EiW_zad�Eadh\cqXw|`XÁcwat�ndeg_b_YXt�MSUTWa�pr[g_z_b[v�ÂVzhW� iIjw[ln�aoklmWjDatX�e�jDa�kWatXDn�jDVbZ*atk VbhÍ8TIegilcwatj�Ö�# �

��� � ,!�7L�:8,���� � � ��� �7L0:�L��'�

SUTWaÏpr[^_b_z[v�ÂVbhI�LiIjw[ln�aoklmWjDatX�egjwaÏXÁcwjue�Vz�gT\cÁpr[^jw�Ue�juke�hfkÏTIe¸yga&Zfatadh _za�pÀc�pr[gjBcwTIa�eg��mIXwad�Eadh\c�e�hIkÏaoklV �WÒnde�cwVz[gh�[�pGcwTWa�jDate^kladj �,�= N � 3 �$N �OL��-,$L'�4� ) � ���7L�� (0:'�, N�� 8= �7L����0�'� ,>= N , � � �OL���F��'�� N�� 8= �7L����$('� ,>= N # � � �OL�� (��'���= N$�%� � �7L���L � � �8� ��= �7L�� � L'�,�= N$�%� � �7L�� ���'� N�� 8= � �7L0:���:'���= N , � � �7L���:��'� #���0+ � � �OL�:�:�F'�

SUTWaBpr[g_z_b[v�ÂVzhW�&iIjw[ln�aoklmWjDatX.�ÂTWVYnuTÑe�jDaBnd[ghIndadjDhWatk�ÂVbcwT �I_za4XÁ|lXÁcwad�ËXt�We�jDa(kWatXDn�jDVbZ*atk�_Yevcwatj ���� � �Q� � �7L$�8,$�'� � 4 #3 � �OL���F��'�� 4>� � �!�7L���L$('� �"��>� N = �7L�� � � �� 4J80�&�7L���:0�'�

��#

Page 62: A Commentary on the Sixth Edition UNIX OS -- Lions

� � �E� �N� � � � � � ����� � � �+* ��

SUTWa�iWjwVzhIndVbiIeg_fnd[ghIndadjDh�[gp¼cwTWVYX8nuTfe�ilcDadj³VYXOcDTWa½nd[gh\cwath^c[gp�cwTWa �I_za@<DXÁVz�I� nA>I�O�ÂTWVYnuT e�iWi*ategjDX.[ghÎ�`TWata�cDXY#^×}cw[$`�l�&SUTWVYX �I_za7Vzh^cDjw[lklmfn�atX.e}p¨e^n�Vz_bVbcs|�pr[gjEn�[g�E�.mWhWVYndevÒcDVb[^hÏZfadcs�8atadhÏiWjD[ln�atXDXwatXt�Ð��hÏiIe�jwcwVYn�mI_zegj<V{cBiWjw[vy`VYklatXpr[^j7cDTWa�nd[gmWjuXÁa&[�p4[ghIa <ÁmfXÁatj7�E[lkla�>�iIjw[ln�aoXwX<cw[ÑZfaVzh\cwadjDjDmWilcwaokF�$klVzygatjÁcDatk [gj.cwadjD�EVbhfevcwaok�Z`|�cwTIa�e^n¥cDVb[^h[gp½e�hW[gcwTWatjEiWjw[lndatXDX�[^jEe^X4cDTWa�jwaoXÁmI_{cE[�p1e�h atjwjD[gj.[gj[^ifatjDe�cw[gjÂe^n¥cwVz[ghº���h<cDTWVYX�kWVzXDn�mIXDXwVb[^hËcwTWa½cwatjw� <DXÁ[gpÀcs��egjwaÂVzh\cwadjDjDmWilc >TIe^X,ZfatadhEklad_zVbZ*adjuevcDad_z|�mIXwatk4Vzh�iW_ze^n�a�[�pfcwTWa�cwatjw� <DXÁVz��ÒhIeg_?>I�³SUTWVYXÂ_ze�cÁcDadj�TIe^XÂZ*adadh�aoXwnuTWat�8aok7Z*atnte�mIXwa�Vbc�TIegX[^ZlcDegVbhWaokÏn�[^hWhW[�cuevcDVb[^hIXËVzhÎcwTWa&x½~���¾ ��Vz_zVbatmÐ�ÂTWVYnuTegjwa1juevcwTIadjÂklV �*atjwath^cÂprjD[g�:cwTWa�mfXweg�ga([�p¢[gjuklVbhfe�jD|<̳hlÒ�^_bVYXÁTº�x�~���¾¿jDatnd[g�ghIVzXwatX��g�fl�<w~(�`�Á�M>W�f_bVzhWa��IÖgÖ�#on�klV �*atjÁÒath^c�cs|`ifaoX�[�p(Xw[�pÀcs�Ue�jDa<Vzh\cwadjDjDmWilcDXt�³[gp��ÂTWVYnuTIl¨e^X.cwTWajDate^kladj.�Ee¸|�kWVzXDn�[vy^adj4pr[^j.TIVb�ËXwad_bp�Z`|�ifatjwmIXDe�_�[�p�cwTWacDTWa��`aon¥cDVb[^h <D�`�Á�1~½Ô�Æ&l¨�Á� n >q[�pUcDTWaBx`%$Ç n(cDTWVzjÁcDadadhTIe¸y^a�XÁcDeghIkWegjDkÑhIe��EaoX�eghIkÎegXDXÁ[lndVze�cwVz[ghIXt� ��h\cwatjwjDmWilccs|`i*a ����VYXÂVzh^cDadjDiWjDa�cwaokBe^XY<ÁhW[�Vzh^cDadjDjwmIilc >I��ÏVbcwTWVzh<cDTWaE<wifatj$iWjD[ln�atXDX³kWe�cDe4egjwaoem>1[gp¼aoegnuTËiWjD[�ÒndatXDX�VzXqeghLegjwjue¸|g�+<Ámº� m XwVb�^hIe�_ >W�1[gpt<w~(�`�Á�M>Î��[gjukWXd�Ì8egnuT���[gjuk�n�[gjDjDatXwif[^hIkWX�cD[�e�klV �¼adjDadh\cEXÁ[gpÀcs��egjwa<VzhlÒcDadjDjwmWiWc�cs|`i*aqe�hIkÎkla��IhWaoX�cwTWaqe^n¥cwVz[gh �ÂTWVYnuTÏXÁTW[^mW_YkZ*aÂcDeg]gath.Vbp¼cwTWa�iIjw[ln�aoXwX¢athIn�[^mWh\cwatjDX,cDTIevc³]`VzhIkE[�pFXÁ[gpÀcÁÒ�Ue�jDa½Vzh\cwatjwjDmWilc �m XwVz�ghIeg_ { hy| �ÂTWadh�Vzh\cwadjDjDmWilc ��h�[lntn�mWjuX tadjD[ cwTWa�iIjw[ln�aoXwX��ÂVz_b_�cwadjD�EVbhfevcwa1VbcDXwad_bp [lkWkBhW[ghWÒ tadjD[ cwTWa4Xw[�pÀcs�Ue�jDa(Vbh\cwatjwjDmWilcÂVYXUVb�^hW[gjDatk atygadh�hW[^hlÒ tadjD[ cwTWa�yveg_bmWa1VYXUcDeg]gath�e^X�cwTWa4e^kWkljDatXDXVbh�mIXwadj�XwiIe^n�a([�pOe.iIjw[ln�aoklmWjDa1�ÂTWVznuT�ÂTWVYnuT�XwTW[gmI_zk�Z*a�a�9latndmlcwaokpr[gjwcwT`�ÂVbcwT����h\cwatjwjDmWilc�cs|\i*a ��×=l�<u�`�Á�1Ã1�sƺÆ�>on�VYX&aoXÁi*atndVzeg_b_z|klVYXÁcwVzhW�gmWVYXwTWatk(Z*atndegmIXwa³x�~���¾ÑadhIXwmWjDatX*cDTIevc<wm�� m XÁVz�ghIeg_ { ×N| >jDad�Ëe�VzhIX dadjD[}mWh\cwVz_8cwTWaBygadjD|&athIk�[gpÂeqiWjw[lndatXDXA' X�a�9`ÒVYXscDadhIndag��Xw[7cDTIevc�Vbp�eBiWjD[`ndatXDX�VYX1ady^adj(Vbh\cDadjDjwmWiWcwatkqpr[gjcDTIevc�jDate^XÁ[^h��`V{c��ÂVz_b_Ge�_z��e¸|lX$cwadjD�EVbhfevcwa�VbcDXwad_bps�

� , �� �����#" �1"�� �#"����

Ì8egnuT7iIjw[ln�aoXwXÂnte�h�XÁadcÂcwTWa4nd[gh\cwath\cDXU[�pGcwTWa4egjwjue¸|<wm�� m XÁVz�ghIeg_ { | >*l¨�ÂV{cDT�cwTIa$a�9WndadilcDVb[^h�[�pR<Ámº� m XwVb�^hIe�_ { ×N| >e^X�4smIXÁcËhW[�cDatkan�VzhÑe�h\cDVzndVbiIe�cwVz[gh�[gp�prmlcDmWjwa�Vzh^cDadjDjwmIilcDXXw[�cwTIe�c4cwTIa7e�iWiIjw[^iWjwVYevcDaËegn¥cDVb[^h�VzX1cue�]^adh���SUTWaËmIXwadjiWjD[g�^jDeg�E��atj½kl[`aoX�cDTWVzX1y`VYeËcDTWar<wXwVb�^hIe�_ ><Xw|`XÁcwat� ndeg_b_l XÁata+<u�`�Á�1~�Ô½Æ lr�w� n >E[�p,cwTIa4x%$Çtn¥�SUT`mIX1Vbp8pr[^j�a�9We��EiW_za�cwTWaEiWjD[g�^jDeg���Eatj½�ÂVYXÁTIatX(cw[Vz�ghW[^jwa(XÁ[gpÀcs��egjwa�Vbh\cwatjwjDmWilcuX$[gp�cs|`ifa ���El¨�ÂTWVYnuT7jDatXwmW_{cVbpfcDTWa�mIXwadjOTIV{cuX¢cwTWaE<wklat_badcwa�>(]^ad|4[^h�TIVzX¢cDadjD�EVbhIeg_ n���TWa

XwTW[gmW_Yk�XÁadc <Ámº� m XwVb�^hIe�_ { ��| >7cD[q[ghIaËZ\|�a�9laon�mlcDVbhW��cDTWaXw|`XÁcwat�:ndeg_b_<wXwVz�ghIeg_�lÉ�l�zÖ�n% >

prjD[g�MTWVYXs<¥Í >�iWjD[g�^jDeg���� ,< )( )7 �0 � �#"����Ô�h Vzh^cDadjDjwmIilc�VYX}<wnte�mIXwatk1>qpr[gjËe�iWjw[lndatXDX � mWVbcwa}XwVb��ÒiW_z|ÑZ`|ÏXwa�cÁcDVbhI��cwTWa�yve�_zmWaq[�pb<wi XÁVz�o> l¨�m#^�m#4n�VbhÏcDTWaiWjD[ln�atXDX�' XE<ÁiWjD[lnA><ath\cwjD|g�*cw[BcwTWa�cs|`i*a.h`mW�.Zfatj1egiWiWjD[�ÒiWjDVze�cwa�cw[BcwTWa�Vbh\cDadjDjwmWiWc�lrVÉ� ag�4e<yveg_bmWa�VzhqcwTIa.jue�hW�^a7Öcw[r<D~½�`�Á�M> �*Ö�n��

<Ái XwVz�o>�VzX½e�_z��e¸|lXÂklVzjDatn¥cD_b|�egntn�atXDXwVbZW_zag�Iadygath��ÂTWadhcwTIa�e �¼atn�cwatk�iWjD[ln�aoXwXOeghIkEV{cuXS<Ái*adj$iWjw[lndatXDXOkWevcue�e�jDatem>TIe¸y^a�Z*adath XÁ�Ue�iWi*atkL[^mlc}cw[ÏklVYXÁ]¼� !½Z`y`Vz[gmIXw_b|ÐcwTWVYX�EatnuTIeghWVYXÁ� [ghW_z|Îe�_z_b[v��X7[ghWaqVzh\cwatjwjDmWilc�ifatj7iWjD[ln�atXDXcw[7Zfa�[gmlcuXscue�hIkWVbhW�Bevc(egh`|B[^hWa�cwVz�Eag�(SUTWa�[^mlcDXÁcDeghIk`ÒVzhW��Vzh\cwatjwjDmWilcË�ÂVz_b_�eg_b�Ue¸|lX�Z*a�cwTWa}�E[^XÁcEjwaon�adh\cË[ghIag�mWhW_zatXDXÂ[^hWa�[�p¢cwTIa4Vbh\cDadjDjwmWiWcDXÂ�UegXU[gp,cs|`i*a �.×W�W�ÂTIVznuTe�_z�Ue¸|`X8iWjDadyve�Vz_YXd�� ,< ), ��� � �SUTWa(a �¼atn�cU[gp,e�XÁ[gpÀcs��egjwa�Vbh\cwatjwjDmWilcÂhWatygatj$cue�]gaoX�iW_ze^n�aVz���EaoklVze�cwat_b|^�&��cE�Ee¸|�[lndndmWj�e�pÀcwatj�[ghI_b|�Xw[g�EaBXw_bVz�gT\cklat_ze¸|�Vbp½cDTWa}e �¼atn�cwatkÑiWjD[ln�atXDX�VzXËndmWjDjwath^cD_b| jwmWhIhWVbhI�I�[gj$if[\XwXwVbZI_b|�evpÀcwatj8e�nd[ghIXwVzkWadjue�ZW_zaÂklad_Ye¸|.Vbp¼cwTWa½e �¼atn¥cDatkiWjD[ln�atXDX�VzX�XÁmIXwi*adhIklaokBeghIk�TIegXUZ*adath}XÁ�Ue�iWi*atkB[gmWct�SUTWa7e^n¥cwVz[gh�klVYn¥cuevcDatk�Z`|qcDTWa<Vzh^cDadjDjwmIilc�VYX4e�_z��e¸|lXVzh�#IVYn¥cwaok�[gh4cwTWa�e �¼atn¥cDatk1iWjD[ln�aoXwXºZ\| � ��6�2F5 � �veghIk1TWadhfn�andeghB[^hW_z|<[lndn�mIjÂ�ÂTWadh�cwTIa4e �¼atn¥cDatkBiWjD[`ndatXDXUVzXÂe^n¥cDVby^ag��ÏTWadjDa�cwTWa�a �¼atn�c�VYXBcw[ aA9latn�mWcwa�e�mIXwadj�kla �fhWatkiWjD[ln�atkWmWjwa^�ËcwTIaÐ]gatjwhWat_<�E[lklaÐiWjD[ln�atXDX�e^k#4smIXÁcDX�cDTWamIXwadjÂ�E[lkla�XÁcDe^nu]Ëcw[<�Ëeg]ga1V{c(e�iWi*ategjÂcwTIe�cÂcwTWa�iWjw[lnda�ÒklmWjDa$Tfegk4Z*adath�ath^cDadjDatk.e�hIk�Vz�E�EatklVYevcDad_z|4Vbh\cDadjDjwmWiWcwatklrTfe�jukl��egjwa�XÁcs|`_ba�nUZfadpr[gjDa4a�9laon�mlcDVbhW�EcDTWa��fjDXÁc�VzhIXscDjwmfn¥ÒcwVz[ghº�¢SUTIa�XÁ|lXÁcwat�ÓcDTWadh7jwadcwmWjDhIXOprjD[g� ]^adjDhWad_f��[lkla�cw[mIXwadj4�E[lkla<Vzh�cwTIa<mIXwmIe�_8�EeghWhWatjt��SUTWa<jDatXwmW_bc�[�p�e�_z_cwTIVzX.VzX4cwTIe�c.cDTWa7hIa�9`c.mIXwadj.�E[`kWa7VzhIXscDjwmfn¥cwVz[gh��ÂTIVznuTVYX³a�9laon�mlcDatkËVYXOcDTWa �IjuXÁc8VzhIXscDjwmfn¥cwVz[ghË[gpFcwTWa(klatXwVz�ghIe�cwatkiWjD[ln�atkWmWjwa^�� ,< 3 � �# �1" ���SUTWa�XÁ[gpÀcs��egjwaOVzh\cwadjDjDmWilcºp¨e^n�Vz_bVbcs|1TIegXGZ*adadh�a�9`cwathIklatk�cw[iWjD[vy`Vzkla4e<if[v��adjwprmW_�ZWmWc(Xw[g�Ead�ÂTIe�c�VzhWa�<n�Vzadh\c(��aonuTlÒe�hIVzXw� �ÂTIadjDadZ`|�e}ife�jDadh\c4iWjD[`ndatXDX��Ëe¸|&�E[ghIV{cD[gj4cDTWaiWjD[g�^jwaoXwX8[�p,[ghWa�[^j��E[^jwa�nuTWVz_zk�iWjD[ln�aoXwXwatXt�� ,< �� 57� � � � 0 � ��`VzhIn�a(cDTWa1Vbh\cwatjwjDad_YevcDVb[^hIXwTWVbifX8[gpºcDTWa1iWjw[lndatklmWjDatXUe^XwXw[�Òn�VYevcDatk}�ÂVbcwT�XÁ[gpÀcs��egjwa�Vbh\cwatjwjDmWilcuX½egjwa�XÁ[^�Ead�ÂTIe�c(n�[^hlÒprmIXwVbhI�(e�c��fjDXÁc¢XwVz�gT\ct��VbcOVzX,��[gjwcwT`�ÂTWVz_ba�Vzh^cDjw[lklmfn�VzhW��cDTWaiWjD[ln�atkWmWjwaoX,ZWjwVza #f|4Zfadpr[gjDaUiW_bmIhW�gVzhW�1VbhE�ÂVbcwTEZ*[�cwT�prata�c�z�b�z�

��$

Page 63: A Commentary on the Sixth Edition UNIX OS -- Lions

� , (' � �����#" �1" � �2" ���

<DXwXwVb�4> l�#g�IÖA$Fn7Vz�EiW_zad�Eadh\cDX�XÁ|lXÁcwat� ndeg_b_ �i$o( l�<DXÁVz��ÒhIeg_?>4n½cw[qXwa�c4cDTWa<yve�_zmWaËVzh�[ghWaËat_bat�Eadh\c�[�p�cwTIa7e�jDjDe¸|<wm�� m XÁVz�ghIeg_?>I�� , � �/ )7 �0�� �#"����

<w]\Vz_z_?>}l�#^�m#g�4n�Vz�EiW_zad�Eadh\cDX�XÁ|lXÁcwad� nde�_z_ ��#\�tlr]`Vz_b_ n½cw[nte�mIXwa�eBXÁi*atndV �fatk�Vbh\cwatjwjDmWilc(cw[�eBiWjw[lndatXDX½kla��IhWaok&Z`|VbcDXÂiIjw[ln�aoXwX�VYkladh\cDV{pr|`VzhW�Ëh`mW��Z*adjo�<wXwVz�ghIeg_?>Slk#g×�$\×on¼nte�mIXwatX�e�XÁi*atndV �Iaok�Vzh^cDadjDjwmIilc�cw[�Zfante�mIXwatkBpr[gj½e�_z_�iWjD[`ndatXDXÁaoX�n�[^h\cwjD[g_z_baokBeghIk �¸[^jÂVbhIV{cDVze�cwatkprjD[g�:eEXwifaon�V �IatkBcDadjD��VzhIeg_ �<ÁifXÁVz�ghIeg_?>zlk#g×^�m#on½VYX�nte�_z_baok�Z\|W<Á]`Vz_b_ >zl�#^��$\×on1e�hfk

<DXÁVz�ghIeg_?>dl�#^×^�^�mn�l¨eg_zXw[s<scDjDegia>Ml �^��×m#I�o��(IÖ�(4nIeghIku<ÁiWVzi*a�>l��N(^�m(on n³cD[Ëkl[�cwTWa4e^n¥cwmfe�_�Xwa�cÁcDVbhI�Ë[�p`<wi XwVb�4>W�� , � ) ��� � �<wVzXDXÁVz�o>rlk#g×g×IÖ�n1VYX�nte�_z_baok�Z`|I<DXÁ_zadatia>zl½�g�m(^�on¥�`<scwjue�iO>lÉ��(^�WÖ�n,e�hfkr<wn�_z[lnu]y>�lk#m(\���onGcD[4adh � mIVbjDaÂ�ÂTWa�cDTWadj$cwTWatjwaVYX½eghq[gmWcDXÁcDe�hfklVbhI�7hW[^hlÒÉVz�ghI[gjue�ZW_za4XÁ[gpÀcs��egjwa�Vbh\cwatjwjDmWilcpr[^jUcwTWa4e^n¥cwVzyga1iWjD[ln�aoXwX 4smIXÁc���egV{cDVbhI�.cD[ËTIe�iIifath��

<ÁifXÁVz�o>+l $\��$o#4n8VzXÂnte�_z_baok7�ÂTWathWady^adjs<wVzXDXÁVz�o>�jwadcwmWjDhIXe�hW[^hlÒ tadjD[&jDatXwmW_bcfl¨a�9Wn�atilc<Vzh=<DXÁ_zadatia>&�ÂTIadjDaBcDTWVzhW�^Xegjwa1e�_bVbcÁcD_ba��E[gjDa1n�[g�EiW_za�9an8cD[�Vz�EiW_zad�Eadh\cUcwTWa4e^n¥cDVb[^hcDjwVz�g�^adjDatk<Z`|ËcDTWa�Vzh^cDadjDjwmIilct�<wnd[gjDa�>pl�$^�^×�$4n³VzXUnte�_z_baokËZ`|z<ÁiIXwVb�4>�Vbp,e�nd[gjDa½klmI��iVYXUVbhfklVzntevcDatkBpr[gj�e.cwatjw�EVzhIevcDVbhI�ËiWjw[lndatXDXd�<Á�^jw[v�e>sl�$IÖ�#g�on³VzX�ndeg_b_zatk7Z`|}<wiIXwVb�4>1cw[�adhW_Ye�jD�ga�cwTWamIXwadjÂ�E[lkla4XÁcDe^nu]<e�jDate.V{p¢hWatndatXDXwegjw|^�<ÁaA9lV{c >&l�#\�lÖo×on�cDadjD�EVbhIe�cwaoXqcDTWa ndmWjDjwath^cD_b| e^n¥cwVzygaiWjD[ln�aoXwXt�

� , � . � �# �1" � �

<wilcwjuegnda�> l $fÖt��$FnBVb�EiW_zad�Eadh\cuX�cwTWa&<ÁilcDjDe^n�a�>ÎXw|lXscDad�nte�_z_��.�g�W�<wXÁcw[^ia> l $^�IÖt�4n�VYX�nte�_z_baok Z`| <wVzXDXÁVz�o>@l�#^×g×g×4n1pr[^jEeiWjD[ln�aoXwXO�ÂTIVznuTËVYX³Z*adVzhW��cDjDe^n�atk.cD[�e�_z_b[v�ÑcwTIa�XÁmIifatjwy`VYXsÒVzhW�EiIe�jDadh\cUcw[ËTfe¸yga1et<w_b[`[^]^Ò�Xwada�>I�<ÁiIjw[ln 9l��c >�l�$\���m$4n�VYX�eÏiWjD[`ndatklmIjwa nte�_z_baok prjD[g�

<DXscD[gia> l $^�\��(4n¢�ÂTWadjDadZ`|EcDTWa(nuTIVb_Yk7nte�jDjwVzatX$[gmlcÂn�atjÁcue�Vzh[^ifatjDe�cwVz[ghIX(jDad_YevcwaokqcD[�cwjuegn�VzhW�f�ºevc1cwTIaËZfatTWatXÁc4[�p8cwTWaiIegjwath\ct�� , �� � � " � � , ' ��3 �SUTWVYX iWjD[`ndatklmIjwa�Vb�EiW_zad�Eadh\cuX cDTWa <wXwVb�^hIe�_ > Xw|lXscDad�nte�_z_ �B vZ���(� ��p$cDTWaEVbh\cDadjDjwmWiWc(jDate^XÁ[^hqVzX1[^mlc1[�p8jue�hI�ga�[^j1VzXa � mIeg_¼cw[r<D�`�Á�1Ã1�sÆGÆ�>+l¨×4n¥�lcue�]ga�eghBatjwjD[gjUa�9lVbc�B v ,OB(� Í�e�iWcwmWjDa7cDTWa�VbhWVbcwVYe�_Uyve�_zmWa�Vbh"<Ámº� m XwVb�^hIe�_ { eN| >pr[gjÂjDa�cDmWjwh�egX�cDTWa�jDatXwmW_{cÂ[gpºcwTIa4XÁ|lXÁcwad�"ndeg_b_

B v ,a7(� �`a�c7cwTWaqat_bat�Eadh\c<[�pf<Ámº� m XwVz�ghIeg_?>�cw[�cDTWa�kWa�ÒXwVzjwaok7yve�_zmWaË�z�b�B v , g%� ��p&e�hMVzh\cwatjwjDmWilcÑpr[gjÑcwTWaLn�mWjDjwath\cÑjDategXw[gh VYXi*adhfklVbhI�I�³ndeghIn�at_$Vbct�3l¨��c.VYX4hW[gc.n�_zategj��ÂT`|�cwTWVYXXÁcwatiLXwTW[^mW_zk Zfa�hWaon�atXDXDe�jD| [^jBatygath�klaoXÁVzjDegZW_zag�Ô�h`|BXwmW�g�^atXÁcwVz[ghIX % %�n� ,< ��8� � " � � � , ' , �SUTWVYXEiWjD[`ndatklmIjwa�Vz��iI_bat��ath\cDXEcDTWa <Á]`Vz_b_ >�Xw|lXscDad� nde�_z_cw[�nte�mIXwa}e�XÁi*atndV �Iaok�cs|`i*a}[�p�XÁ[gpÀcs��egjwa�Vzh^cDadjDjwmIilcEcw[e�hI[�cwTIadjÂklatXwVz�ghIe�cwatkBiWjD[ln�atXDXt�B vOB ~ � ��pd<Dem>�VYXÂhW[ghWÒ tadjD[I�`V{c½VzXUcDTWa�iWjD[ln�atXDXUVYkladh\cwVbpr|\ÒVzhW�Ëh`mW�.ZfatjÂ[�pOeEiWjw[lndatXDX$cD[ËZfa�Vzh\cwatjwjDmWilcDatkF�³��p

<Dem>ÂVYX dadjD[I�tcwTIadh.eg_b_\iWjD[ln�atXDXwatXF[^jwVz�gVzhIevcDVbhI�Âprjw[^�cDTWaEXweg��a4cwadjD�EVbhfe�_¢egX�cwTWa�n�mWjDjwath\c�iWjD[`ndatXDX�egjwacD[ËZfa�Vzh\cwatjwjDmWilcDatk�B vOB �-� Í8[ghIXwVYkladj4aoegnuT�adh\cDjw|�Vbh�cwTWaP<wiWjD[`n�>�cDegZW_ba7VbhcDmWjDhqe�hIk�jDa 4satn�c�Vbc�V{p �8V{c½VzXUcDTWa�ndmWjwjDadh\cÂiWjD[ln�atXDX

lk#g�m$^�on%¸V{cºVYX�hI[�c�cDTWa$klaoXÁVz�ghIe�cwaok1iWjw[lndatXDXRl�#^��$\�on�hI[½iIegjÁcDVzndmW_Ye�j,iWjw[lndatXDXG�UegX,klaoXÁVz�ghIe�cwaokEl�<Dem> � ��4n½ZWmlc4Vbc�kW[\aoX1hW[�c�TIe¸y^a�cDTWaËXweg�EaEnd[gh\cwjD[g_z_zVbhW�cDadjD�EVbhIeg_�[^j<V{cBVzXË[^hWaq[gp½cDTWa}cs��[�VbhWVbcwVYe�_½iWjD[�ÒndatXDXÁaoXel�#^��$o$4n��cwTWa�mfXÁatj³VzX³hW[�c³cDTWap<DXÁmWi*adjOmfXÁatj >eghIkBcwTWa�mfXÁatjÂVzklath\cwVbcwVzatX�kl[EhW[gcÂ�Ee�cDnuTzl�#^��$\�on�B va7 �-� )W[^j egh\| iWjD[ln�aoXwX cwTIe�cÐXÁmWjDy`Vby^atX�cwTWa e�Z*[vygacDatXÁcDXt�Indeg_b_j<wiIXwVb�^hIe�_ >4cD[ËnuTIe�hW�^au<Ái XwVb�4>W�� ,< �� ( � " ���= � � ,�� 3 ���)W[^j³ady^adjD|�iWjD[ln�aoXwXt��Vbp�V{c$VYX$nd[gh\cwjD[g_z_zatk�Z`|�cDTWa�Xwifaon�V �Iatkcwatjw�EVzhIe�_Rl kladhI[�cwaok�Z\|3<scwiO>on¥�ITWV{c�Vbc��ÂVbcwT <ÁiIXwVz�ghIeg_?>I�� ,< �� , � � "���� � � ,�� ' ,��

B �Ov v-� ÅÂa 4saon¥c�cwTWa1ndeg_b_*Vbp`<wXwVz�o>�VYX³cD[`[._Ye�jD�gail¨ZWmlcÂ�ÂT`|hI[�cËV{p(hWad�\evcDVby^a % % <Á]`Vz_b_ >�kl[`atX�hW[�cËnuTWaonu]�cwTWVYXife�jue��Ea�cDadjOZ*a�pr[gjDa�iIe^XwXwVzhW��V{c$cw[f<ÁifXÁVz�ghIeg_?>I�GÔ½k`Ò�EVbcÁcDatkl_z|(cwTWa*<w]`Vb_z_?>�n�[g�E�Ëe�hfk(nd[gmW_Yk1[ghI_b|(jwaoXÁmI_{cVzh}e�if[\XÁVbcwVzyga1yve�_zmWa1pr[gjs<DXÁVz�o>B�z�b� n�B � ~ �'� ��p�cDTWaqn�mWjDjDadh\c�yveg_bmWa�[gp <Ái XwVz�o>�VzXË~M!(S:Xwa�ccD[3<u�`�Á�1Ã1�sƺÆ�>W�lcDTWadh�[vygadjD�ÂjDV{cDa(VbcslrVÉ� a^��[ghInda.eiIjw[ln�aoXwX8TIe^X8Z*adath@<w]`Vb_z_baokË[gmWcwjDVb�^T^c >�cDTWadjDa½VYXUhW[�Ue¸|ËcD[�jDady`Vzyga(V{co� n%B � ~ B-� �`adat�ËX�cD[�Zfa}e�hÑadjDjw[^j�TWatjwa��z�b� pr[gjr<Ái XÁcDe�c >jDate^k&<wi iWjDV?> �z�b� Vb�EiWjD[vygaBcwTIa}iWjwVz[gjDVbcs|�[�p�cDTWaiIjw[ln�aoXwXUVbp¢V{c�VYXUhW[�cÂcD[`[��^[`[`k B � ~ g%� ��pEcwTWaÑiWjw[lndatXDX}VzX&��egV{cDVbhI�Ïpr[gj�eÏhW[ghWÒÉ]^adjDhWad_atygath^cÂVÉ� a^�³Vbc�nde�_z_zatk@<wXw_batadia>ul �g�g�^�on$�ÂV{cDTqe.i*[^XÁÒVbcwVzyga�iIjwVz[gjDV{cs|^�\cwTWath�Xwa�c�Vbc�jDmWhWhWVzhW�Ëe��\e�Vzh��

�g�

Page 64: A Commentary on the Sixth Edition UNIX OS -- Lions

� , ��13 " � � "�� � ,�� � � �B ��� ~ � ��pM<Ái XwVb�4>.VYXUhW[^hlÒ tadjD[I�\cwTIadh��z�b�B ��� \(� ��p$cDTWar<scDjDe^n�VzhW�o> #*e���VzX([ghº�ºndeg_b_M<wXÁcw[^ia> lrcwTWVYXcw[^iWVzn(�ÂVz_b_ºZfa�jDatXwmW�EatkB_ze�cwatj n%7�QOQ Q(� ÅÂadcwmWjDh�e tadjD[.yve�_zmWa1Vbp`<Ái XÁVz�o>.VzX tadjD[I�ql¨SUTWVYXe�iWife�jDadh\cw_z| jwaoklmWhIkWegh\c�cDatXÁc�VYX�hWatndatXDXwegjw|LZ*a�ÒndegmIXÁa3<wXÁcw[giO>}�Ëe¸|�jDatXwa�c <wi XwVb�4>qegX.e&XwVzklaBa�pÀÒpratn�ct� n�

$^�^�m#W�L��p�cwTIa&yve�_zmWa&VzhÎcwTIa�n�[^jwjDatXwi*[ghIklVzhW��at_{Òad�Eadh\c�[�pp<Ámº� m XwVb�^hIe�_ >}VYX�atygath lr�Ëe¸|�Zfa dadjD[4njwadcwmWjDh�e.hI[ghlÒ datjw[�yve�_zmWa�7�QOQ v(� !�cwTIadjD�ÂVzXwa1jwadcwmWjDh�e tadjD[.yve�_zmWa^�SUTWa�n�[^���Eath^cEjDad�^egjDkWVbhW�qcwTWaBprjwa � mWadhInd|�[�p½nte�_z_zX[^hP<ÁVYXwXwVz�o>1�ÂTWVYnuT<[lndndmWjDX$[gh<_zVzhWatX #g×o(m#(cw[�#g×o(^�(hWatatkWXXw[g�Ea�nd_zegjwV �fnde�cwVz[gh��½Ô�c(_zate^Xsc�[^hWa.nte�_z_G[^h <ÁVYXDXÁVz�o>EVYX½eiIegjÁc.[�p�ady^adjD|�aA9latn�mWcwVz[gh�[gpY<Ácwjue�ia>qZWmlcE[ghW_z|�[gp�[ghWaVzh\cwadjDjDmWilc�jD[gmlcDVbhIa l�<Dn�_z[lnu]F>I�I�ÂTWVYnuT&nte�_z_zXE<ÁVYXwXwVb�4>E[ghW_z|[^hIn�a.ifatj½Xwatn�[^hIkan�����h�ntegXwatX��ÂTWadjDab<ÁiIjwV >ËVYX�i*[^XwV{cDVby^ag�

<DXÁ_zadatia>Pl �g�\��#W�O���m(\�mn1nte�_z_zX <ÁVYXwXwVb�4>}Z*a�pr[gjDa7eghIk�evpÀcDadjnte�_z_bVzhW�r<wXw�UcDnuTa>I�� , �� � � � "�� � 3 �3',��SUTWVYXÂiWjD[ln�aoklmWjDa(VYXÂ[^hW_b|Bnde�_z_zatk�V{pM<Ámº� m XwVz�ghIeg_ { hy| >.�UegXpr[^mWhIk�Z`|b<ÁVYXwXwVz�o>�cw[�TIe¸y^aUegh.atygath.yve�_zmWa^�G��p¼cwTIVzXOyveg_bmWaVYX.pr[gmWhIkIl $\�^�lÖ�n(cw[�Z*aBhW[^hlÒ dadjD[I�¢Vbc�VYX.cDeg]gadhÑegX�cwTWae^kWkljDatXDX.[gp(e�mIXwadjË�E[lkla�prmWhIn¥cDVb[^hÎ�ÂTWVznuT TIe^X�cD[�ZfaaA9`aon�mlcDatkF�7�Q ga7@� ÅÂaoXÁadcE<Ám�� m XwVb�^hIe�_ { hy| >EaA9Wn�adiWc�cwTWa�nde^XÁa��ÂTWatjwacwTWa�Vzh^cDadjDjwmIilcGpr[^j,egh�Vz_b_zad�\e�_\VbhfXscDjwmIn�cwVz[gh.[gjGcwjuegn�acwjue�i 7�Q g g-� Í�e�_Yn�mI_ze�cwa�cwTIa mIXwadj&XwiIe^n�a�egkIkljwaoXwXwatX�[gpEcwTWa_b[v��adj�[gpUcs�8[}��[gjukWX��ÂTWVYnuT�e�jDaEcw[}Z*a7VzhIXwadjwcwaokVbh\cD[.cDTWa�mIXwadjÂ�E[lkla�Xscuegnu]q�z�z�7�Q gOv(� Í�e�_z_j<Á�^jw[v�e>�cw[ËnuTWatnu]EcDTWa�n�mWjDjDadh\c�mfXÁatj��E[lklaXscuegnu]&XwV� dag�¢e�hfk&cD[}a�9`cwathIk�VbcEl¨kl[v�Âh`�Ue�jukWX * n VbphWatndatXDXwegjw| 7�Q g ~ � %³mWc8cDTWa1y¸eg_bmIatX8[�pºcDTWa(iWjw[lndatXDXÁ[^j8XÁcDevcDmIX�jwat�gVYXsÒcwatj�eghIkËcDTWa1iWjw[^�gjue�� n�[^mWh\cwadj��ÂTWVYnuT7��adjDa½nte�ilÒcwmWjDatk�evc�cDTWaËcDVb�EaË[�p�cwTIaz<scwjue�iO>B[^j�TIe�jukl�Ue�jDaVbh\cDadjDjwmWiWc�lrVzh}cDTWa�ntegXwa�[gp$eP<wnd_b[lnu]y>ËVzh\cwadjDjDmWilc nVbh\cD[ËcwTWa.mIXwadj½XÁcDe^nu]¼�fe�hfk}mWi¼kWevcDa4cwTIa <ÁjDad�Eat�.ÒZfatjwaok1>.y¸eg_bmIatX�[�p,jD�I�\j���e�hIk7cwTWa1iWjD[ln�aoXwXw[gjUXscuevÒcwmIX(��[gjukF�4x�i*[gh�jDa�cwmIjwhWVzhW�Bcw[�mIXwadj1�E[`kWag�Fa�9`ÒatndmlcwVz[gh �ÂVb_z_�jDatXwmW�Ea}evcËcwTIa}Zfat�gVzhWhWVzhW��[�p½cwTWaklatXwVz�ghIe�cwatk�iIjw[ln�aoklmWjDag�q�ÏTIadh�cDTWVzX�iWjD[ln�aoklmWjDajwadcwmWjDhIXt��cwTWaqiIjw[ln�aoklmWjDa}�ÂTWVYnuTÏ��e^XË[gjDVb�^Vbhfe�_z_b|Vbh\cDadjDjwmWiWcwatkB�ÂVz_b_�Z*a�jDatXwmW�Eatk�7�QOv v(� ��pS<Ám�� m XwVb�^hIe�_ { hy| >�VYX datjw[f�lcwTIadh�pr[gj�cwTWa4Vzh\cwatjÁÒjwmIilc.cs|`i*atX._bVYXÁcwatk��$�gathWadjuevcDa7e�n�[gjDa7Vz�Ëe��^a7y`VzecwTWa1iWjD[ln�aoklmWjDa+<Dn�[^jwa�>

7�Q ~ �-� �\cw[^jwa�e�yve�_zmWa�Vbh <Ám�� m egjw� { ��| >�nd[g�Eif[\XÁaokÏ[�pcDTWa7_z[v�3[gjukladj4Z`|\cwa7[�pUcwTWa7jwat��at��Z*adjDatk�yve�_zmWa[gpºju�W�`e�hIk7[�p<wha>W�\�ÂTWVYnuT7jDatn�[^jDkIXOcwTIa(Vzh\cwatjwjDmWilccs|`i*a7e�hfk��ÂTIa�cwTIadj.e}nd[gjDaEVb�Ëe��^aË��e^X�XÁmfndn�aoXwXÁÒprmI_b_z|Bndjwaoevcwaok�7�QO\ Q-� Í�e�_z_*<ÁaA9lV{c >7pr[^j�cwTIaËiWjw[lndatXDX(cw[�cwatjw�EVzhIevcDaËV{cwÒXwad_bps�� ,< �� ' � � � � 3 � 3 �SUTWVYX1iWjD[`ndatklmIjwaEn�[^iWVbaoX(cwTWaËXw��egiWiIegZW_ba�iWjD[g�^jDeg�"Vz��Òe��^a�Vbh\cw[�e �f_ba&nte�_z_baok"<wn�[^jwa�>&VzhÎcwTIaqmIXwadj�' XËndmWjwjDadh\cklVzjwaon¥cD[gjD|g�¢ÔLkWa�cDegVb_zatkBa�9liW_Ye�hfevcwVz[ghB[�pGcwTWVYXUiWjD[`ndatklmIjwa��mfXscÂ�Ue�VbcUmIh^cDVb_¼cDTWa��ËevcDadjDVzeg_*[gp¢�`aon¥cDVb[^hIXÂSUTWjDada1e�hIk)W[^mWjo���ÂTIVznuTÐklaoe�_½�ÂV{cDTÏVbhWiImlc �v[gmlcDiWmlc�eghIk �I_za&Xw|`XÁÒcwat�ËXd�WTfe¸yga(Zfatadh}n�[vy^adjDatkF�� ,< �� � � � � � 3 � , ' �SUTWa4ife�jue��Ea�cDadjo��<wXwia>W�W[gp¢cwTWVYX�iWjD[ln�aoklmWjDa4kla �IhIatXÂcDTWaegkIkljwaoXwX�[�p$eË��[gjuk��ÂTWVYnuTqXÁTW[^mW_Yk}Zfa.Vbhfn�_zmIklatkqVbh}cDTWamIXwadjÂ�E[lkla�Xscuegnu]¼�7��47��'� ��pIcDTWaÂXscuegnu]4e�_zjDategkW|(aA9`cwadhfkWX,p¨e�j¢adhI[gmW�^T��gXwVb��ÒiI_b|BjwadcwmWjDhB�ÂVbcwT}e datjw[Eyve�_zmWa^�

~�[�cDaUcwTIe�cOcwTWVYX¢cwaoXsc8jwat_bVzatX¢[^h�cDTWaÂVzkWVb[\XÁ|`hIndjDe^XÁVzatX[gpO�1' XÂnd[g�EiW_zad�Eadh\c�e�jDVbcwTW�Ea�cDVzng�Ie�hfk7Vbp,Z*[�cDT� Xwi � �Î�����

eghIk� m�� m XÁV� da��v�m$ � �Ï�����

cDTWa�klaon�VYXÁVz[gh.cw[�aA9\cDadhIk�cwTIa�Xscuegnu]4�Ëe¸|4Z*aUcDeg]gadh�ÂjD[ghI�g_z|<evcÂcwTIVzX 4smIhIn¥cDmWjwa�7��47�B-� Í�e�_Yn�mW_YevcDa$cDTWaÂXscuegnu]4XwV( taUVbhIndjwat�Eadh\c,hIadatkWatk�cw[VzhInd_bmIkWa8cDTWa�hWad� XÁcDe^nu]1if[^Vbh\cOiW_zmIX¢e(�g�� N#\���8[^jDk�Ëegjw�^Vbh 7��47 7(� Í8TWatnu]�cDTIevcUcwTIVzX�yve�_zmWa(VzX�Vzh7p¨e^n¥cUif[\XÁVbcwVzygaYlrVÉ� a^���a7egjwaEhW[gc.klateg_bVzhW�}�ÂVbcwT�e�p¨egVb_zmWjDaË[�pUcwTWa<cwatXÁc[^h�_bVzhWaM$IÖ�$IÖg� n�7��47�v-� Í8TWatnu]3cDTIevc cwTWa hWat�-XÁcDegnu]?XwV( taLkW[\aoX hI[�cnd[gh�#fVzn�c.�ÂVbcwT�cwTIa7�Ead�E[gjD|�XÁat�g�Eadh\cDe�cwVz[gh�n�[^hlÒXÁcwjue�Vzh\cDX l�<watXÁcDegZWmWj > Xwa�cDX <wm�� m adjDjw[^j >ÐV{pBcwTWat|kW[4n�eghIk�jwaoXÁadc�cwTWa<Xwad�^��ath\cDevcDVb[^h�jwat�gVYXscDadj1iWjD[�ÒcD[�cs|`i*atX�7��47�\-� �(a�c�eÐhWad���.adhW_Ye�jD�gaokLkIevcDe e�jDateW�4nd[gi`|ÐcDTWaXÁcDe^nu]BXwad�^��ath\cDXilk#^����[gjukWX�e�c½e�cwVz�Ea�nÂVzh\cw[ËcDTWaTIVb�^TqadhIk�[gpOcwTWa.hWad� kWe�cDe<egjwaoeW�*e�hIk}nd_baoe�j�cDTWaXwad�^�Eadh\cDXO�ÂTIVznuTEhW[v� Zfaon�[^��a�cwTWa�XÁcDe^nu]4a�9liIeghlÒXwVz[gh 7��ygOv-� x�i¼kWevcDaqcDTWa�XÁcDe^nu] XwV( tag�s<wm�� m XwXwV( ta�>�eghIkÎjDa�ÒcDmWjDh�e}<DXÁmIntn�aoXwXÁprmW_ >�jDatXwmW_bct�

�g�

Page 65: A Commentary on the Sixth Edition UNIX OS -- Lions

� , ��� �=" � � ,8( � ���SUTWVYX³iIjw[ln�aoklmWjDaÂVzX$nde�_z_zatkE�ÂTWath<e�iWjD[`ndatXDX¢VzX³cw[�cDadjD�EV{ÒhIe�cwa1VbcDXwad_bps�B�,O,a7@� ÅÂaoXÁadcÂcwTWaf<Ácwjuegn�VzhW�4> #feg�2B�,O, g-� �`adc¢eg_b_`[�pIcwTWa�yve�_zmWatX,Vzh4cwTIaUegjwjue¸|E<wm�� m XÁVz�ghfe�_ >

lrVzhIn�_zmIklVzhW�W<Ám�� m XwVb�^hIe�_ { �`�Á�1Ã1�sƺÆZ| >4n(cw[�[ghWa�XÁ[cwTIe�c�hI[qprmlcDmWjwa�aA9`aon�mlcDVb[^h�[�p <ÁVYXwXwVb�4>}�ÂVz_b_ÂatygadjZfa1pr[^_b_z[v��atk<Z`|<aA9latn�mWcwVz[gh�[�pd<ÁiIXwVb�4> B�,O, ~ � Í�e�_z_�<Dn�_z[^Xwa�>Ml¨�^��$4#onfcw[½n�_z[^Xwa$e�_z_�cDTWa �I_zatXG�ÂTWVYnuTcwTWa�iWjD[ln�atXDX<TfegXB[gi*adh�� lk)W[gjBcwTIa��E[^XÁc�iIe�jwct�

<wnd_b[\XÁVzhW�o>.XÁVz�EiW_z|7Vzh\y^[g_zygaoX�kWatn�jDad�Eath^cDVbhI�Ee�jDa�pÀÒadjDadhInda(nd[gmWh\co� n%B�,aB�,-� ÅÂaoklmIn�a<cwTWaBjwadpradjDadhInda7n�[^mWh\c4pr[gj�cwTWa7ndmWjDjwath^cklVzjwaon¥cw[^jw| B�,aB B(� �`atygadj,cDTWaÂiWjD[`ndatXDXA' X,n�[ghIhWatn�cwVz[gh��ÂV{cDTEegh`|1cwa�9`cXÁat�g�Eadh\c,B�,aBO7@� Ô iW_Yegnda(VYXÂhWatatklaokBcw[<XÁcw[gjDa+<Ái*adj�iWjD[ln�aoXwX >�VzhlÒpr[gjD�ËevcwVz[gh�mWh\cwVz_lcwTWaUiIegjwath\c,iWjD[ln�aoXwX,ndegh._z[`[g]4evcV{co�BÔ?ZI_b[lnu]@lÉ�g�g�B��[gjukWX n½Vbh�cDTWa<XÁ�Ue�i�egjwaoeB[gpcwTWa�klVYXw]7VYXÂeËn�[gh`y^adhWVzadh\cUiW_ze^n�a�B�,aB ~ � ),Vbhfk�eEXwmWVbcDe�ZI_ba�ZWm��*atjil �^���.�8[^jDkWX n�e�hIk��z�b�B�,aB \(� Í8[gi`|�cDTWa 5��F[i24����/15"� [�p�cDTWa <Áma>�XÁcwjDmIn¥cDmWjwaVbh\cD[.cDTWa�ZWm��¼adj½e�jDate B�,aB �(� ��jwVbcwa1cDTWa�ZWm��¼adj�Vzh\cw[�cwTIa4XÁ�Ue�i�e�jDate2B�,17���� ̳h\cDadj�cwTWa}nd[gjDaBXwiIegndaB[lndndmWiWVzatkÑZ`|�cwTWa�iWjD[�Òn�aoXwX$Vbh\cw[4cwTWa½prjwata�_zVzXÁct�el SUTWVzX�XwiIegnda�VzX8[�pºnd[gmWjuXwaXscDVb_z_ºVzhqmIXwag�fZWmlc½cwTWa.mIXÁa��ÂVb_z_ºcDadjD�EVbhIe�cwa4Z*a�pr[^jwae�h`|�[gcwTWatj8iIjw[ln�aoXwX³�ga�cuXOcD[.klVzi<Vzh^cD[4cDTWa�prjDada�_zVYXsce��\e�Vzh�� SUTWVYX<n�[^mW_YkÎhW[�c<Z*a&kl[^hWaqe�h`|ÑXw[`[ghWatjt�ZfaondegmIXÁa^��egX1�ÂVz_b_OZ*aËXÁatadh�_ze�cwatjt�FZ*[�cDTW<w�gadcwZW_z]y>e�hIk�<ÁZ`�ÂjwVbcwa�>}ndegh ndeg_b_�<wXw_batadia>I�OklmWjDVbhW���ÂTWVYnuTe�_z_³XÁ[^jÁcuX1[�p8cwTWVzhW�^X4��Vz�gT\c4TIegiWi*adh��Ë��h�y`Vbat�Ó[gpe�_z_�cwTWVYXd�$V{cË�EVb�^T\c�Z*a�jwaoegXw[ghIegZW_baBV{p�cwTWa}XÁcDevcDa�Ò�Eadh\c

a�9liIeghIk}l¨x½�l� ¼Ìcn%�8atjwa(VzhIXÁatjÁcDatk�evpÀcDadj�_zVbhIa*#^�g�g�W� n�

B�,17�B(� �`adc�cDTWa�iWjD[`ndatXDXEXscuevcwa�cD[I<� d[g�.ZWVza�> lrVÉ� a^�&<wen�[^jwiIXwa1XwegVzk7cw[EZ*a�jwaty\Vzygaok7Z`|<�ÂVbcDnuTfn�juevpÀc >l !.� Ì�� Ä�� n n%

B�,17 g-� SUTWa1jDad�Ëe�VzhWVzhW��nd[lkla�XÁaoe�junuTWatX8cwTIa+<wiWjD[`n�>.egjÁÒjDe¸|<cw[ �IhIk�cDTWa4iIegjwath\cUiIjw[ln�aoXwXÂeghIk�cw[Ë�Ue�]^a1V{cmWi��¸cD[��Ëe�]^a$e�h`|�nuTWVz_zkljDadh <Á�Ue�jukWXF[�plcDTWaUXscuevcwa�>W�e�hIk��gVbp*cDTWad|�TIe¸y^as<wXÁcw[giIifaok1>(pr[gjOcDjDe^n�VzhW�I�gcw[�jDa�Ò_baoegXwa³cDTWad����),VbhIeg_b_z|1cwTIa�n�[lkla�VbhInd_bmfklatXjlrpr[gj,cwTWVYXiWjD[`ndatXDX n8e�_ze^Xsc�nte�_z_F[gh <wXw�UcDnuTa>I���a�pr[^jwa��g[^VbhI�&[ghÑcw[�nd[ghIXwVzkWadj�cwjuegndVbhW�f�³cDTWadjDa}e�jDacs��[:jD[gmlcDVbhIatX��ÂTWVznuT e�jDaÓn�_z[^Xwad_z| egXDXÁ[lndVze�cwatk �ÂVbcwT

<wa�9lV{c >W�`�ÂTWVYnuT�nte�hBZfa�n�[^h`ygadhIVbath^cD_b|<kWVzXwif[\XÁaok<[gpGhW[v���

� ,< ��� �� �=" � � ,8( � �SUTWVYX�iIjw[ln�aoklmWjDa�Vb�EiW_zad�Eath^cuX½cwTWat<Áa�9lVbc ><Xw|lXscDad� ndeg_b_É��7Ög����c¢XÁVz�EiW_z|(XDe�_zyve��gaoX*cwTWa$_b[v��[gjukladjºZ\|\cDa³[�p`cwTIa³mIXwadjXwmWiWiW_zVbaok iIegjDeg�Ea�cwatj�eghIk¿XDe¸ygaoXqVbc�Vzh <Ám�� m e�jD�O{ �N| >W��ÂTWVYnuT�VYX1Vzh&cDTWaE_b[v��adj1TIeg_{p�[�p$cDTWar<Áma>�XÁcwjDmIn¥cDmWjDa.VÉ� a^�cwTIaqiIe�jwcEcwTIe�c7VYX<�ÂjDV{cwcwadh cD[�cwTWa <DXÁ�Ue�iÎe�jDateo>�egX<e< t[g�.ZWVba�>W�� ,< )( �" � � ,8( � �)W[^j½atygatjw|�ndeg_b_,[gh <wa�9lVbc >W�*cDTWadjDa.XwTW[gmI_zk&ZfaEe<�ËevcunuTlÒVzhW�qndeg_b_³[^h <Á�Ue�Vbc >�Z`|�egh�eghy9lVb[^mIX�iIegjwath\c4[gj4e�hfn�atXÁÒcw[^jt�¢SUTWa(iWjDVbhIndVbife�_*prmWhIn�cwVz[gh7[gp�cwTIa(_Yevcwcwatj8iWjD[ln�aoklmWjDag��ÂTWVYnuT<Vz��iI_bat��ath\cDX$cwTWa <Á�Ue�Vbc >4Xw|lXscDad� nde�_z_É�\VYXOpr[^j$cDTWaiIegjwath^cG[gj¢e�hIndatXÁcw[gjºcw[ �IhIk�eghIk4klVYXwif[\XÁa8[�pfeE< d[^��ZWVza�>nuTWVz_zk��

<Á�Ue�Vbc >(e�_YXÁ[½TIegX¢e1Xwatn�[^hIkWegjw|(prmWhIn�cwVz[gh���cw[1_b[`[^]1pr[gjnuTWVz_zkWjwath.�ÂTWVYnuTETIe¸ygaY<DXscD[giWi*atk1>(pr[^j¢cwjuegndVbhW�sl¨�ÂTWVznuTEVYXcwTIa�hWa�9`cÂ�Ëe�4s[gjUcD[giWVYn�n��B�, ~ ~ � �`ategjDnuTÑcwTIa}�ÂTW[g_za <ÁiWjD[lnA>�e�jDjDe¸|�_z[`[g]`VzhW��pr[gjnuTIVb_Yk&iIjw[ln�aoXwXwatXt�El¨��p8hW[^hWaEa�9lVzXÁct��cDe�]^a�egh&atjwjD[gjaA9lV{cil¨_bVzhWa*#m#IÖ¸�mn n�B�,a\ Q-� ��pGcDTWa4nuTWVz_zkBVYX�e}< d[^��ZWVza�>��

XDe¸ygaUcwTIa½nuTWVz_zkZ' X8iWjD[`ndatXDXOVYkladh\cwVbpr|`VbhI��h`mW��ÒZ*adjo�`cw[ËjDadi*[gjwcUZfegnu]Ecw[EcDTWa�iIegjwath^c, jDategkBcDTWa.�g�g���8[^jDk�jDatn�[^jDkBZIe^nu]<prjD[g�McDTWaklVYXÁ] Xw�Ue�iÓegjwaoeW�Ee�hIkÓjDad_zategXwa�cDTWaÏXÁ�Ue�iXwiIegnda� jDadVzhWV{cDVzeg_bVYXwa½cDTWaf<ÁiIjw[lnA>�e�jDjue¸|�ath\cwjD|� egntn�mW�.mW_Yevcwa�cDTWa�yve�jDVb[^mIX}egntn�[gmIh^cDVbhI� athlÒcwjDVzatX�XDe¸yga�cwTWa3<Ám e�jD�O{ �N| >By¸eg_bmIa<e�_YXÁ[�cD[}jwatif[^jÁcZIe^nu]Ëcw[�cwTIa�iIe�jDadh\c�

B BOQ Q-� �sX�cDTWaUnuTWVb_Yk�Vzh.eE<wXÁcw[giIifaok1>�XÁcDe�cwa %tlr��p*XÁ[f�v��egV{cpr[^jUcwTWa4kWVzXDn�mIXDXwVb[^hB[^h7cDjDe^n�VzhW�4n%B BZ�yB-� ��p�[ghWa�[gj³�E[gjDa�nuTWVz_YkljwathË�8atjwa�pr[gmWhIkEZImlc�hI[ghWa��adjDa < t[g�.ZWVbaoX >�[gj&<wXÁcw[giIifaok1>W�z<DXÁ_zadatia> e�hIkcDTWadh�_z[`[g]7eg�^e�Vzh��� ,< )( � � �# �1" � �SUTWa½cwjuegndVbhW�.p¨egndVb_zVbcwVzatXUe�jDa�iWjD[vy`VzkWatkËcDTWjD[gmW�^T7e��E[lklVbÒ�fntevcwVz[gh}eghIk�a�9`cwathIXÁVz[gh}[gpGcDTWa�Xw[�pÀcs�Ue�jDa1Vbh\cwatjwjDmWilc�p¨evÒn�Vz_zV{cDVbaoXd� ��jDVba�#I|g�$V{p1e&iIegjwath\c�iWjD[ln�aoXwX.VzX.cDjDe^n�VzhW�&cDTWaiWjD[g�^jwaoXwX�[�p³nuTWVz_Yk�iWjw[lndatXDXd�Watygatjw|7cwVz��a4cwTWa�nuTIVb_Yk�iWjD[�Òn�aoXwX�adhInd[gmWh\cwatjDXFeÂXw[�pÀcs�Ue�jDa¢Vbh\cDadjDjwmWiWct�ocwTWa$iIe�jDadh\cFiWjD[�Òn�aoXwX³VzXO�^Vby^adh�cwTIa�[giWi*[gjwcwmIhWV{cs|.cw[�Vzh\cwatjwy^adhWa�e^XOiIe�jwc³[�pcwTIa1cw[�cue�_FjDatXwif[^hIXwa½cD[�cwTWa�Vzh\cwadjDjDmWilct�SUTWa�iIe�jDadh\c�' X.Vbh\cwatjwy^adh\cwVz[gh��Ëe¸|�Vzh\y^[g_zyga<Vzh\cwatjwjD[�Ò�^e�cwVz[gh�[�p¢yve�_zmWatX��ÂV{cDTWVzh�cwTWa�nuTIVb_Yk�iWjD[`ndatXDXA' XÂkWe�cDe<egjÁÒate^Xd�^Vbhfn�_zmIklVzhW��cDTWaE<wifatj$iWjD[ln�aoXwX8kWevcue�e�jDateo>W�¢�`mWZ&4saon¥c

�^�

Page 66: A Commentary on the Sixth Edition UNIX OS -- Lions

cD[<n�adjwcDegVbh}nd[ghIXÁcwjue�Vzh\cDXt�`cwTWa4ife�jDadh\c�iWjD[`ndatXDXU�Ëe¸|Be�_YXw[nuTIeghW�ga(yve�_zmWatX��ÂV{cDTWVbh�cDTWatXwa4kWevcueEe�jDategXt�SUTWa�XÁ[^mWjDndaO[�plcDTWa8Xw[�pÀcs�Ue�jDa¢Vbh\cwatjwjDmWilcuX��Ëe¸|(Zfa$cwTWaiIegjwath\c�iWjD[`ndatXDXd�GcwTIa7mIXwadj.TWVb�ËXwad_bpilra^� �f�}Z\|�adh\cDadjDVbhW�<w]\Vz_z_?>1n�[^�E�EeghIkWX¢[^jd<Dklad_za�cDa�>^X,cwTWjD[gmW�^T.TIVzX¢cDadjD�EVbhIeg_ n[^j¢cwTWa�nuTIVb_Yk�iWjw[lndatXDXOV{cuXÁat_{p�lra^� �f�¢VbhIXÁcwjDmIn�cwVz[ghIXO[^jO[�cDTWadj�Ëe�_YegkWVbaoX n��SUTWa&nd[g�E��mIhWVzntevcDVb[^hÑZ*a�cs��adathÎnuTIVb_YkÎe�hIk iIegjwath^ciWjD[ln�aoXwXwatX�VYXÂeE]\VzhIkB[�p¢jwVbcwmfe�_�kWeghIn�a �� �� cwTWaEnuTWVz_zkqa�9lifatjwVzadhfn�atX½e7Xw[�pÀcs�Ue�jDa�Vbh\cDadjDjwmWiWc(e�hfk

<wXÁcw[^iIX >2� ,�� cwTWa �Ue�VbcwVzhW�3iIe�jDadh\cÐklVYXwnd[vygatjDX cwTWa <DXscD[giWi*atk1>nuTWVz_zk l¨_bVzhWa #o#g�IÖ�n¥�,e�hIk�jwaty\VzygaoXd�q�`mIZIXÁa � mWadh\cw_z|�b�z�� B � cwTWa�iIe�jDadh\c7�Ëe¸|Ña�9latndmlcwa}cDTWa <wilcwjuegnda�>�Xw|lXscDad�ndeg_b_,�ÂTWVYnuT&TIe^X�cDTWaEa �¼atn�c([gp$_baoe¸y`VbhW��e7jDa � mWaoXsc�EatXDXweg�ga$Vzh�cwTWaÂXw|lXscDad�¿kla��IhWaok.XÁcwjDmIn¥cDmWjDa�<wVbi¼nA>

l�#^×m#g×4nOpr[^jUcwTWa4nuTIVb_Yk7iIjw[ln�aoXwX�� 7�� cwTWa(iIegjwath^c8cwTWath7�^[\aoXOcD[t<DXÁ_zadatia>��ÂTWVz_ba½cwTIa(nuTWVz_Yk

<Á�Ue�]^atX8mWia> � g�� cwTWa<nuTIVb_Yk&jDate^kWX½cwTWaE�EatXDXDe��ga�VzhI<wVbi¼nA>�e�hIk�egn�cDXmWi*[gh�V{cl¨ag� �1nd[gi`|`VbhI�½[^hWaU[�p¼V{cuX¢[v�Âh.yve�_zmWaoX¢Vbh\cw[

<ÁVzi*ng� Vzi kWe�cDeo>on�� v � cwTWa1nuTWVz_zk<cwTWath7�^[\aoXOcD[t<DXÁ_zadatia>��ÂTWVz_ba�cwTWa(iIegjwath^c

<Á�Ue�]^atX8mWia> � ~ � cwTWa�iIegjwath^c.VbhIXwi*atn¥cuX4cDTWa7jDatXwmW_bct�³e^X4jDatn�[^jDkWatk�Vbh

<ÁVzi*n�>W�l[gpºcwTIa�[gi*adjuevcwVz[gh � \ � XscDadiIXil�#on8cD[blÉ�mn��Ee¸|7Zfa4jDadi*ate�cwaokBXwady^adjue�_*cwVz�EatXVbh�XwmIndndatXDXÁVz[gh��

),Vbhfe�_z_b|&cwTWaËiIegjwath\c1�Ëe¸|&eg_b_z[v� cDTWa<nuTWVz_zk�cw[}nd[ghlÒcDVbh`mWa}VbcDXËhI[gjD�Eeg_Âa�9latndmlcwVz[ghº��i*[^XDXwVbZW_z|��ÂVbcwTW[^mlc7atygadj]`hW[v�ÂVzhW�.cwTIe�c�e�Xw[�pÀcs�Ue�jDa(Vbh\cwatjwjDmWilc�TfegkB[`ntn�mWjDjDatkF�Ô¿kWVzXDn�mIXDXwVb[^h}[�pOcwTIa4cwjuegndVbhI�Ep¨egn�Vz_zV{cs|�VYX�n�[^h\cDe�VzhWaokVzhËcwTIa(�`aon¥cwVz[ghz< %$SÂÅ�Ô�Í�Ì l¨�Á� n >4[�pFcDTWa�x`%$Ç��`Sº[4cwTWa_zVzXÁc<[�p(prmWhIn�cwVz[ghIeg_�_zVb�EVbcDevcDVb[^hIXEhW[gcwatk Vzh cwTWa <D�8mI�^X >iIegjDeg�gjue�iWTº�W�8a.nde�hqe^kWk�cDTWa4pr[^_b_z[v�ÂVbhI�7n�[^���Eath^cuX�[^ha �ËndVbathIn�| � SUTWadjDaÂXÁTI[gmW_Yk�Zfa�e(�EatnuTIeghWVYXÁ�¿pr[gj¢cwjue�hfXspratjwjDVbhI�_zegjw�^a1ZW_b[lnu]lXSlra^� �f�8mIi�cw[7�g�g���8[^jDkWXÂe�c½e�cwVz�Ea�n[�p(Vbhlpr[^jw�Ëe�cwVz[gh prjw[^� cDTWaqnuTWVz_zkÑcw[�cDTWa}iIegjwath^clÀcDTW[gmW�^T�hW[�c.hWatndatXDXwegjwVz_b|&Vbh�cDTWa<jDady^adjuXÁaËklVzjwaon¥ÒcwVz[ghOn%

SUTWadjDa8XwTW[^mW_zk�ZfaÂe�iWjw[^ifatj,nd[gjD[gmlcDVbhIa8iWjD[ln�aoklmWjDal¨eghIe�_z[g�^[gmIX¼cD[E<DXÁ�UcunuTa>on*cD[(eg_b_z[v��jDegiWVYk(cwjue�hIXÁpradj[�p¢n�[gh\cDjw[^_*Z*a�cs��adath}nuTWVb_Yk�e�hIkBiIegjwath^co�

� ,< )(8( � ���8� � 3 =�#'��SUTWVYX�iWjD[ln�aoklmWjDa,VYXºnte�_z_baok1Z`|E<ÁVYXDXÁVz�o>Ml�#^×g×^×on*Vbp\cDTWaOcDjDe^n¥ÒVzhW� #fe��fl�<u�lSÂÅ�Í >W�W�o#g×^�on³VYXÂXwa�ct�7�Q , ,%� ��p�|g[^mWj³iIegjwath^c8VzX$iWjw[lndatXDX�Öil¨V � ag�M< �va�cun �¸VzhWVbc >4n¥�cDTWadh}nte�_z_e<ÁaA9`Vbc >+lr_zVzhWaS$^�o#^�mn%7�Q ,OB-� !�cwTWatjw�ÂVYXwa$_z[\[^]1cwTWjD[gmI�gT <wiWjD[`n�>Upr[gj¢|^[gmWj,iIe�jwÒath\c �b�z� �Ue�]^aÏTWVz�JmWi �z�b� klaon�_Ye�jDa |^[gmWjuXwad_bp

<DXscD[giWi*atka>(eghIk��b�z�¢nde�_z_�<wXw�UcDnuTO>�l ~�[gcwa�kl[�~d!(Snte�_z_j<wXw_batadia>I�¢�ÏT\| %�n�7�Q ,O\-� ��p¢cwTWa�cDjDe^n�VzhW� #feg�ËTIegXÂZ*adath}jwaoXÁadct�f[gjÂcDTWa4jDa�ÒXwmW_bc�[gp�cwTIaBiWjD[ln�aoklmWjDaP<ÁiWjD[ln 9l�4c >}VYX�cDjwmIag�OjDa�ÒcDmWjDhBcD[r<ÁVYXwXwVb�4> 7�Q ,��-� !�cwTWatjw�ÂVYXwa(XÁcDegjÁc�e��\e�Vzh��� ,< )(8, �" � � ,8( � � � � �����#" �<0 � �B BOQ��'� ��pGcDTWa4nuTWVz_zkBiWjD[ln�atXDXUTIe^XY<wXÁcw[giIifaok1>Ee�hIk��b�z�B BOQ�,%� ��p�cwTWaW<D�l�ÐSÂÌ$Äd>�#feg��VzX�hW[gc�Xwa�crlrVÉ� a^�ÓcDTWaife�jDadh\cÂTIegXwhZ' c�hW[�cDVzndatk7cwTWVYX�nuTWVz_zk�_YevcDad_z|yn½�z�b�B BOQ B-� Ô�X�e�h <wegVzkWa�Ò���at�E[gVzjwa�> Xwa�c&cwTWa=<D�`�ÐSÂÌ8Ä`>

#*e��I�O�`adc�<Ámº� m egjD�O{ Å���| >I�Z<Ámº� m egjD�O{ Å4Ö�| >(Xw[1cwTfevccDTWa�nuTWVb_Yk�iIjw[ln�aoXwX�XÁcDevcDmIX.�8[^jDk�VYX.jwadcwmWjDhWatk�cw[cDTWa�iIegjwath^c,B BOQ �-� SUTWa <u�`�ÐSÂÌ$Äd> #feg����e^X7Xwa�co�¿SUTWVYX7�EateghIXcDTIevcEcDTWa�iIe�jDadh\ct�OZ`|�i*adjwpr[gjD�EVbhW��evcE_zategXÁc�cs�8[

<w��egV{cuX >�Vzh XwmIndndatXDXÁVz[ghÏ�ÂVbcwTI[gmlc�e�h`| Vzh\cwadjDygathlÒVzhW�<nte�_z_�[gh <ÁiWcwjuegn�a�>W�lVYXÂhW[gc�ygadjD|<Vzh\cwadjDatXÁcwaok�VbhcDTWa�nuTWVz_zkF�$�l[.jDatXwa�cUZf[gcwT�cwTIa+<u�lSÂÅ�Í >�eghIk<cDTWa<u�`�ÐSÂÌ$Äd> #feg�^X�eghIk�jDad_zategXwa1cwTIa�nuTWVz_zkF�*l ~�[gcwacDTWa7mfXÁa<[gps<wXwa�cwjDmWha>3lrhW[gc <Á�Ue�]^admWia>4n½cw[&nd[g��ÒiI_bat��ath\cÂcwTWa4nte�_z_F[gh <wXw�UcDnuTa>+l $\�^�\��n n��

� ,< )( 3 ���2�# � � 3 � '�3 �SUTWVYX�iWjD[`ndatklmIjwa Vb�EiW_zad�Eath^cuX�cwTIa <ÁilcDjDe^n�a�>LXw|`XÁcwat�ndeg_b_É�������I�7��Fv \-� <Ám�� m e�jD�O{ ��| >�nd[gjDjwaoXÁi*[ghfkWXOcD[.cDTWa �IjDXÁcÂiIe�jue���Òadcwatj(VzhqcDTWar<uÍ >7iWjw[^�gjue�� ndeg_b_zVbhI�BXwa � mWadhfn�ag����pcDTWVYX<VYX* datjw[f�Âe�nuTWVz_zkÎiWjD[ln�aoXwXEVYX7e^XÁ]`VzhW��cw[�Z*acDjDe^n�aok}Z`|}V{cuX½ife�jDadh\ct�FXw[BXwa�c(cwTWa}<D�lSÂÅ�Í > #fe��eghIk�jwadcwmWjDh��~�[gcwa�cwTIe�cBcDTWVzX}nd[lkla&TIeghIkl_zatXBcwTIa�[^hW_b|ÏaA9liW_bVYn�Vbcegn�cwVz[gh(cwTIa8nuTWVz_zk1iIjw[ln�aoXwX�VzXGegXw]gatk½cD[ÂcDeg]gaO�ÂVbcwT4jDatXwifaon¥ccw[�cDjDe^n�VzhW�I��SUTWatjwaËVYX4hW[&jwaoe�_³jDate^XÁ[^h��ÂT`|�adygath�cwTWVYXegn�cwVz[ghEXÁTI[gmW_YkEZfaUcue�]^adhEZ`|4cwTIa�nuTWVz_zk�iWjD[ln�atXDXOe�hfk.hI[�cZ`|�cDTWa³iIegjwath\c�iWjw[lndatXDXd��)Ijw[^�Le�XÁaon�mWjDV{cs|½if[^Vbh\cº[gply\Vzad�Vbc�VYX���[\Xsc�iWjD[gZIegZW_b|�klaoXÁVzjue�ZW_za<cDTIevcËe�nuTIVb_Yk�iWjD[ln�atXDXXwTW[gmW_Yk�[ghW_z|qZ*aËcwjuegndate�ZI_ba�V{pUVbc4�gVzygatX1VbcDX4ifatjw�EVYXwXwVb[^h��

!½h1cwTIa$[�cDTWadjGTIe�hfkF�¸V{plcDTWa8nuTWVz_Yk4egXw]lX¼cw[½Zfa$cwjuegn�aok1e�hIkVYXºcDTWadh�Vz�ghW[^jwaok4Z`|1cwTWaUiIegjwath\ct�¸cwTIaUnuTIVb_Yk�iIjw[ln�aoXwXG�Ëe¸|�m(

Page 67: A Commentary on the Sixth Edition UNIX OS -- Lions

Z*a<ZW_z[lnu]gatk�VzhIkla��IhWVbcwad_z|g�u%¢adjDTIegiIX(cwTWa7ZfaoXsc.Xw[g_zmlcDVb[^h��[gmW_Yk}Z*a�pr[^j�cDTWa}<D�lSÂÅ�Í > #*e��<cD[7Z*a�Xwa�c1[ghI_b|}evpÀcDadjaA9`iI_bVYn�Vbc�egn�cwVz[gh�Z\| �a� � cwTWa�ife�jDadh\c /1��� cwTWa4nuTWVz_YkF�7�� ~ ,-� �`aoe�junuT1cwTWa�<ÁiWjD[lnA>Ucue�ZW_za$_z[`[g]`VzhW�Âpr[gj¢e�iIjw[ln�aoXwX�ÂTWVYnuT �OVzX½XscD[giWi*atk W�ËevcDnuTIatXUcDTWa��gVzygath�iIjw[ln�aoXwXVzkWadh\cwVbpr|`VbhW�}h`mW�.Zfatj�OVYX4e}nuTWVz_Yk�[�p�cwTWa7ndmWjDjwath^ciWjD[`ndatXDX�7��F\���� ��e�Vbcºpr[gjºcwTWai<ÁVzi*n�>�XscDjwmfn¥cwmIjwaOcD[�Z*atn�[^�Ea8e¸yve�Vz_{Òe�ZW_za1V{p¢Vbc�VzXÂndmWjwjDadh\cD_b|<Vzh�mIXwa�7��F\ B(� Í8[gi`|ËcDTWa�iIegjDeg��adcwatjDX�Vzh^cD[r<ÁVzi*n�>B�z�z�7��F\ ~ � jDatXwa�cUcwTWaf<u�`�ÐSÂÌ$Äd> #fe��f�We�hIk��z�b�7��F\ \(� jDa�cwmIjwhBcwTWa4nuTIVb_YkBcw[Ëe}<ÁjDategkW|Ecw[ËjDmWha>EXscuevcDa�7��F\ �(� �`_zadati(mIh^cDVb_�<ÁVzi*ng� Vzi jDa � >UVYXFhW[ghIif[\XÁVbcwVzygajl $`�lÖ¸�mn�7�� ����� Ì�9`cDjDe^n¥c�eÑyve�_zmWaqcDTIevc}VYXBcw[ Zfa�jwadcwmWjDhWaokÏcw[cwTWa}ife�jDadh\c<iWjD[`ndatXDXd�UnuTWaonu]�pr[gj7adjDjw[^jDXt�$mWhI_b[lnu]

<ÁVzi*n�>�e�hIk�<w��eg]ga�mWia>�egh\| iWjw[lndatXDXÁaoXE��egV{cDVbhW�pr[gjs<wVbi¼nA>I�~�[gcwaËcDTIevc�cwTWaP<DXÁ_zadatiIX >B[^h�_bVzhWatXi$IÖ�(^�l��$IÖt×^��e�jDapr[^j.aoXwXwadh\cwVYe�_z_z|�klV �¼adjDadh\c�jDate^XÁ[^hIXt�¢eghIk�nd[gmW_Yk�Z*a�klVbpÀÒpratjwath^cDVze�cwaok�cw[��g[`[lk�a��*aon¥cËZ`|�jwatiW_Yegn�VzhW�I<��1Vzi*n�>&Z`|

< �1Vbi¼n�� Vbi jwa � >.[gh�_zVbhWaoXj$IÖo×g��e�hIk $\�WÖ�#I�� , -( � � � � � � � � � 3'( 83 �SUTWVYX³iIjw[ln�aoklmWjDaÂVzX$a�9latndmlcwaokEZ`|�cDTWa�nuTWVz_zk<iWjw[lndatXDXOmWhlÒklatj1cwTWaËVzh�#ImIadhIndaË[�pÂkWevcueB_za�pÀc4Z`|}cDTWaËiIegjwath^c�Vzh�cwTWaVzi*n�XÁcwjDmIn�cwmWjDag�7 ,aQ �(� ��pu<ÁVzi*ng� Vzi _z[`nu]y>�VYX<XÁadcË�Âjw[^hW�g_z|�pr[gjEcDTWaqn�mIjÁÒjwath\c½iWjD[ln�atXDXt�fcDTWadh�n�atjÁcue�VzhW_z|BcDTWa�jwaoXsc1[�pi<wVbi¼nA>XÁTI[gmW_Yk7Z*a�Vz�ghW[^jwaokF�ÔÂpÀcDadjM<wXÁcw[^ia>*l�$^�^�\��nFnte�_z_zX<wXw�UcDnuTa>I�ocwTWaUnuTWVYkla$iWjD[�ÒndatXDX�VzX�jwaoXscue�jwcwaok�Z`|�[ghWa<[gp8cDTWjDada7nte�_z_zX�[^h <wXwa�cDjwmWhO>�ÂTWVYnuTÏ_zate¸yga�cDTWa <u�lSÂÅ�Í >�eghIk�<D�l�ÐSÂÌ$Äd> #fe��\XËVbhcDTWa4XscuevcDa(VzhIklVYnde�cwaok �

�WSÂÅÂÍ �`�ÐSÂÌ8Ä Vzi¼n�� Vbi¼n _z[lnu]aA9`Vbc lk#^�^�N$4n Xwa�c Xwa�c egjwZIV{cDjDegjw|�Ue�Vbc lk#m#IÖt�on jDatXwa�c jDatXwa�c egjwZIV{cDjDegjw|ilcDjDe^n�a l�$IÖ�(m(on Xwa�c jDatXwa�c iIjw[^ifatjw_z|7Xwa�c��h1cwTIaOcwTWVzjuk(ntegXwaS<ÁilcDjDe^n�a�>8�ÂVz_z_ge�_z��e¸|lXFXwa�ce<wVbi¼n�� Vbi _b[lnu]y>iWjD[gi*adjD_z|g�gZ*a�pr[^jwa�cwTWa(nuTWVb_YkËVYX³jDatXÁcDegjÁcDatkF�\XÁ[�cDTIevc8cwTWatjwaVYXËcDTWadhÐhI[ nuTIe�hfn�a}[�p�cDTWa}cDatXÁcB[gh $`���^×�Vzh\cw[�<wVbi¼nA>p¨egVb_zVbhI�I���h4cDTWaUXÁaon�[ghfk4nde^XÁa^�o�ÂTIadjDa³cwTIa8iIegjwath\cGTIe^XºVz�ghW[^jwaokcDTWa4nuTWVz_zkF� <ÁiWjD[ln 9l�4c >��ÂVz_b_FhIadygatjÂVbh�p¨e^n¥c�Z*a4nde�_z_zatkF���|.aA9latn�mWcwVzhW�1cwTWa½Xscuevcwat�Eadh\c*<ÁjDa�cDmWjwh�l¨�on > ^[ghE_bVzhWa

$`�lÖt�I��<ÁiWjD[ln 9l�4c >.pr[gjun�atXY<DXscD[gia>�cD[Ë_b[`[^i�Zfegnu]<cD[Ë_bVzhWa$\�^���I� ��hÐcwTIa�ntegXwa&�ÂTWatjwa�cwTIa�ife�jDadh\cBTIe^X�e�_zjwaoegkl|klVzatk��lcwTWa4cwatXÁc�[gh�_zVbhIaS$^�^�^�4�ÂVz_z_FcwTWath�p¨e�Vz_ �*e�hIk�eËndeg_b_[^h@<wa�9lV{c >ul $^�o#^�on³�ÂVz_b_ºjwaoXÁmW_bct�

7 , � �'� �\cw[^jwa4cwTWa.y¸eg_bmIa4[�p*<wVbi¼n�� Vbi jwa � >EZ*a�pr[^jwa�jwaoXÁadcÁÒcDVbhI�ÑcDTWa�_ze�cÁcwatjt�+<Á�Ue�]^aqmWia>ÑcDTWa�ife�jDadh\ct�(e�hIkXwad_zatn�cÂcwTWa�hIa�9`c�egn¥cDVb[^h}egX�VbhfklVzntevcDatkF�SUTWa�yvegjwVz[gmIX$egn¥cDVb[^hIX$egjwa½egkla � mfevcwat_b|�a�9liW_Ye�VzhWaokEVbh�`aon¥cwVz[gh@< %8SÂÅ�Ô�Í�ÌIl¨�Á� n >.[gpºcDTWa�x%$Ç��\�ÂVbcwT�cDTWa1[ghWa

� mIe�_zV �fnde�cwVz[ghLcwTIe�c�ntegXwatX�Ö^�.�Îe�hIk�$I�.�Îegjwa kW[`ndmlÒ�Eadh\cwaok�cDTWaB�ÂjD[ghI�&�Ue¸|�egjw[^mWhIk l¨V � ag� <w� >&eghIk�<DÄ`>XwiIegndatX�jwaoXÁi*atn�cwVzygat_b|^�lhW[�cp<DÄ`>Ee�hfk3<w� >#* n¥�

��×

Page 68: A Commentary on the Sixth Edition UNIX OS -- Lions

�E��� ������� E � � ���������� �� �;�'* �:� � �.�:��$����* ���(% =6� ��� #$��� � � ���'@�3(���$�3���@'3���@)�)*+���� ����!#)�:� =��(�)�7����� ������� �8���8�*B� ����% %�� ���.���>�*���� '�'4�6���:�0�6�@)��* ���� ���� ��*B� � 3���%����8�)������"��>������;�$���� ��� �� �:�

��9@)* � �* ��� �>= ��@�@)���� /����%/�����6�$* �(���� ��8����%�* ��� ��*B���������� �� %&� ��� , " �:�(4�6��� � �������� ��6��" ��1������*B&%�3��:�:� @)* ��:�(%�3'* �:�9� �*&������3����

���$%A��������@'3�" ���� ���)� �����!" ��* �� !���� #����>��$8#'3�� �)* �(4

� � � � ��� � ��� � � ��*+* �����x½~���¾��g_bVz]gaÂe�_z_`cwVz�Ea�Ò�XÁTfe�jDVbhW�(XÁ|lXÁcwat�EXt�geghIk.Xw[g�EaU��mI_{ÒcDVbiWjD[g�^jDeg�E��VzhW��XÁ|lXÁcwat�EXEmfXÁaoXr<ÁiWjD[g�^jDeg�AXw�Ue�iWiWVzhW�4>l e�_YXÁ[�nde�_z_zatk�<wjw[^_b_zVzh �¸jD[g_z_{Ò�[gmWc >on½cD[�XwTIegjwa7cwTWa�_zVb�EVbcwatkjDatXw[gmWjun�a�[�p$cDTWa��EegVbh�iWT`|lXÁVYndeg_,�Eat��[^jw|}eg��[^hW�BXwady\ÒatjDeg_FiWjw[lndatXDXÁaoXd�

%³jD[ln�aoXwXwatXB�ÂTWVYnuTLegjwa�XÁmfXÁi*adhIkWatk��Ee¸|ÏZ*a�XÁat_baon¥ÒcDVby^ad_z| <DXÁ�Ue�iWi*atk [^mlc >ÐZ\|L�ÂjDV{cDVbhW�ÐcwTWatVbj�kWevcueÐXwad��Ò�Eadh\cuX3lrVzhInd_bmIkWVbhW� cwTWa&<Ái*adj&iIjw[ln�aoXwX&kWevcuem>on�Vzh\cw[ e<DXÁ�Ue�i�e�jDatem>.[gh�klVYXÁ]SUTWaÐ�ËegVbh?�Ead�E[^jw|¿egjwaoeL�ÂTWVznuT?�UegX�[`ntn�mWiIVbaoknte�h cwTWathÏZfa&jwaoegXDXÁVz�ghWaok�cD[�[�cDTWadj7iWjw[lndatXDXÁaoXd���ÂTWVYnuT� mWVbcwa8iWjw[^ZIe�ZI_b|(�ÂVb_z_\Zfa�<wXw��egiWifaok1VbhO>ÂprjD[g�LcwTWa�<wXw��egiegjwaoem>W�Ç}[\XscO[�pfcwTWaÂklaon�VYXÁVz[ghfXGjDad�\e�juklVzhW�E<DXÁ�Ue�iWiIVbhW�½[gmlc >W�eghIk�eg_b_,cDTWaËklatndVzXwVb[^hIX(jwat�^egjDklVzhW�@<wXw��egiWiWVzhW�7Vzha>W�Ge�jDa�ËegkWa�Z`|�cwTWa�iWjD[`ndatklmIjwat<wXDnuTWatk1>I�E<u�`��egiWiWVzhW�<Vzha>BVzXTIeghIkl_zatk Z`| e�klVzjwaon¥c7nte�_z_*l ���o#�$Fn�[^h cDTWaqiWjD[ln�aoklmWjDa<DXÁ�Ue�ia> l �WÖt×g�4n¥�`�ÂTWatjwaoegX�<wXw��egiWiWVzhW��[^mlc >�VYX8Tfe�hIkl_zatkZ`|7eEndeg_b_cl ���\�N$Fn³[^h@< 9lXw�Ue�ia>+l $4#g�m(4n¥�

)W[^jUcwTW[\XÁa�egjDnuTIegad[^_b[^�gVYXscuX$�ÂTW[E_zVb]^a(cw[Eif[^hIklatjUcwTWa<wZf[^hWatX >E[�pOategjw_zVzadjÂygatjDXwVz[ghIXU[gp¢[^ifatjDe�cwVzhW�<Xw|`XÁcwat�ËXd�fV{cXwadat�EX�cwTIe�c,[^jwVz�gVzhIeg_b_z|E<DXwnuTWaok1>Ândeg_b_zatkb<wXw��egia>ÂklVzjwaon¥cw_z|cD[3<wXw�Ue�i�[gmlc >ËiWjD[ln�atXDXwatXt�IjuevcwTIadj�cDTIe�h}y`VYeP< 9lXw�Ue�ia>I�SUTWa�a�9`cwjue�iWjD[ln�aoklmWjDa3lr[^hWa&[gp�XÁatygadjue�_�cw[ÑZfa&pr[gmWhIkVzh cwTWa �f_ba <Ácwa�9`co� n�>on�TIe^XEZfatadhÏhWaon�atXDXwV{cuevcwaok Z`| cwTWaVz�EiW_bat�Eadh\cDe�cwVz[gh�[�pGcwTWa4XwTIe�jue�ZI_ba+<scDa�9`c�XÁat�g�Eadh\cuX >I���cºVYX�VzhIXÁcwjDmIn¥cDVby^a¢cw[ÂatXÁcwVz�ËevcDaOTW[v���.mInuT1a�9`cwjueÂn�[lklaTIe^XÂZ*adadh&hWatndatXDXÁVbcDe�cwatk�Z`|BcwTWa�cDa�9`c½Xwad�^��ath\c�prate�cwmWjDa �VzhI<ÁcwaA9\co� n�>Begjwa.pr[gmIj(iIjw[ln�aoklmWjDatX < 9WXw��egia>W�q< 9Weg_b_z[lnA>W�< 9\prjDada�>qe�hfk < 9Wndntklatn�>W�¢�ÂTWVYnuT��Ëe�hWVziWmW_YevcDaBegh e�jDjDe¸|[gpºXscDjwmIn�cwmWjDatX�ndeg_b_zatkP<scwaA9`c >W�`�ÂTWVYnuT<VYXUklatnd_zegjwaokEVbh7cwTWa�I_za <ÁcwaA9\co� TO>W��Ô½kWklVbcwVz[ghIeg_,nd[`kWa�TIe^X�e�_YXw[ËZfatadh�e^kWklaokcD[}<DXÁ|lXw_ � nA>�e�hfk@<DXÁ_zi�� nA>I��13 �� � ��� $� ���� ��� �

SGa�9`c�XÁat�g�Eadh\cuX�e�jDa Xwad�^��ath\cDX��ÂTWVYnuT3nd[gh\cDegVbh3[ghW_z|<wiWmWjDa�> nd[lkla�eghIk kWe�cDeÑV � ag�Mnd[lkla�eghIk kWe�cDeÑ�ÂTWVYnuTjDad�Ëe�VzhÏmWhIeg_{cDadjDatk cDTWjw[^mW�gTI[gmlcËcDTWa&iWjD[g�^jDeg� a�9laon�mlÒcDVb[^h��,Xw[�cwTIe�c4cwTIad|&�Ëe¸|qZ*a7XwTIe�jDatk�e��E[^hW�^XÁc4XÁatygadjue�_iWjD[ln�aoXwXwatX�a�9laon�mlcDVbhW��cDTWa4Xweg�Ea(iIjw[^�gjue����SUTWaBjwaoXÁmW_bcwVzhW�}aon�[ghI[g�EVbaoX4Vzh�XÁifegn�aBnde�h�Z*a � mWVbcwaXwmWZIXÁcDegh^cDVzeg_��ÂTWath}�Eegh`|7mIXwadjuXU[�p¢cwTIa�XÁ|lXÁcwat�/e�jDa�a�9`Òaon�mlcDVbhW�BcwTIaEXDe��Ea.iWjw[^�gjue�� XÁVz��mI_{cue�hWat[gmIXw_b|�a^� �f�1cwTWaaoklV{cD[gjÂ[^jUcwTWaf<DXÁTWat_b_ >W�

��hlpr[gjD�ËevcDVb[^h�e�Z*[gmlcGcwaA9\cOXwad�g�Eath^cuX��.mIXsc,ZfaUXÁcw[gjDatkVzh<e�n�adh\cDjDeg_l_b[lnde�cwVz[gh��\e�hIkETIadhIndaUcwTWa�aA9lVzXÁcwathIn�aÂ[gp*cDTWa<scDa�9`c >�egjwjue¸|g�LÌ$e^nuT iIjw[^�gjue�� �ÂTWVYnuTÐXwTIe�jDatXËe�cDa�9`cXwad�g�Eath^c(]gatadiIX(e<i*[gVzh\cwadj½cw[7cwTWaEn�[^jwjDatXwi*[ghIklVzhW�ËcDa�9`ce�jDjue¸|�at_bat�Eadh\c�Vbh <wm�� m cDa�9`cwiO>W�SUTWa.cwa�9`c4Xwad�g�Eath^c(VzX1XÁcw[^jwaok&evc(cwTIa.Z*ad�^VbhWhIVbhW��[�pcwTIa1nd[lkla �I_zag�³SUTWa �IjuXscÂiWjD[g�^jDeg� cw[EZ*ad�gVzh�a�9latndmlcwVz[ghndegmIXwatX¢e�n�[^i\|�[gpfcDTWaUcwaA9`c$XÁat�g�Eadh\c¢cw[�Z*aÂ�ËegklaUVzh.cDTWa<wXw�Ue�ia>.e�jDateW��ÏTWadh�XÁmWZfXÁa � mIadh\cw_z|BhI[ËiWjw[^�gjue��ËXÂe�jDa�_za�pÀc½�ÂTIVznuTjDa�pradjDadhfn�a1cwTIa�cwaA9\c(XÁat�g�Eadh\ct�IcwTWa�jwaoXÁ[^mWjDndatXÂegZIXÁ[^jwZ*atkZ`|7cDTWa.cwa�9`c1XÁat�g�Eadh\c(egjwa�jDad_zate^XÁaokF��SUTWa.�Ëe�Vzhq�Ead��Ò[gjD|ËjDatXw[gmWjun�a½VzXUjDad_zate^XÁaok<�ÂTWathWady^adj�cwTWatjwa�egjwa(hW[EiWjD[�Ò�gjue��ËXº�ÂTWVznuT�jwadpradjDadhIndaOcwTWa8cwaA9`c¢Xwad�^��ath\c,n�mIjwjDadh\cw_z|(Vbh�Ëe�Vzh&�Ead�E[^jw| FcDTWat<DXÁ�Ue�iO>7e�jDate7VzX(jDad_zate^XÁaok}Vbh��gathlÒadjue�_��ÂTWathWady^adj4cDTWadjDa�e�jDa7hW[�iWjD[g�gjue��ËX�_za�pÀcËjDmWhWhWVzhW��ÂTWVYnuTBjDa�pratjwathIn�a(cDTWa1cwaA9\c�Xwad�^�Eadh\ct�SUTWaÂh`mW��Z*adjuX¢Vzh�aoegnuT�[�p*cwTWaoXÁaÂXÁcDe�cwatX$e�jDa�klathW[�cDatkZ`|I< 9 ntn�[^mWh\c >}e�hfk < 9 n�[gmIh^c >}jDatXwifaon¥cwVzygat_b|^�}Ä�aon�jDa�Ò�Eadh\cwVzhW�BcwTWaoXÁaEh`mW�.ZfatjDX(VYX½Tfe�hIkl_zatk�Z`|�cwTWaEjD[gmlcDVbhIatX< 9WntndklaonA>�e�hfk�< 9`prjwata�>��ÂTWVYnuT eg_zXw[�cDeg]ga&nte�jDaq[�p�jDa�Ò_zategXwVzhW�4jDatXw[gmWjun�aoXO�ÂTWadh<cwTWa(n�[gmIh^cuX³jDate^nuT dadjD[I�ql�< 9Wn¥ÒndkWatnA>.VYX�nte�_z_baok<�ÂTWathWady^adjUe�iWjw[^�gjue��3VzXUXw��egiWi*atk<[^mlc[gj8cwatjw�EVzhIevcDatXt�M< 9`prjwata�>.VzXUnte�_z_baok<Z`|P<ÁaA9lV{c >4�ÂTWathWady^adje�iWjD[g�gjue��3cDadjD��VzhIe�cwatXt� n�13= )( � � � � � �� 3 �%³jD[ln�aoXwX �.�.aA9latn�mWcwatXY<DXwnuTIatk1>I�G�ÏTWathBVbc�VYXUhW[�cÂ�Ue�VbcÁÒVzhW��pr[^j�cwTIa�nd[g�EiW_za�cwVz[gh�[�pIe�h�VbhWiImlc �v[gmlcDiWmlc¢[gi*adjuevcwVz[ghcwTfevc¢V{cOTIe^XGVzhWVbcwVYevcDatkF��VbcOXÁi*adhIkIX¢��[\Xsc¢[�pfV{cuXºcDVb�EaU�Ue�VbcÁÒVzhW�EVbh�[ghIa([gpGcDTWa1pr[g_z_z[v�ÂVbhW�EXwV{cDmIevcDVb[^hIX��T � � �N����� ����� ~�[^hWa³[�p\cwTIa³iWjD[`ndatXDXÁaoX*�ÂTWVznuT4egjwaOXw��egilÒi*atk<[gmlc$VYX8jwaoegkl|�cw[4jDmWh��`XÁ[4cwTIe�c³cwTWatjwa�VzX$hW[�cDTlÒVzhW�Bcw[�kl[I�1SUTWaEXÁVbcwmIe�cwVz[ghq�Ëe¸|�Z*a�nuTIeghW�gaok}Z`|e}nte�_z_³cD[ <Á�Ue�]gatmWia>I��[gj�cD[ < 9WXw��egia>�nde�_z_zatk�Z`|atV{cDTWadjE<ÁhWat�ÂiWjw[ln�>�[^j�<wa�9liIeghIk1>W�� � � ����������� SUTIadjDa�VzX�e�c�_baoegXÁc�[ghWa�iIjw[ln�aoXwX�XÁ�Ue�iWi*atk[^mlc(eghIk}jDate^kl|<cD[7jDmWh��*ZWmlc½Vbc½TfegXwhZ' c(Zfatadhq[^mlc�E[^jwa(cwTfe�hf#ËXÁaon�[^hIkWXÂe�hfk �¸[^j�hI[ghWa�[gpGcDTWa�iWjD[�ÒndatXDXÁaoX�iWjwaoXÁath\cw_z|�Vzh �EegVbhÑ�Ead�E[gjD|�VzX�VzhIegn�cwVzyga[^j½TfegX½ZfatadhqcDTWadjDa��E[^jwa�cwTIegh��<Xwatnd[ghIkIXd�1SUTWaXwVbcwmIe�cwVz[ghq�Ëe¸|�Zfa�nuTIe�hW�^atk�Z`|�cwTWa.a� Ëmy9lVz[gh}[�pcDVb�Ea7e^X��Eate^XÁmWjDatk�Z`| <Dn�_z[lnu]F>�[^j4Z`|�e}ndeg_b_³cw[

<DXÁ_zadatia>W��ÏTWath�atV{cDTWadjÂ[gpGcDTWatXwa�XÁVbcwmfevcwVz[ghfXUcwatjw�EVzhIevcDa ���� gO\-� �ÏV{cDT�cwTWaËiWjD[ln�aoXwXw[gj(jwmIhWhWVzhW�}evc�iWjDVb[^jwVbcs|&XwV:9F�Xw[�cwTIe�c1cwTWaËn�_z[lnu]&ndeghZ' c1Vzh\cwatjwjDmWilc4e�hfk&nuTIeghW�gayveg_bmWaoX4[gpY<wi cwVz�Ea�>I�,eqXwategjDnuT�VYX��Ëegkla<pr[gj4cDTWaiIjw[ln�aoXwX.�ÂTWVYnuT�VYX.jDate^kl|�cw[�jwmWhÑe�hIk TIegX.ZfatadhXw�Ue�iWi*atkB[gmlcÂpr[^jUcwTWa�_z[ghI�gatXÁcUcwVz�Ea����Ov v-� ��pOcwTWatjwa�VzX�hW[7XwmInuT}iWjD[`ndatXDXÂcDTWadh&XwVbcwmIe�cwVz[ghqÔTI[g_YkWX�

�^�

Page 69: A Commentary on the Sixth Edition UNIX OS -- Lions

��� ~ v(� �`aoe�junuTËpr[gj�e.�Ëe�VzhB�Ead�E[^jw|Ëe�jDate.[�p,egkla � mfevcwaXÁV� da<cw[qTW[^_zk�cwTWa�kWevcueqXÁat�g�Eadh\co�}��p�e�h�egXDXw[`ndV{ÒevcDatk�cDa�9`cEXwad�^�Eadh\c��.mIXÁc�Z*aBiIjwaoXÁath^cEe�_YXÁ[�ZWmlcVzX½hW[gc1ndmWjwjDadh\cD_b|�Vzh��Ëe�Vzh&�Eat��[^jw|^�*cwTWaEe�jDate7VzXVbhfn�jDategXwatk7Z`|ËcwTWa4XwV� da�[�pGcwTWa1cDa�9`c�Xwad�g�Eath^c,���O\�,-� ��p�e�hÑe�jDate}[gp�egkla � mfevcwaBXÁV� daBVzX�e¸yve�Vz_zegZW_ba<cwTWaiWjD[g�gjue��?ZIjDeghInuTWatX8cD[z<spr[gmIhIkI��>ulÉ���m#IÖ�n��el¨~�[gcwacwTIe�c7cDTWa&iWjD[g�^jDeg� kl[`aoX<hW[gcBTIeghIkl_zaqcwTIa�nde^XÁa�ÂTWadjDa<cDTWadjDa�VzXEXwm2�<n�Vzadh\cEXwiIe^n�aBpr[gjEZf[gcwT cwa�9`ce�hIk�kWevcueÎXÁat�g�Eadh\cDX�ZWmWcqVbh klVYXscDVbhIn�c&e�jDate^XB[gp�Ëe�VzhÑ�Ead�E[^jw|^�Ð��[^mW_YkÑVbc7Z*a}�8[^jÁcDTÑ�ÂTIVb_za}cw[a�9`cwathIk7cwTWa4nd[`kWa1cw[Ën�[vy^adj�cwTWVYXÂi*[^XDXÁVzZWVz_bVbcs| %�n������ Q(� �`aoe�junuT7pr[^j�eEiWjw[lndatXDXU�ÂTWVznuT�VYXÂVzh��ËegVbh}�Ead��Ò[gjD|g�fZWmlc1�ÂTWVznuT}VYX½hW[�c½cwTWa�XwnuTWaoklmW_zadj½[gj�_z[lnu]gaok

lrVÉ� a^��e�_zjwaoegkl|�ZfatVbhI�BXw��egiWifaok}[gmWc n¥��eghIk}�ÂTW[\XÁaXscuevcDa(VYXY<D�l�&Ô��sSj>E[^j�<u�W�lS!d%c> l¨ZWmlc ���a�<D�W�WƺÌ$Ìc% >4ncl¨V � ag�,cDTWa�iWjD[ln�aoXwXOVYX³�Ue�VbcwVzhW��pr[^j8eghady^adh\c�[�pO_z[v� iWjwaon�aokladhIndag�*[gj�TfegX�XÁcw[^iWi*atkqklmIjÁÒVbhI�1cwjuegn�VzhW�pl XÁata½Í8TIe�ilcDadj$SUTIVbjwcwatadhOn n¥�¢��pºXÁmfnuTEeiWjD[`ndatXDX�VzX�pr[^mWhIkF�W�^[�cD[E_bVzhWa����\�lÖ^�gcD[<XÁ�Ue�i7cwTWaVb�Ëeg�ga([gmlco�~�[gcwaLcwTIe�cÏcwTWatjwa Xwadat�EX cD[ Zfa e3ZWVYegXÎTWatjwae��\e�VzhIXsc�iWjD[`ndatXDXÁaoX��ÂTW[^Xwa�<ÁiWjD[lnA>Ðath\cwjDVbaoX�e�jDaategjw_z|ËVbh�cDTWaf<ÁiWjD[lnA>�e�jDjDe¸|

,OQOQ B(� ��p¢cwTWa�Vz�Ëe��^a1cw[ËZ*a4XÁ�Ue�iWi*atk�Vzh�TIegXÂZ*adath}[gmlc_baoXwX�cDTIe�hu#ËXwatn�[^hIkWXt�\cwTWath�XwVbcwmIe�cwVz[gh}�ÏTW[^_zkWX�,OQOQ�g-� �`aoe�junuT}pr[gj(cwTIa�iIjw[ln�aoXwX½�ÂTWVYnuT&VYX(_b[\egklaokF�FZWmlcVzX�hW[gcBcDTWa�XwnuTIatklmW_zadj�[gj�_z[`nu]^atkF�½�ÂTW[^Xwa�XscuevcwaVzX+<u�lÅUx�~>7[gju<D�I�lƺÌ8Ì % >fl¨V � ag��jwaoegkl|�cD[BjDmWh��[gjË�Ue�VbcwVzhW��pr[gj<eghÎadygath\c<[�p�TWVz�gTÎiWjDatn�aokladhfn�a�ne�hIkq�ÂTWVznuT�TIegX½Z*adadh�Vbh��Ëe�Vzhq�Ead�E[gjD|�pr[gj½cwTWa_b[^hW�gaoXsc�cwVz�Ea�,OQZ�yB(� ��p¢cwTWa�iWjw[lndatXDXÂVb�Ëeg�ga1cw[ËZ*a�Xw��egiWi*atk�[gmlc½TIegXZfatadhËVzh<�Ëe�VzhË�Ead�E[gjD|�pr[^j$_zatXDXOcDTIe�h7��Xwatnd[ghIkIXd�cwTWath}XÁVbcwmIe�cwVz[gh��ÏTW[^_zkWXt�

SUTWa7nd[ghIXÁcDegh^c}<D�m>�TWadjDatl e�_YXÁ[}cDTWa3< #m>}[^h�_bVzhWa���^�m#on�VzXOXw[g�Eat�ÂTIevcOe�jDZWVbcwjue�jD|g��)I[gj³Xw[g�Ea8jDate^XÁ[^hcwTWa�iWjw[^�gjue��E�EadjÂTIe^X�klatiIe�jwcwaok�prjw[^�/TIVzX½mIXwmIe�_iWjuegn¥cDVznda�[�p¢hIe��EVzhW�7XwmInuT}n�[^hIXscue�h\cDXÂcw[<at��iITIevÒXÁVYXwa½cDTWadVzjÂ[gjDVz�gVzhIX�,OQ , ,-� SUTWaEiWjD[ln�atXDX1Vz�Eeg�ga�VzX #fe��^�gatk�egX1hW[gc�_b[\egklaoke�hIkBVYXÂXÁ�Ue�iWi*atk�[^mlcÂmIXÁVzhW�r< 9WXw��egia>+l $o#^�m(4n¥�

~�[gcwaEcwTfevc�cwTIaz<D�W�`��Ô% > #*e���VzX4hW[�c�Xwa�c4TWatjwaZfaondegmIXÁaBcwTIa�iIjw[ln�aoXwXEXw��egiWi*atk�[^mlcËVzX�hW[gcEcwTWan�mWjDjDadh\c�iIjw[ln�aoXwXt�jlÉÍ$ps�³_zVzhWatX1Öo×g�\�l�W�g��(^�on%,OQOB�,-� ÅÂaoegkËcDTWa½cwa�9`cÂXÁat�g�Eadh\c�Vbh\cw[��Ëe�Vzh7�Ead�E[^jw|EVbphWatndatXDXwegjw|^��~�[gcwaBcwTIe�c�cDTWa}e�jD�gmW�Eath^cuX4pr[^j�cwTWa

<wXw��egia>4iIjw[ln�aoklmWjDa�e�jDa � egh�egkWkljDatXDX1�ÂVbcwTWVzh�cwTIa7XÁ�Ue�i�egjwaoeB[gpUcwTWaklVYXw]�

e½�EegVbh��Ead�E[gjD|�egkWkWjwaoXwXqlr[^jDkWVbhIeg_`h\mI��Z*adj[�p¢es#^���8[^jDkBZW_z[lnu]yn% e�XÁV� dabl¨h`mW��Z*adj4[gp #\�7��[gjuk�ZW_b[lnu]lX(cw[}Z*acwjue�hfXspratjwjDatkan% e¿kWVbjDatn�cwVz[ghMVzhIklVYnde�cw[gjWl�<D� Å�Ì$Ô�Ä � �.Ö�>klathW[�cDatXY<wkWVzXw]Ëcw[Ë�ËegVbh��Ead�E[gjD|y>on�

,OQa7 ,%� �`�Ue�i�Vbh�cwTIa4kWevcue�Xwad�^�Eadh\c�e�hIk��b�z�,OQa7 7(� ÅÂad_zate^XÁa�cwTWaËklVYXw]qXÁ�Ue�i�e�jDateËcD[7cDTWaËe¸yve�Vz_zegZW_ba_zVYXsco�Ëjwaon�[gjuk cDTWaÎ�Ëe�VzhÓ�Ead�E[^jw|¿e^kWkljDatXDXd�EXwa�ccDTWaE<u�lÆ�!�Ô�Äd> #feg��e�hIkEjDatXwa�c$cwTWa(egndndmW��mI_ze�cwatkcDVb�Ea�VzhIklVYnde�cw[gjo��13= ), � � � � � 3', ' ���7�B ~ B-� ��ps<Á[g_YkWXwV( ta�>�kWe�cDe��UegX1hW[gc.XÁmIiWiW_zVbaokF�GmfXÁaËcDTWandmWjDjwath^c¢XÁV� da8[�plcDTWa�kIevcDe½XÁat�g�Eadh\c¢XscD[gjDatk1Vzh <ÁmO> 7�B ~ g%� ),VbhIk�e}XwiIe^n�aËVzh�cwTWa7kWVzXw]�Xw��egi�e�jDateBpr[gj�cDTWaiIjw[ln�aoXwX�' X�kWevcue}XÁat�g�Eadh\ct�}l¨~�[�cwaEcDTIevc�cwTWa<klVYXw]Xw�Ue�i<e�jDate1VYX�e�_z_b[lnde�cwaokEVbhËcDadjD�ËX³[�pG�WÖo�1nuTIegjDe^n¥ÒcDadj�ZI_b[lnu]lX n%7�B ~ \-� < 9Wndntklatn�>fl $o$^×g�4nUVYX½nte�_z_baokPlrmWhfn�[ghfklV{cDVb[^hIe�_z_z| * ncD[�klaon�jDategXwa,cwTWa8n�[gmIh^co�oe^XwXw[ln�VYevcDatk½�ÂV{cDT1cwTWaOcDa�9`cXwad�^�Eadh\ct�^[�p¼cwTWa½h`mW��Z*adj8[�pj<ÁVzhË�Ëe�VzhË��at�E[gjD|F>iIjw[ln�aoXwXwatX½�ÂTWVYnuT�jDa�pratjwathIn�a.cwTfevc1cwaA9\c4Xwad�^��ath\ct���p¢cDTWa.nd[gmWh\c�Z*atn�[^�EatX tadjD[I�lcDTWa4�Ëe�Vzh}�Ead�E[gjD|egjwaoe�[`ntn�mWiIVbaok�Z`|}cDTWaËcDa�9`c�XÁat�g�Eadh\c�VYX4XÁVz�EiW_z|jDa�cDmWjDhWatk�cD[ËcwTWa�e¸yve�Vz_zegZW_ba4XwiIe^n�ag�Sl SUTWadjDa�VzX½hW[hIadatkÏcw[Ñnd[gi`| V{c�[gmlco��XwVbhIndag��e^X<��a�XwTIe�_z_1XÁatag�cDTWadjDa��ÂVz_b_GZfa4eËnd[gi`|7e�_zjDategkW|<Vbh�cDTWa4klVYXÁ]�XÁ�Ue�iegjwaoeon%7�B ~ �-� SUTWa�<D�lÆ�!�Í�ÃS> #feg� VzX�Xwa�c��ÂTWVz_baÎcDTWaÎiWjD[�ÒndatXDX7VYXBZfatVbhW� XÁ�Ue�iIifaokÏ[gmlco�3SUTIVzXBVzX7cw[ÑiWjDa�Òy^adh\cE<DXwnuTWaok1>�prjD[g� evcÁcDad�EilcDVbhW�7cw[P<DXÁ�Ue�i�[^mlc >e�iWjD[ln�atXDX4�ÂTIVznuTÑVzXEe�_zjDategkW|�Vzh�cDTWa�iWjw[lndatXDX4[�pZ*adVzhW�=<wXw��egiWifaok [gmlc >W� l¨SUTWVYX�nde�hÏ[^hW_z|ÑTIegilÒi*adhËVbpj<wXw��egiWiWVzhW�1[gmlc >1��e^XOXscue�jwcwaok.VzhWVbcwVYe�_z_b|�Z`|Xw[g�Ea1jD[gmlcDVbhWa([�cDTWadjUcDTIe�h <wXDnuTWaok1>4a^� �f�OZ\|z<wa�9`Òife�hIk1>4n�7�BO\�,%� SUTWa��ËegVbhq�Eat��[^jw|�Vz�Eeg�ga4VYX½jwat_baoegXwatk�a�9Wn�atilc�ÂTIadh < 9WXw��egia>�VYXÂndeg_b_zatkBZ`|3<whWad�ÂiWjD[lnA>27�BO\ \-� ��pP<ÁjDmWhW[^mlc >ÏVYX�XÁadct� <DXwnuTIatk1>ÏVYX���egV{cDVbhW�Ðpr[gjXw[g�EadcwTWVzhW��cw[z<DXÁ�Ue�iBVbha>I�WXÁ[E�Ue�]^a(Vbc�mWi���13= 3 � � � ����� 3 3',8,��< 9Weg_b_z[lnA>�VYX�nde�_z_zatkÏZ`| <ÁaA9latnA>Il�#IÖ�#g�4n¥���ÂTIadh�e hWad�iWjD[g�^jDeg�¿VYX$Z*adVzhW��VzhWVbcwVYevcDatkF�\cw[.TIe�hfkl_ba�cwTWa(e�_z_b[lntevcwVz[gh[�ps�f[gj½_bVzhW]`VbhI�Ëcw[f�WcwTIa4cwaA9`c(Xwad�g�Eath^co�ÂSUTWa�e�jD�gmI��ath\ct�<ÁVzia>I�gVYX³e�i*[gVzh^cDadjOcD[�cwTIap<Á�E[lkla�>1[gp¼cwTWa�nd[lkla �I_zag�OÔ�ccwTIa1cwVz��a�[�p,cwTWVYX�nte�_z_ �R<wm�� m e�jD�O{bÖ�| >.nd[gh\cDegVbhfX�cwTWa�cDa�9`cXwad�g�Eath^c�XwV( ta1Vbh�Z`|\cwatXt�

�WÖ

Page 70: A Commentary on the Sixth Edition UNIX OS -- Lions

7 7 B �(� ��p³cDTWadjDa.VYX½hW[7cDa�9`c�XÁat�g�Eadh\ct�¼jDa�cDmWjwh&Vb�E�EatklVbÒevcDad_z|�7 7O7���� Æ�[`[^]�cwTWjD[gmW�^T&cDTWaz<scDa�9`c >�egjwjue¸|�pr[gj�Z*[�cwT�eghmWh`mIXwatk�ath^cDjw|�eghIk�e�h adh\cwjD|�pr[gj.cwTWaBcwaA9\cËXwad��Ò�Eadh\ct�,��pIcDTWaÂ_ze�cÁcDadj³ndegh.Z*a�pr[gmWhfkF�^kl[(cDTWaUZf[`[g]\Ò]gatadiWVzhW�Ee�hIk��g[.cw[z<w[gmlc >ul $m$l��$Fn�7 7�g ,-� Ô�jDjue�hW�^aEcw[&nd[gi`|qcDTWa<cDa�9`c.Xwad�g�Eath^c.Vbh\cw[qcwTWaklVYXÁ]7Xw�Ue�iBegjwaoeW�,��hWVbcwVYe�_zVzXwa(cwTWa�mWh`mIXwatk7cwaA9`c�adhlÒcwjD|g�WeghIk7�^a�c�XwiIegnda1VbhBcwTWa4kWVzXw]BXw��egi�egjwaoe 7 7�g��(� Í8TIeghW�ga$cwTWaÂXwiIegnda$[lndndmWiWVzatk4Z`|(cwTIa�iIjw[ln�aoXwXºcw[[ghWa�_Ye�jD�ga1athW[gmW�^T�cw[7nd[gh\cDegVbh�cwTIab<Ái*adj�iIjw[ln�aoXwXkWevcuem>�e�jDate�e�hIkBcDTWa1cwaA9\c�Xwad�^�Eadh\c�7 7 v Q(� SUTWa�nte�_z_W[ghr<watXÁcDe�ZImWj >(VYX³hWaon�aoXwXDe�jD|�cw[4Xwa�c$cwTWamIXwadj,��[lklaUXwad�g�Eath^cuevcDVb[^h4jwat�gVYXscDadjuX�Z*a�pr[^jwa�jwaoegk`ÒVbhI�.cDTWa4n�[lkla �I_za�7 7 v���� Ô�x�~���¾�iWjD[ln�atXDX7nte�h�[ghW_z|ÎVbhWVbcwVYevcDa&[^hWa�VzhlÒiWmlc��¸[gmWcwiWmlc4[^ifatjDe�cwVz[gh�evc�eBcwVz�Eag�7È�adhIndaËV{c.VzXif[\XwXwVzZW_ba�cD[qXscD[gjDaËV �v[�ife�jue��Ea�cDadjuX(e�c.XÁcDe�hfkWe�juk_b[lntevcwVz[ghfX¼Vbh1cDTWaS<Áma>ÂXÁcwjDmIn�cwmWjDag�oy`V( ^�e<Ám�� m nd[gmWh\c >I�

<Ám�� m [ �FXwa�c�{y| >Ee�hfk3<wm�� m ZIegXwa�>27 7 v�,-� SUTWa�[ln�cDe�_Iy¸eg_bmIa��^�g�sl¨klaon�Vz�Eeg_ºÖo�on,VYX$e�hË[ �¼Xwa�cVbh\cD[.cDTWa4n�[lkla �I_za�7 7 v B(� ��hlpr[^jw�ËevcDVb[^h�VYX(cw[}Z*aËjDategk&Vbh\cD[BcDTWa<e�jDateBZ*a�Ò�gVzhWhWVzhW��evcE_b[lnde�cwVz[gh dadjD[&VzhÑcwTWa�mIXwadjËegkIkljwaoXwXXÁifegn�a�7 7 vO7@� ÅÂaoegk�cDTWa4cDa�9`c(Xwad�^��ath\c�iIe�jwc½[gp¢cwTWaEn�[lkla �f_baVbh\cD[.cDTWa4n�mIjwjDadh\c�kWevcueEXÁat�g�Eadh\c�7 7 v ~ � <D�l��egi�[^mlc >ÑcwTIa�kWevcue Xwad�^�Eadh\cPlr�EVbh`mIX}cwTWa

<Ái*adj.iWjw[lndatXDX�kWe�cDem>4n1Vzh^cD[qcDTWa�kWVzXw]�XÁ�Ue�i�egjwaoejwaoXÁatjwy^atkEpr[^jUcwTWa1cDa�9`c�Xwad�g�Eath^c,7 7 ~ B(� <D�lTWjwVzhW]y>7cwTWaËkWe�cDe�XÁat�g�Eadh\c �qV{c�VYX�e�Z*[gmlc1cw[Zfa4Xw�Ue�iWi*atkB[gmlc,7 7 ~ g-� <wXDnuTWaok1>�e�_z��e¸|lXS<DXÁ�Ue�ifXOVbhO>�cwTIa�cwaA9`c�Xwad�g�Eath^cZfadpr[gjDa�cwTWa�kWe�cDe1Xwad�g�Eath^cOVÉ� a^�,cwTWatjwaUVYXOhW[1�EatnuTlÒe�hWVYXw��pr[^j¢ZWjwVzhW�^VbhW��cwTWa�cDa�9`c¢Xwad�^�Eadh\c,Vzh\cw[(�Ëe�Vzh�Ead�E[gjD|7[^hIn�a1cDTWa�kWe�cDe<Xwad�^��ath\c�VzX�iWjwaoXÁath\ct����pcwTWa4cwa�9`c1XÁat�g�Eadh\c�VYX�hW[gc½Vzh}�Ëe�Vzhq�Ead�E[gjD|g�f�ga�cZIegnu]ÑVbh\cD[ÑXÁcwadiÏZ`|�<wXw�Ue�iWiWVzhW��[^mlc >�cDTWa�kIevcDeXÁat�g�Eadh\cUcw[ËklVYXw]*���c7�ÂVz_b_½Zfa&hW[�cDatk cwTfevc<cDTWa&n�[lkla�cD[�TIeghIkl_za�cwa�9`cXwad�^��ath\cDX4VYX.ygadjD|�nd[ghIXwadjDyvevcDVby^aË�ÂTWadhWatygatj4cwTIaBXwV{cDmIevÒcDVb[^hÎXÁcDegjÁcuX�cw[��gadc7n�[^��iI_bVYnde�cwatk�� )W[gjËaA9We��EiW_zag�8cwTWa

<wiIe�hWVYnA>Yl�$m$\�WÖ�n,�ÂTWathËhW[��E[gjDaUcwaA9\c8adh\cwjDVbaoX³e�jDa�e¸yve�Vz_{ÒegZW_baB�8[^mW_Yk�XÁatad��cw[qZ*a�e}jDe�cwTWatj�aA9\cDjwat�Ea7jDategn�cwVz[gh��È�[v�8atygadj,cDTWa�XscDjDe�cwat�g|�[�p¼Z*adVzhW���gathWadjD[gmIX,�ÂVbcwTr<scDa�9`c >egjwjue¸|.XwiIegnda�VYX � mIV{cDa½_zVb]^ad_z|�cw[�Zfa(_baoXwX8a�9li*adhIXwVzyga�cDTIe�hcDTWaÑnd[`kWa hWatatklaok cw[Lkl[ <wZfadcÁcwatj >I� �ÏTIe�c�kW[Ð|g[^mcDTWVbhI]$%

�13= �� ��� � � 3',���� �< 9`prjDada�>7VYX4ndeg_b_zatk�Z`| <wa�9lVbc >rl�#\��#m#4n�,�ÂTWadh�e�iWjD[ln�atXDXVYXÂZfatVbhI�EcwadjD�EVbhfevcwaokF�feghIk�Z`|3<ÁaA9latnA>ulk#WÖo�m(on��l�ÂTWadhqeiWjD[ln�atXDX�VzX�ZfatVbhW��cDjDeghIXÁ�E[^�gjDV �IaokF�7 7 Q�,%� �`a�c1cDTWaEcwaA9\c4i*[gVzh\cwatj�Vbh�cwTWaz<wiWjD[`n�>7ath\cwjD|�cw[

<D~�x½ÆºÆ�>27 7 Q B-� Ä�aon�jDad�Eadh\c³cDTWa��Ëe�VzhË�Ead�E[gjD|.nd[gmWh\c8eghIk�V{p�VbcVYXÂhW[v� datjw[��b�z�7 7 Q v-� e�hIk�VbpfcDTWaÂcDa�9`c$XÁat�g�Eadh\cOTIe^XOhW[�c³Z*adath #fe��^�gaokcD[ËZfa4XDe¸ygaokF�¼�b�z�7 7 Q \-� Ô�ZIeghIkl[^h�cDTWa<Vz�Ëe��gaË[gpUcwTWaËcDa�9`c.Xwad�^��ath\c4VbhcDTWa4klVYXÁ]�XÁ�Ue�i�e�jDate27 7�� �'� Í�e�_z_�<ÁVziWmlc >�l��N#m$m$4n�cw[�klaon�jDad�Eadh\c¢cwTIas<ÁVzhW[lkla�>jDa�pratjwathIn�a�nd[gmWh\c�e�hIk�Vbp,hIatn�aoXwXDe�jD|<klat_badcwa1V{co�

<Á�Á�F](SU¾`>Wl �g�g×^�onËVYX�e �ËegXw]Ï�ÂTWVYnuT�kla��IhWaoX7cDTWa<wXÁcwVYnu]`|BZIV{c ><�Eadh\cwVz[ghIatkqVzh&Xwatn�cwVz[gh <¥Í�È�Çt!(Ä�lr� n ><[�pcwTIa�x%$Ç��g��p¼cwTWVYX³ZIV{c³VYX$Xwa�co��cwTIa�klVYXÁ]�n�[gi`|.[�p*cwTWaÂcDa�9`cXwad�g�Eath^cUVYXÂe�_z_b[v��atkEcD[Ejwat�EegVbhBVbhBcwTIa1kWVzXw]7Xw��egiBe�jDateady^adh4�ÂTIadh4hW[½iWjD[g�gjue��ËX�egjwa8jwmIhWhWVzhW���ÂTWVYnuT4jDa�pratjwathIn�aVbct�WVzh7cDTWa�a�9li*atn�cDevcDVb[^h7cDTIevcÂVbc��ÂVb_z_�Z*a1jwa � mIVbjDatkBe��^egVbhXwTW[gjwcw_z|g�ÐSUTWVYXËVYXËe�hÎa�<ndVbath^c7kWady`Vznda�pr[gj<nd[g�E�E[ghW_z|mIXwatkBiWjD[g�gjue��ËXUXwmInuT�e^X�cwTWaf<DXÁTIad_z_?>.[gjUcDTWa�atklVbcw[^jt�

�\�

Page 71: A Commentary on the Sixth Edition UNIX OS -- Lions

��D � ��� � ����� � � �A��� ����� �S �%� ��� �

SUTWatjwa�egjwa�cwTWjDada �I_zatX&�ÂTW[^Xwa nd[gh\cwath^cuX}hWatatkLcw[ ZfacDTW[gjD[gmW�^TW_z| egZIXÁ[^jwZ*atkÎZ*a�pr[^jwaqcwTWa�XÁmIZ&4satn�cB[�p�x½~���¾VzhWiWmlc��¸[^mlcwiWmWc�VzXÂZIjw[\egnuTWaok<Vzh�kWa�cDegVb_É�� � �� ��� � " �� � 0 � � 9SUTWVYX��I_za�kWatn�_Ye�jDatXGcs��[(XÁcwjDmIn�cwmWjDatX¢ndeg_b_zatk <ÁZWmWp >Yl $\�^���4neghIk <wkWady\cDegZa> l�$\�g�WÖ�n��¿��hIXÁcDeghIn�aoX7[gp4cwTWa�XÁcwjDmIn¥cDmWjwa<wZWmlp >�e�jDa7klaon�_Ye�jDatk�e^Xp' Zlprjwatad_zVzXÁcfl $\�g�\�mn�e�hIk egX�cwTWaegjwjue¸|r<ÁZWmlp >fl * n l�$\�m#^�mn8�ÂVbcwT <w~½�Ux)�>�ad_zad�Eadh\cDXt�SUTWa�XscDjwmfn¥cwmIjwa@<ÁZWmlp >&VYX�if[\XwXwVbZI_b|��EVzXwhIeg��aok�Z*a�Ònte�mIXwa�V{c(VzX�Vbhqp¨egn¥c(e ���! 24� ��2F/1��24� l¨[gj�ZIm��*atj½nd[ghlÒcDjw[^_³ZW_z[`nu]1n��7SUTWa<ZWm��*atj�e�jDate^X1iWjw[^ifatj4e�jDaËe�_z_b[lnde�cwaokXwadiIegjDe�cwat_b|<eghIkBkWatn�_Ye�jDatk}l $l���g�on8egX��� � 4 ���49 � +�+>=���� ������ � �8,���� &����%¢[gVzh\cwatjDX½prjD[g� cDTWar<ÁZWmlp >�egjwjue¸|�cw[�cwTIaz<ÁZWm��¼adjuX >egjwjue¸|Ëe�jDa1Xwa�cÂmWi�Z`|<cDTWa�iWjD[ln�atkWmWjwa+<ÁZIVbhWVbc >I�!�cwTIadj�VzhIXÁcDeghIn�aoX�[�pUcwTIa7XscDjwmfn¥cwmIjwaP<wZWmlp >&e�jDa<kla�Ònd_zegjwaok/e^X�<wXw�ÂZWmlp > l�$`���WÖ�nÑe�hIk <wjwjD]`ZWmlp > l �m#m(`��n¥�~�[��lÖ�$qnuTIe�juegn�cwatj4ZWm��¼adjEe�jDate^X4e�jDa7egXDXw[`ndVze�cwaok��ÂVbcwT

<wZlprjwatad_zVzXÁc >�[^j�<DXÁ�ÂZImlp >E[gjY<wjwjD]`ZWmlp >I�SUTWa}<ÁZWmWp >7XÁcwjDmIn¥cDmWjDa��Ëe¸|BZ*a.kWVby`VYklatk&Vbh\cw[7cwTWjDadaiIegjÁcuX��� /�����/1G 6 SUTWaoXÁa�nd[gh`ygat|.XÁcDe�cwmIX$Vbhlpr[^jw�Ëe�cwVz[ghËe�hIk7e�jDan�[^h^cue�VzhWatkÐ�ÂV{cDTWVbh e XÁVzhW�g_za&��[gjukF�MÇqe^XÁ]lX7pr[gjXÁadcÁcDVbhW�UcDTWatXwa #feg�^XFegjwa³kla��IhWaok�egXj<D� �ÐÅÂ�sSÂÌc>W�

<w� Å�Ì$Ô½Ä`>�adcDn��OVzh�_bVzhWaoXj$\�\���1cD[s$\�m(g�W�� ���5��k6A� � � ������2o� )I[gjD��egjDkÑe�hIkÑZIe^nu]\�Ue�juk�i*[gVzh\cwatjDXpr[gj8cs�8[�kl[gmIZW_b|Ë_zVzhW]gaokË_bVYXÁcDXt�l�ÂTWVznuT7�8a1XÁTfe�_z_fjDa�ÒpradjUcD[Ee^X�cwTWaf<wZa>vÒ�_zVzXÁc�e�hIk7cwTWaf<De¸yy>vÒ�_bVYXsco�� ����� �a� ��/y�N/1032o��24��6 Ô Xwa�cÐ[gp�y¸eg_bmIatXÐe^XwXw[ln�VYevcwaok�ÂV{cDT�cwTWa4e^n¥cwmfe�_�kWe�cDe.cwjue�hIXÁpradjo�� � -( �� ����2 � � 3 � � � �SUTWa�<wkWady\cDegZa>�XÁcwjDmIn¥cDmWjDa8TIe^X��Iyga��8[^jDkIXd�ocwTIa�_YegXÁc,pr[gmWj[gpG�ÂTWVYnuT}e�jDa½pr[^jw�Ue�juk7eghIkBZIegnu]`�Ue�jukËif[^Vbh\cDadjuXd�

!½hWa½VbhIXÁcDeghIn�a½[�pe<Dklady\cDegZa>�VYX8kWatn�_Ye�jDatkE�ÂVbcwTIVbh7cwTWaklaty`Vznda�TIe�hfkl_batjOpr[gj8ate^nuT�ZI_b[lnu]4cs|`i*a�[gp¼i*adjDVziWTWadjue�_fkla�Òy`VYn�ag� )W[gj�[gmWj��E[lklad_8XÁ|lXÁcwad� cwTWaË[^hW_z|&ZW_z[lnu]�klaty\VYn�aVYX³cDTWa1Å�Ã��^��klVzXw]¼�le�hIkz<wjw]\cue�Za>�VYX�klatnd_zegjwaok<egX�eb<Dkla�Òy\cDegZa>EXscDjwmfn¥cwmIjwa�evcÂ_zVbhIa���#m(^�W�SUTWa�<wklaty\cDe�ZO>�XÁcwjDmIn¥cDmWjwa�n�[^h^cue�VzhIXºXw[g�Ea�XscuevcwmfXGVzhlÒpr[^jw�ËevcDVb[^h(pr[gj�cDTWaOcDTWa$klaty\VYn�a8e�hIk�XwadjDygaoX�egX�e�_bVYXscGTWate^kpr[^j �� /�� cwTWa�_zVzXÁc�[gp�ZWm��¼adjuXEegXDXÁ[lndVze�cwatk��ÂV{cDT�cwTIa�kWady`Vzndag�e�hIk�XwVb�.mW_{cue�hWat[gmIXw_z|<[ghBcwTWaf<De¸yy>vÒ�_bVYXsc,� �� cwTIa�_bVYXsc½[�p¢[gmlcuXscue�hIklVzhW�EV �¸[Ejwa � mWatXÁcDXUpr[^jUcwTWa.kla�Òy`Vzndag�

� �< ), ��� � " � � ��� � � 9SUTWa �I_zaf<wnd[ghlps� Ta>Eklatnd_zegjwaoX��

|^a�c$eghW[�cDTWadj³�Ue¸|�cD[4klVzXDXwatn¥c$eghEVbh\cwat�gatj³Vbh\cD[1cs�8[ife�jwcDXilA<wk �EVzhW[gj >Ëe�hIk <Dk �Ëe�4s[^j >4n¥�U~�[�cDa�cwTfevc<Dk �Ëe�4s[^j >�n�[^jwjDatXwif[^hIkWX$cw[z<wTWVbZ`|\cwa�>ul¨�WÖ�(g�4n�

cs��[Ëe�jDjDe¸|lX8[�pOXscDjwmfn¥cwmIjwaoX� cs��[ÂVzh^cDad�^adjFyve�jDVzegZW_zatXt�a<ÁhI_b]lklatyF>ÂeghIk+<ÁhInuTIjDklatyy>W�SUTWa cs�8[ egjwjue¸|lXq[�p�XscDjwmfn¥cwmIjwaoXd�r<ÁZ¼klaty`Xw�e>Le�hIk

<wntkladylXw�e>W�`e�jDa½klaon�_Ye�jDatkËZImlc�hI[�cÂklVb�EathIXÁVz[ghIatk<[^j8VzhWVbÒcwVYe�_zVYXÁaokqVzhI<Dn�[ghWps� Ta>I�.SUTWaEVzhWVbcwVYe�_zVzXDevcDVb[^h&[�p8cwTWaoXÁaËegjÁÒjue¸|`X�VYXUifatjÁpr[^jw�Eaok7Vzh�cwTWa �I_zaf<wnd[ghlps� nA>I�� �< 3 ��� � " � � ��� � � 9SUTWVYX��f_ba^�`eg_b[^hW���ÂVbcwT@<Á_z[v��� X >W�^VzX��^adhWatjDe�cwatkEVzhIklVzy`VzkWmlÒe�_z_z|4evcOate^nuT�VzhIXscue�_z_ze�cwVz[ghulÀcD[(jDa #fatn¥c¢cDTWaÂXÁadc¢[gpfi*adjDVbiITlÒadjue�_YXÂegn�cwmIeg_b_z|<VzhIXÁcDe�_z_zatkanUZ`|ËcDTWa4iWjD[g�^jDeg� <Á�E]^nd[ghlp >W�lr��hE[^mWj$nde^XÁa^�Z<wnd[ghlps� nA>(jDa #Iaon¥cuX¢cwTWaÂjDadiIjwaoXÁath^cuevcDVby^aUkWa�Òy`VzndatX�pr[^jÂ[gmWjÂ�E[lklad_�Xw|lXscDad��� nSUTWVYX �I_za�VbhWVbcwVYe�_zVYXÁaoX�cwTWa1pr[^_b_z[v�ÂVbhI���

9��>=���� 3 ����:��0:'� � 3 ��#��>=��&����: � : ��J�>=���� 3 ����:�:0L'� � 3�#'�0 ����:�L�F ���� N ��=��&����:�L$�'� � � 3 ��# ����: � ( �

� �< �� $ & � �� � � �� ��# �#"�����`|lXÁcwad� �^adhWatjDe�cwVz[ghqe�c1e�x�~���¾3VzhIXÁcDeg_b_YevcDVb[^h&n�[^hIXÁVYXÁcDX�Ëe�VzhW_z|<[�p �

jDmWhWhIVbhW�r<w��]\n�[^hlp >��ÂV{cDT}e�iWiWjD[giIjwVYevcDa½VzhWiWmlc, jDatnd[g�EiWVz_bVzhW��cwTIa�[gmlcDiWmlc �I_zatX*l n�jDate�cwatk�egXY<Dn�� nA>eghIk <Á_É� X >on% jDad_z[^e^klVzhW�<cDTWa�Xw|lXscDad� �ÂVbcwT�cwTWa�jDady`VzXwatk&[gZ&4saon¥c�f_baoXd�

SUTWVYX�iWjD[ln�aoXwX�[ghW_z|7cue�]^atX�e<prad� �EVzh\mWcwatX�lrhI[�c�cDTWaXwadygatjDeg_.TI[gmWjuX�[�p�Xw[g�Ea [�cDTWadj�[^ifatjDe�cwVzhW��Xw|lXscDad�ËX n��~�[gcwa1cDTIevcE<wZ*kWadylXÁ�e>ËeghIk <wntkladylXw�e>Ee�jDa4kla �IhIatk}klVbpÀÒpradjDadh\cD_b|�Vzh <Dn�[ghWps� n�>ÂprjD[g� ad_YXwad�ÂTWatjwa^�vhIe��Ead_z|�egX¢e½[ghWaklVz�EadhIXwVb[^hIe�_legjwjue¸|1[�pfi*[gVzh\cwatjDXGcw[(prmWhfn¥cwVz[ghfX¢�ÂTWVznuT�jDa�ÒcwmIjwhÑVbh\cwat�gatj.yve�_zmWaoXd��SUTWVYX � mWVbadcw_z|�Vb�^hW[gjDatX�cwTIa7p¨e^n¥ccwTfevct�³pr[gjEa�9We��EiW_zag�i<ÁjD]^cue�Za>qVzXEhW[gcEeqprmWhIn�cwVz[gh���e�hIkjDad_zVbaoX7[^hÏcwTWa�_zVbhW]`VzhW� iWjw[^�gjue�� hW[�c�cw[Ñadh � mWVzjwa�cw[`[n�_z[^Xwad_z|7Vzh\cw[EcDTWa4hIe�cwmWjDa4[�p,cwTIa���[gjD]<�ÂTWVYnuT}V{c�VYX�i*adjwÒpr[gjD�EVbhI�I�� �< �' � � � � � � '����a�pr[^jwa³iI_bmWhI�gVzhW�½Vzh\cw[(e�_z_gcDTWa�kWa�cDegVb_\[�pIcwTWa �I_zai<ÁZIVb[f� n�>W�VbcE�ÂVz_z_�Zfa�VzhIXÁcwjDmIn¥cDVby^a�e^X��8at_b_�e^XËn�[gh`y^adhWVzadh\c�cw[�a�9`Òe��EVzhWa�[ghIa�jw[^mlcwVzhWa��ÂTWVYnuT �UegX}Vzh\cwjD[`kWmIn�aok ate�jD_zVbatjt�hIeg��at_b|3<wXw��egia>W�

�m#

Page 72: A Commentary on the Sixth Edition UNIX OS -- Lions

SUTWa8ZWm��¼adj,TWate^ku<wXw�ÂZWmlp >Â�UegXGklatnd_zegjwaok½cw[½nd[gh\cwjD[g_Xw��egiWiWVzhW�(VbhWiImlc �v[gmlcDiWmlct�^�ÂTWVYnuT��.mIXÁcOXwTIegjwaÂegntn�aoXwXGcw[cDTWa$klVYXÁ]½�ÂV{cDT�[�cDTWadjºe^n¥cDVby`Vbcs|g�G~�[Âad_zad�Eadh\cº[gp�<ÁZWm��¼adjuX >VYX4egXDXw[`ndVze�cwaok&�ÂVbcwT <DXÁ�ÂZWmWp >W�<��hfXscDategk�cDTWa7n�[^jwaËegjwaoe[lndndmWiWVzatkfl¨[gjOcD[4Zfa�[`ntn�mWiIVbaokan¢Z`|�cDTWa�iWjD[g�^jDeg�¿XwadjDygatXe^X�cwTWa4kWe�cDe�ZWm��¼adjo�g ,aQ Q(� SUTWa�e^kWkljDatXDX¢[�p¼cwTIa #fe��\XOVzh}<DXÁ�ÂZImlp >�VYXOcDjDeghIXsÒpradjDjwaokBcw[EcwTIa4jwat�gVYXscDadjÂyve�jDVYe�ZW_zaf<spria>�pr[^j�n�[^h`yga�ÒhWVzadhInda1eghIk�atnd[ghW[^��| g ,aQ�,-� SUTWas<D� �Ux½� d> #feg�1VzX¢cDatXÁcwaokF�^eghIk�V{pFVbc$VzX³[gh��e�Xw��egi([^ifatjDe�cwVz[gh�VYXGeg_bjDate^kl|�mIhIkladjG��e¸|^�oXw[ÂcDTIevccwTWaE<w� �&Ô�~½SÂÌ$Äd> #feg��VzX8XÁadc8e�hIk�cDTWa�iIjw[ln�aoXwX��mIXÁcÂ��egV{cÂy`VYe�eËnte�_z_F[gh <wXw_batadia>I�~�[gcwaËcDTIevc�cwTWa7nd[lkla<_z[\[^i�[gh�_bVzhWaoX.�g�g�^�7cw[&�^���\�jDmWhIX�e�c4iWjwVz[gjDVbcs|}_batygad_8XÁV 9F��V � ag�7[ghWaETWVz�gTWatj1cwTIegh�cwTWaklVYXw]<Vbh\cDadjDjwmWiWc�iWjwVz[gjDVbcs|g�Í�e�h7|g[gmBXÁata��ÂT`|�cwTWVYX�VzX8hWatndatXDXwegjw| %Bx�hIkWadjU�ÂTIevcnd[ghIklVbcwVz[ghfXU�ÂVb_z_FcwTIaf<w� ��x(� d> #*e��EZfa4Xwa�c�%

g ,aQ v(� SUTWa #feg�^XUe�jDa�XÁadcUcw[ËjDa #Iaon¥c � <DXÁ�ÂZWmWp >EVzXUVzh�mIXwaYlA<w� �Ux½� M>on% iWT`|lXwVznte�_WV �¸[4Vz�EiW_z|\VzhW��e4_zegjw�^a8cDjDeghIXÁpradj8kWV{ÒjDatn�c�cD[ �¸prjw[^�?cwTWa�mfXÁatj�kWevcue�Xwad�^�Eadh\clA<w� %$È 1�y>4n�

�ÂTWadcwTWatj�cDTWa<[^ifatjDe�cwVz[gh�VYX4jDategk�[^j��ÂjDV{cDag�lA<Ájuk #I�o>.VYX�e�iIe�jue��Ea�cDadj�cw[z<DXÁ�Ue�iO>on�

g ,aQ ~ � SUTWa*<wZ klatyF> �Iad_Yk1VzXºVbhIV{cDVzeg_bVYXÁaokF�ql�%³jDatXwmW�Ëe�ZI_b|cwTWVYX�nd[gmW_Yk�TIe¸y^aËZfatadhÑifatjÁpr[^jw�Eatk�[^hIn�aBklmWjDVbhW�VbhIV{cDVzeg_bVYXwe�cwVz[gh�jDe�cwTWatjÂcwTfe�h�ady^adjD|ËcwVz�Eab<wXw�ÂZWmlp >VzXUmfXÁaokF�WVÉ� a^�OVbh <ÁZWVzhWVbc >I� n%g ,aQ \(� <ÁZ �Un�[^mWh\c >�VYXÂVbhIV{cDVzeg_bVYXÁaokF�³~�[gcwa1cDTWa�hWad�\evcDVby^ayve�_zmWa�e�hIk7cwTWa�a��*aon¥cDVby^a���mW_bcwVziW_zVzntevcwVz[gh�Z`|E#\�&g , �yQ(� SUTWa�TIegjDkl�Ue�jDa�kWady`Vznda�n�[^h^cDjw[^_b_zadj�jDa � mWVzjwaoX�eprmW_z_ËiWT`|`XwVYnde�_Ëe^kWkljDatXDX lÁÖ�(�ZWVbcDX�[ghÓcwTIa %8Ä`%ÖgÖ���$^�4n¥�ºSUTIa�ZW_z[`nu].h`mW��Z*adj8[�pFe*#^�½��[gjuk.ZI_b[lnu]��mIXÁcBZ*a�n�[gh`y^adjwcwatkÐVbh\cw[ cs�8[ÑiIe�jwcDX ��cwTIa�_z[v�[gjukladj1cDadh�ZIV{cuX�e�jDa7XwTWVbpÀcwatk�_za�pÀcEXÁV 9�iW_ze^n�aoX�e�hfkXscD[gjDatk e^X <wZ egkIklj >I�.eghIk cDTWaÎjwat�EegVbhIVbhW�LXÁV 9TWVz�gT�[gjukladj(ZWVbcDX4e^X <wZ 9l�Ead�s>W�ul !½h�cwTWap%8Ä`%ÖgÖ���$^��e�hIkLÖ^Ö ��$`�q[^hW_z|�cs��[�[gp½cDTWatXwa}ZWVbcDXBe�jDaXÁVz�ghIV �fnte�h\ct� n�g , �1,-� ÔÐ�E[^mlcwTlprmI_¼e�c �IjuXÁc8�g_Ye�hfn�a�*O�`TWVbpÀcY<wXw��egi*klatyy>adVz�gT\c½iI_ze^n�atX�cw[7cwTWa�jwVz�gT\c½cw[7[^ZlcDegVbhqcwTWa��Ëe�4s[gjklady`VYn�a½h\mI��Z*adjo�¢x½XÁa½cwTIa½jDatXwmW_bc8cD[.VzhIklaA9P<ÁZ¼kla�ÒylXÁ�e>I�u)Ijw[^� cDTWaBXÁcwjDmIn�cwmWjDaËcwT`mIX.XÁat_baon¥cDatkF�¢a�9`Òcwjuegn�c³cwTWa½XscDjDe�cwad�^|�jD[gmlcDVbhIa½e�hfkEa�9latndmlcwa�Vbc8�ÂVbcwTcwTWa�egkWkWjwaoXwXF[gpR<wXw�ÂZWmlp >�iIegXDXwatk�egXGe�iIegjDeg�Ea�cwatj�g , �yB(� Ì�9liW_Ye�VzhE�ÂT`|4cwTIVzX³nte�_z_W[ghr<DXÁiW_Y�m>(VYXOhWaon�atXDXDe�jD|�g , �F7@� ��e�Vbc�mWh\cDVb_�cwTIa V �¸[ [^ifatjDe�cwVz[gh VYX�n�[g�EiW_za�cDag�~�[gcwa(cwTIe�c�cwTIa �IjDXÁc�iIegjDeg��adcwatj8cD[z<wXw_batadia>.VYXÂVbha �¼atn�cÂcwTWa4e^kWkljDatXDX8[gp`<DXÁ�ÂZWmWp >

g , �yv-� ��eg]gatmWi�cwTW[\XÁa7iWjw[lndatXDXÁaoXElrVbp�e�h`|1n��ÂTIVznuT�egjwa�Ue�VbcwVzhW��pr[gjs<DXÁ�ÂZImlp > g , �y\-� ÅÂatXwa�c�cwTIa}iWjw[lndatXDX�[^j�iIjwVz[gjDV{cs|�cD[ tadjD[I�OcDT`mIXeg_b_z[v�ÂVzhW��e�h`|�i*adhIkWVbhW��Vzh\cwatjwjDmWilcuX¢cw[f<wTIe�iWi*adhO> g , ���-� ÅÂatXwa�c�Z*[�cDT1cwTWai<w� ��x(� d>ÂeghIk+<w� �&Ô½~�SÂÌ$Äd>

#*e��^Xt�� �< �� �/ � ) ����� " �#"���� �SUTWa�n�[lklaBpr[gjr<wXw�Ue�ia>}TfegXEe&h`mW�.ZfatjE[�p�Vzh\cwadjDatXÁcwVzhW�prate�cwmWjDatXt�,��h7iIegjÁcDVzndmW_zegj8VbcÂklVzXwiW_Ye¸|lX³Vzh7�EVzndjw[lnd[^Xw�ÓcDTWaiWjD[gZW_zad�ËX�[�p¢juegn�a1n�[^hIklVbcwVz[ghIXU�ÂTIadh�XÁatygadjue�_¼iWjD[ln�aoXwXwatXe�jDa(jwmWhIhWVbhI�Ecw[g�^a�cDTWadjo�Í8[ghfXÁVYkladj�cDTWa1pr[g_z_b[v�ÂVzhW�ËXDn�adhfe�jDVb[ �~�[�Xw��egiWiWVzhW�½VYX,cDeg]`VbhW�1iW_YegndaU�ÂTWadh�iWjD[`ndatXDX¢ÔÑVzhWVbÒcwVYevcDatX�eÂXw�Ue�iWiWVzhW�U[gi*adjuevcDVb[^h��ºÄ½adhW[gcwVzhW�s<wXw�ÂZWmlps� Z #feg�^X >Z`|7XwVb�EiW_z|3< #fe��\X >I�^��a�TIe¸yga(VzhWV{cDVzeg_b_z|

+��0�-,�� �$� ��� ���%³jD[ln�aoXwX(Ô VzX1hI[�c4klad_Ye¸|gaok&e�c1_zVzhWa<�g���m$I�FVzhWVbcwVYevcwaoX1V{cuXV �¸[&[^ifatjDe�cwVz[gh�eghIk��^[\aoX�cD[�Xw_batadi e�c�_zVzhWa��^�lÖ¸�l�&��ahW[v��TIe¸yga

+��0�-,�� �$� �';����'I���� �';�M � ��I � �>�0+��#,�ÂTWVYnuTB�UegXÂXwa�c�e�c�_bVzhWa��g�g�g�I��`mWiWi*[^Xwa hI[v� �ÂTWVb_za�cDTWa V �v[Ð[gi*adjuevcDVb[^h VzX�iWjD[�Òn�atatklVzhW�f�liWjw[lndatXDXÂ� e�_YXw[�VzhWVbcwVYevcDatX�eËXw��egiWiWVzhW�E[gi*adjuevÒcwVz[ghº�G��c8cw[`[�Zfat�gVzhIXOcD[4a�9laon�mlcDap<wXw��egia>W�gZWmlc �fhIkWXOcDTWa<w� �Ux½� M> #*e���Xwa�co�8Xw[&Vbc<XÁadcDX�cwTWa <w� �&Ô½~�SÂÌ$Äd>#feg�tl �^���o#onÂeghIk}�g[`aoX�cD[BXw_batadi�eg_zXw[ lÉ�g���m$4n��½��a.hI[v�TIe¸y^a

+��0�-,�� �$� �';����'I���� �';�M � ��I � �>�0+��#,�� �';��>K�� � ��"Ô�c�_YegXÁc cDTWa¿V �¸[/[gi*adjuevcwVz[gh nd[g�EiW_za�cwaoXd� %³jD[�Òn�aoXwX7Í?cDeg]gaoX�cwTWaqVzh\cwatjwjDmWilc7eghIk aA9latn�mWcwatXP<ÁjD]\Vzh\cwj >W��ÂTWVYnuT ndeg_b_YX&lÉ�N$`�lÖ�n"<wVb[lkl[^hWa�> �ÂTWVYnuT ndeg_b_YX&lÉ��#^�WÖ�n

<Á�Ue�]^admWiO>Lcw[Óe¸�Ue�]^adh iWjD[ln�atXDX Ô e�hIkMiWjw[lndatXDX �(�<ÁVz[lkl[ghIa�>qeg_zXw[&Xwa�cDX�cwTIa@<D� ÄS!(~�Ìc> #fe���e�hIk�jwaoXÁadcDXcwTIaf<w� �&Ô�~½SÂÌ$Äd> #fe��EXÁ[�cDTIevc+��0�-,�� �$� �';����'I���� �';�M � ��I � �>�0+��#,�� �';#"! #�$��ÏTIevcqTfe�iWi*adhIXqhWa�9`c&klatifathIkWXq[^h cDTWa�[^jDklatj�Vbh�ÂTWVYnuT iWjD[ln�atXDX�Ô eghIk iWjD[ln�aoXwX�� e�jDa jDategn�cwVzyvevcwaokF�

l �lVbhInda1cwTWat|7Z*[�cDT�Tfe¸yga(cwTWa4XDe��Ea1iWjDVb[^jwVbcs|g��< %8�`� %c>W�Vbc�VzXÂe.cw[\XwXÁÒ�mWiB�ÂTIVznuT��g[`aoX �fjDXÁct� nJ�/16�2 � /�� � %$jw[lndatXDX�Ô �^[\aoX �IjuXÁct�p<D� ÄS!(~�Ìc><VYX�Xwa�cXw[ÂhW[Â�E[gjDa³Xw_batadiWVzhW�ÂVYXFhWadaoklatk��<w� �&Ô½~�SÂÌ$Äd>VYX�jDatXwa�c�Xw[ËcDTWadjDa�VzX�hW[<[^hWa1cw[P<w��eg]gatmWia>W� %³jD[�ÒndatXDXBÔ cwVYklVzatX�mWi"l �g�WÖt×4n¥��eghIkÏ_zate¸ygaoXP<DXÁ�Ue�ia>�ÂVbcwT

+����-,�� ��� �';�M � �>I � �>�0+��#,�� � ;#"! #����m$

Page 73: A Commentary on the Sixth Edition UNIX OS -- Lions

%³jD[ln�atXDX��ÏhW[v�ÐjDmWhIXÂeghIk<VYXÂe�ZW_za(cw[EVzhWV{cDVze�cwa1VbcDXV �v[.[^ifatjDe�cwVz[gh��ÂV{cDTW[gmWcÂprmWjÁcDTWadj�kWad_Ye¸|g�J�/16�2 � �$� %³jD[ln�aoXwXF���g[`aoX �IjuXsco�º��c��fhIkWXe<D� �Ux(� d>[gh��¢Xw[qV{c.cwmWjDhIX4cwTWaP<D� �&Ô�~½SÂÌ$Äd> #fe��}Zfegnu][gh��WeghIkB�g[`atX�cD[EXw_zadadi}eg�^e�Vzh��`_zate¸y`VbhI�

+��0�-,'� ��� � ;���'I���� �';�M�� ��I � �>��+��#, �� ;#"! #����� �';���K�� � ��"

%³jD[ln�atXDX7ÔAXÁcDegjÁcuXBeg�^e�Vzh e^XBVzh Í�e^XÁa l¨e4n¥�(ZWmlccwTWVYX½cwVz�Ea �fhIkWXu<w� �&Ô½~�SÂÌ$Äd>�[gh�XÁ[�V{c1��mfXscndeg_b_`<Á�Ue�]gatmWia>ul �^�lÖv��n�Vzh&egkWkWV{cDVb[^h�cw[<VbcDX½[�cDTWadjnuTW[gjDatXt��%$jw[lndatXDXO� �Ihfe�_z_b|.��eg]gatX$e��^egVbhEe�hfk�cwTWa�ÂTW[g_za�nuTIe�Vzh�n�[g�EiW_za�cDatXt�Í�egXwa3l¨ZOnËVYX7[^Z`y\Vz[gmfXÁ_z| �.mInuTÏ_baoXwX7a�<n�Vzadh\c<cDTIe�hntegXwarl eon�� ��c<��[gmI_zk XÁatad� cwTIe�c7e�XwVz��iI_ba}nuTIeghW�ga�cw[_zVbhIa��g�lÖ¸�1cD[Ëjwaoegk���0=�=�#2�O+�#�� M>I �>M 3�,��5&

��[gmW_Yk}n�[\Xsc(y`VbjwcwmIeg_b_z|�hW[�cDTWVbhI�Be�hfk}adhIXwmWjDa�cwTfevc�Í�e^XÁal¨ZOn�hWady^adjÂ[lndndmWjDjwaok1*SUTWa�hWaon�aoXwXwV{cs|<pr[gjUcwTIa�jDegVzXwVbhI��[gpGiWjD[ln�aoXwXw[gjUiWjDVb[^jÁÒVbcs|&evc1yve�jDVb[^mIX(if[^Vbh\cuX(XwTW[^mW_zk�Z*aEXÁcwmfklVbaok �½pr[gj1a�9We���ÒiW_za<Vbp�_bVzhWa��g���IÖE��e^X�[g�EVbcÁcwaok�e�hfk�V{p�iWjD[ln�aoXwX4�ÓTIe^k4smIXÁc�n�[^�EiW_badcwaok&_zVbhIaË�^���o#<�ÂTWath�cDTWar<ÁV �¸[�n�[^��iI_badcwa�>Vzh\cwadjDjDmWilc1[`ntn�mWjDjDatk�pr[gjS%$jw[ln�aoXwX½Ô*' X([gi*adjuevcwVz[ghº�fcDTWadh<wVb[lkl[^hWa�>���[gmW_Yk�cDmWjDhÏ[ � <D� �&Ô½~�SÂÌ8Ä`>�eghIk ifatjÁÒpr[^jw� <w��eg]gadmIia>}Z*a�pr[gjDa�iWjw[lndatXDX.� ��adh\c�cD[�Xw_zadadi��b�z�pr[^jwatygadj+*¢Ô ZIegk�XwndadhWa^�� � � � ���2�# � � &~�[�cwa}eg_zXw[qcDTWa}egXDXÁmW�EilcDVb[^h �ËegkWa�egZf[vy^ag�¢cDTIevcËZ*[�cwTiWjD[ln�aoXwX1Ô e�hIk�iWjD[ln�atXDX1� n�[^mW_zk�a�9laon�mlcDa}<DXÁ�Ue�iO>7XwV{Ò�.mW_{cue�hWat[gmIXw_z|g��Ô�_z_¢x�~���¾3iWjD[ln�atkWmWjwaoX�e�jDa4Vzhq�gathWadjue�_<wjwadÒÉath^cDjDegh\c > lr�ÂTIVznuT���aoe�hIX��.mW_{cDVbiI_ba�XÁVz��mI_{cue�hWat[gmIXaA9`aon�mlcDVb[^hIX$egjwa�if[\XwXwVbZI_ba�n¥�OÈ�[v�Î��[gmW_YkËx�~���¾�TIe¸y^aÂcw[nuTIeghW�ga(Vbp,jDa�Ò�adh\cwjue�hfn�|Ë��adjDa(hI[�c�e�_z_b[v��atk %� � � � �8��� � � � " � " �#" �� ���a�nte�h�hW[v� jwadcwmWjDhÐcD[ nd[g�EiW_za�cDa�e�h�Vbh`y^atXÁcwVz�^evcDVb[^hXÁcDegjÁcDatk Vbh�Í8Tfe�ilcDadj7Ì$Vb�^T^c7nd[ghIndadjDhWVzhW� <wegjwadcwma>�e�hfk<wm�� m XwXDe¸yy> �ÔÂpÀcDadj�Xwa�cÁcDVbhI�3<Ámº� m XDXDe¸yF> l �g�m(�$Fn¥� <wa�9liIeghIk1><nte�_z_zXlÉ�g��(\�mnp< 9WXÁ�Ue�iO>W�¼�ÂTWVYnuT�ndeg_b_YXYl $4#m(g�4np<DXÁ�Ue�iO>W�¼�ÂTWVYnuTnte�_z_zXzlÉ�g�lÖ¸�mn@<wXw_zadadiO>W�1�ÂTWVYnuT nte�_z_zX3l ���o(�$Fn3<DXÁ�UcunuTa>W��ÂTWVYnuT ��2F6�24��6 <Ámº� m juXDe¸yF>+l �WÖ�(^×on¥�SUT`mIXËVzh p¨e^n¥cP<wm�� m jDXDe¸yy> �IhIeg_b_z|��^a�cDXEjDatXwa�cEcD[�eyve�_zmWa egiWiWjD[giWjDVYevcwa�cD[Îpr[gmWj�iWjw[lndatklmWjDa�ndeg_b_YXqklatadi*adjcDTIe�h�cwTfevcÂpr[gjs<wm�� m XwXDe¸yy>W�� � �� ����� "��#"���� � � � � " � �SUTWa�egjÁcDVznd_ba <wSUTIa�x½~���¾ � �o! �`|lXÁcwad�s> Z`| ĽadhWhWVYXÅÂVbcDnuTIVba�VYXUTWVz�gTW_z|7i*adjwcwVzhWadh\co�

�^�

Page 74: A Commentary on the Sixth Edition UNIX OS -- Lions

� � E�� � � � � �� � � � � ��� �

SUTWaÐÅ�à kWVzXw]ÓXÁcw[^jDeg�gaÎXÁ|lXÁcwad� ad�EiW_z[v|lX�e jwat�E[vy^ÒegZW_baËklVYXw]&ndegjÁcDjwVYkl�ga�n�[^h^cue�VzhWVzhW��e�XwVbhI�g_za�klVYXw]*�G�ÂTWVYnuTVYX��E[gmWh\cDatk�VbhfXÁVYkla7e}kljDVzygaE�ÂV{cDT��E[vy\VzhW��jDategk �¸�ÂjDV{cDaTWaoegkWXt�SUTWa�klady`VYn�a$klaoXÁVz�ghfevcwaok�Å�ÃEÖgÖdÒ�Ä n�[ghfXÁVYXscuXF[�pIe�klVzXw]nd[gh\cwjD[g_z_batj�cD[g�gadcwTWatj1�ÂV{cDT�e�XÁVzhW�g_zaEkljwVzyga^��Ô�kWklVbcwVz[ghfe�_kljDVzygatXt��klaoXÁVz�ghIe�cwaokÐÅ�Ã��^�W�ÂmWiÐcD[Ñe�cw[�cue�_([�p�Xwady^adh���Ëe¸|<Z*a4egkWkWatk7cw[<eEXÁVzhW�^_ba�Å�ÃEÖ^Ö�Ò�Ä��ÔÐjDa � mWVzjDad�Eadh\c³pr[^j$�E[gjDaUcwTIegh<adVz�gT\c8kWjwVzygaoXO�8[^mW_YkjDa � mWVzjwa1e�h�egkIklV{cDVb[^hIe�_Fnd[gh\cwjD[g_z_batj8�ÂVbcwT}e�klV �*atjwath^c�Xwa�c[gp.x�~��s��x(�Ðe^kWkljDatXDXÁaoXd�?Ô�_YXw[�cwTIa�nd[`kWa�VzhÐcDTWa�f_ba<wjw]¼� nA>���[gmI_zk.TIe¸yga$cw[1Z*a��E[lklV �Iatk.cD[½TIeghIkl_za�cwTWaÂnde^XÁa[gp�cs��[q[^j4�E[gjDa<n�[gh\cDjw[^_b_zadjuXd��SUTWVYX�ntegXwaËVzX.�E[^XÁc�mWhlÒ_zVb]^ad_z|½Z*atnte�mIXwa$jDa � mWVzjDad�Eadh\cDX�pr[gjG_zegjw�^a$e��E[gmIh^cuX�[gpW[ghlÒ_zVbhIa8klVYXÁ]1XÁcw[gjue��^a¢�ÂVb_z_^Z*a$�E[^jwa³aon�[^hW[g�EVYnde�_z_z|�iWjD[vy`Vzklaok[gcwTWatjw�ÂVYXÁa1a^� �f�,Z`|ËcDTWa4Åe%8��$ËklVYXÁ]7Xw|lXscDad���Í�egjÁcDjwVYkl�ga1ndegiIegndV{cs| �UÖg� �g�m(W� (g�^���8[^jDkIX

l $4(g�^���WÖo��Z\|\cDa�jwaon�[gjukWX n�`mIjÁp¨e^n�atX �vnte�jwcwjDVzkW�ga ���SGjDe^nu]lX ��XÁmWjwp¨egnda � ���^� l¨iW_zmIXe#EXÁife�jDa�n�`aon¥cD[gjuX ��Sºjuegnu] � Öo���[gjukWX ���`aon¥cw[^j � �g�g�ÅÂaon�[^jDklVzhW�EkladhfXÁVbcs| �����m$^��ZWiWV��ËeN9lVz��mW�ÅÂ[gcDe�cwVz[gh�XÁi*adaok � Öo�g�g��jwiW�Ƚe�_bp,jDady^[g_zmlcwVz[gh � ���.�ËXÁaondXSGjDe^nu]Ëif[\XÁVbcwVz[ghIVbhW� �Öt���ËXwatndXSl¨[ghWa(cDjDe^nu]yn�����ËXwatndXSl e¸ygatjDeg�ga�n(^�.�ËXwatndXSl¨�8[^jDXÁc�nde^XÁa�n��h\cwatjwjDmWilcj]Oaon¥cw[^j�Ô�kWkWjwaoXwX �$�g�g�

%$jwVz[gjDV{cs|<ƺady^ad_ � �

� ��� ���6sC 24G ��6���24�sTE������2F6�6�2F6ĽjwVzyga4�\cuevcwmfX Å�Ã�Ä(� �^�g��$\�g�̳jDjD[gj Å�Ã�Ì$Å �^�g��$\�^�Í8[gh\cDjw[^_º�\cDe�cwmIX Å�Ã1ÍU� �^�g��$\��$��[gjuk}Í8[^mWh\c Å�Ã1�ÏÍ �^�g��$\�g�Í8mWjDjwath\cUZImIX�egkIkljwaoXwX Å�Ã��UÔ �^�g��$fÖt�ĽVzXw]Be^kWkljDatXDX Å�Ã�Ä�Ô �^�g��$fÖo�Ä(evcDeË��m��¼adj Å�Ã�Ľ� �^�g��$fÖt�S,e�ZI_baËÖo�W�zÖ(Å�Ã&]�VbcDeg_G�\cDe�cwVYXscDVzntX

SUTWa�e¸y^adjue��ga$cw[gcDe�_We^ndndatXDX,cwVz��aÂVYX$�v�(�EVz_b_z_zXwatnd[ghIkIXd��ÏVbcwTq�.mW_bcwVbÒ�kljDVzyga4XwmWZIXw|`XÁcwat�ËXd�*XÁatad]`VbhI�ËZ\|�[ghIa4kljwVzyga�Ëe¸|�Zfa�[vygatjw_Ye�iIifaok}�ÂV{cDT&jDate^klVbhI�7[gj(�ÂjDV{cDVbhW��Z`|}e�hlÒ[gcwTWatj<kljwVzyga^�ÐÈ�[v��ady^adj.cwTWVYXEprate�cwmWjDa}VYXEhW[�c<mIXwatk Z`|x½~���¾ Z*atnte�mIXwa�[gpFZWmW�^X$�ÂTWVYnuT<a�9lVYXscDatkËevc�[ghWa�cwVz��a½VbhcDTWa�TIe�jukl�Ue�jDa½nd[gh\cwjD[g_z_batjt���hEVbhIV{cDVze�cwVzhW��e½kWe�cDe�cwjue�hIXÁpradjo��Å�Ã�Ä�Ô���Å�Å��UÔÏe�hfkÅ�Ã�Í3e�jDa7Xwa�co�³e�hIk�cDTWadh Å�Ã�ÍU��VzX�Xwa�ct��x�i*[ghÑn�[g��ÒiW_za�cDVb[^h���XÁcDevcDmIX<Vzhlpr[^jw�ËevcDVb[^hÏVzXBe¸yve�Vz_zegZW_ba}Vzh Å�Ã�ÍU�¼�Å�Å�Ì$Å"e�hIk Å�Ã�Ä1�¼�³�ÏTWathÎeghÑatjwjD[gj�[lndndmWjDXt�8x½~���¾XwVb�EiW_z| nde�_z_YX <wklatygatjwjD[gj > lÉ�N$m$l��n7cw[ÐkWVzXwiW_Ye¸|�Å�Ã�Ì8Å

e�hfk�Å�Ã�Ä(��[^hBcDTWa�Xw|lXscDad�/nd[ghIXw[g_zag�I�ÂV{cDTW[gmlc(e�h`|Be�cÁÒcwat�Eilc1e�c(eghIe�_z|lXÁVYXd�(Ô�h�[gi*adjuevcwVz[gh}VYX(jwatifaoevcDatk}mWiqcw[cwath�cwVz�EatX�Z*a�pr[^jwa4egh�adjDjw[^jÂVzXÂjDadi*[gjwcwaok�Z\|BcwTIa�klady`VYn�akljDVby^adjo�SUTWa$jDad�^VzXÁcwatj�pr[^jw�ËevcuX��ÂTWVYnuT�egjwa$kWatXDn�jDVbZ*atk1prmI_b_z|1VbhcwTIai< %8Ä`%�ÖgÖR%¢atjwVziWTWatjDeg_zX�Ƚe�hIkWZf[`[g]y>�egjwa$jwa�#Iatn�cwatk4VbhcwTIa.iWjD[g�^jDeg�/nd[`kWa.evc�XwadygatjDeg_�i*[gVzh^cuXd��SUTWa�pr[g_z_b[v�ÂVzhW�XwmW�E�EegjwVzatX(Xwm2�<n�a.cw[}klatXDn�jDVzZfa.cwTWa.prate�cwmWjDatX(mIXwatk�Z`|x�~���¾ �Ji� ���A�N� 5ex ��/y����6sCE2FG ��6���24� � C �+JYx��ZWVbc klatXDn�jDVzilcwVz[ghÖo� �`a�c��ÂTWath}e�h`|<ZWVbc�[�p¢Å�Ã�Ì$Å"lÀcDTWa̳jDjw[^j�ÅÂat�gVYXscDadj n8VzX�Xwa�c,� �`a�c��ÂTWath�cwTWa4nd[gh\cwjD[g_¼VYXÂhW[_b[^hW�gatj�athW�^eg�gaok7Vzh}egn¥cDVby^ad_z|a�9latndmlcwVzhW�Ëe�prmWhIn�cwVz[gh}e�hIkBVYXÂjwaoegkl|cw[<egntn�atilc�e�nd[g�E�Ëe�hIk � �ÏTWadh}Xwa�ct�WcwTWa4nd[gh\cwjD[g_¼�ÂVz_b_�VYXDXÁmWae�h�Vbh\cDadjDjwmWiWc�cD[Eygatn�cw[^j�egkWkljDatXDX�g���.mWi*[gh�[gi*adjuevcDVb[^h�nd[g�EiW_za�cDVb[^hB[^jadjDjw[^j�� �F$ Ç}ad�E[gjD|7ÌR9\cDadhIXwVz[gh��OSUTWa1cs��[.�E[\XscXÁVz�ghWV �fnte�h\cÂZWV{cuXÂ[�pGcwTWaËÖ�#�ZWV{ciWT`|`XwVYnde�_FZImIX�egkIkljwaoXwXt�ql¨SUTWa�[gcwTWatjÖt��ZWVbcDX�egjwa(jwaon�[^jDklaok7Vzh�Å�Ã��UÔ4� n�# �¼Ö )WmWhIn�cwVz[gh�cw[ËZ*a�i*adjwpr[gjD��aok �

Íj!(~�SÂÅe!(Æ�Å�Ì8�lÌ8S �W�g�^��ÐÅÂ�sSÂÌ �I�^�WÖÅ�Ì$Ô½Ä �I�IÖt�a�cDng�b�� ��hWV{cDVze�cwa1cDTWa1prmWhIn�cwVz[gh}klatXwVz�ghIe�cwatkZ\|BZWVbcDX1Ö1cw[s#��ÂTWath�Xwa�co�elr�ÂjDV{cDa[ghW_z|1n�� �a�N� J��O�����sCE2FG ��6���24� � C � � J �Í8[gh\cDegVbhfX,cwTWaUcs��[^XOnd[g�EiW_zad�Eadh\c³[�p*cwTIaÂh\mI��Z*adjO[�p��[gjukWX8cw[EZfa1cDjDeghIXÁpradjDjwaokF�

� �k6�� TE�����N2F6�6�C 2FGO�k6A��2o� � C�� �sT �ZIV{c klatXDn�jDVzilcwVz[ghÖo� �*Ö�# ĽjwVzyga1h`mW�.Zfatjil¨�.cw[B�mnÖo� �l� Í8|`_zVbhIkWadjÂh`mW��Z*adj�l¨�.cw[}Öo×g×on$ �`mIjÁp¨e^n�a1h`mW��Z*adjil �W�zÖ�n#vÒ�� �`aon¥cD[gj�egkIkljwaoXwXMl ��cw[�ÖgÖ�n

� '< �� ��� �� � -� � � 9

SUTWVYX �I_baEn�[^h\cDe�VzhIX½cwTIa�nd[`kWa.�ÂTWVYnuT&VYX1XÁi*atndV �*n�cD[7cDTWaÅ�à kWVzXw] XÁ|lXÁcwat���EVÉ� a^� �ÂTWVYnuT¿VYX�cwTWaÏÅ�Ã�<Dklady`VYn�akljDVby^adj >W��^�

Page 75: A Commentary on the Sixth Edition UNIX OS -- Lions

� ' -( ����� �2�# �� ��& � � ,������SUTWa�XscDjDe�cwad�^|�jD[gmlcDVbhWa&VzX<nte�_z_baokF�Âag� �I��prjD[g� <DXÁ�Ue�iO>lÉ�g�lÖ¸�mn��^cD[ËTIe�hfkl_ba1Z*[�cDT�jDate^kBeghIkB�ÂjwVbcwa�jDa � mWaoXscuXd�gOB�� ~ � SUTWa�cDatXÁc7e�hIk ndeg_b_�[^h=<w�Ëe�iIeg_b_z[lnA>�TWadjDa�VzX<e

<ÁhW[gÒÉ[^ia>4aA9Wn�adiWc�[ghBcwTWa*%8Ä`%�ÖgÖ �^�v�.XÁ|lXÁcwad�

gOB�� �(� SUTWa�nd[lkla�prjD[g�"TWadjDa1cw[<_zVzhWa���$^�^��egiWifaoe�juXUcw[ZfaEmWhIhWatndatXDXwegjwVz_b|qkWady`Vb[^mIX *Ë�ladaEcwTIaEkWVzXDn�mIXDXwVb[^h[�pb<wjw]vegkIklj > Zfat_b[v��� ��p.cwTWa�ZW_z[`nu]Ïh`mW�.Zfatj�VzXcw[`[�_Ye�jD�ga^�oXwa�cGcwTWa�<w� Ì$Å�Åe!(Åe> #*e���eghIk1jwatif[^jÁc<wnd[g�EiW_za�cwVz[ghO>

ga7 Q ~ � Æ�VzhW]EcDTWa½ZIm��*atjUVbh\cw[�ei),� )�! _bVYXsc�pr[gj8cwTIa(nd[ghlÒcwjD[g_z_batjt� SUTWaÑ_zVYXsc�VzX�XÁVzhW�^_b| _zVbhW]^atkF�.mIXwatX&cwTWa<we¸y pr[gjD�e>8i*[gVzh\cwatjº[�p\cwTIa*<ÁZWmWp >�XÁcwjDmIn¥cDmWjwaoXd�¸e�hfkTIegX�TWate^kqe�hfk�cDe�Vz_,if[^Vbh\cwatjDX½Vzh <ÁjD]\cDe�ZO>W�Â��h\cwatjÁÒjwmIilcDX�prjw[^� klVzXw]�klaty\VYn�aoX��Ëe¸|�hW[�cEZ*a�eg_b_z[v�8aokevpÀcDadjUcwTIa �IjDXÁc�XscDadi

ga7��F7@� ��p¢cwTWa�Å�à n�[^h^cDjw[^_b_zadjÂVYX�hI[�c½ndmWjwjDadh\cD_b|�egn¥cDVby^ag���eg]ga�Vbc�mIi¿y`Vze�e nte�_z_.[^h <ÁjD]lXscue�jwc > l ��$m$\�on¥��ÂTWVYnuTÎnuTIatnu]lXEcwTfevc<cDTWadjDaqVYX7Xw[g�Ea�cDTWVbhI��cw[ kl[l ��$m$m$Fn¥� #feg�^XGcwTWaUn�[^h\cwjD[g_z_batj,e^XGZImIXÁ|plÉ�N$o$^�onGe�hfkndeg_b_YX3<DkladylXÁcDegjÁc > l ��$m$`�mn¥�½iIegXDXÁVzhW� egXBiIe�jue��Ea�ÒcwatjDX �

e if[^Vbh\cwatjqcD[ÐcwTIa��IjuXÁc&adh � mWatmWatk ZWm��¼adjTWaoegklatj� cDTWaqegkWkWjwaoXwX.[�p½cwTWaqÅ�Ã�Ä�Ô"kWVzXw] egkIkljwaoXwXjDad�^VzXÁcwatjt� l SUTWa�y¸eg_bmIaBiIe^XwXwatk VzX�VzhÑa��*aon¥c�IÖ¸�g�N$IÖ¸�l�,�lada1_bVzhWaoX���#^�m#W�W�m#m(^�W� n% e <wklVYXÁ]Ëe^kWkljDatXDX >�nd[g�EiWmlcDatkËZ`|r<ÁjD]vegkWklj > tadjD[ElrhW[gc�jDateg_b_z|�Vb�Ei*[gjwcDe�h\c�VbhB[gmWj�klVzXDn�mfXsÒXwVb[^h��We�hfkB�Ëe¸|<Z*a�Vz�ghW[^jwaokan¥�

� ' -, ��� ��� � � ��3'( �SUTWa�n�[lkla<Vzh�cDTWVYX�iWjD[ln�aoklmWjDa<Vbhfn�[gjDi*[gjuevcwaoX�e&Xwifaon�VYe�_praoevcwmIjwa7pr[gj��f_baoX��ÂTWVYnuT�aA9\cDadhIk�[vygadj���[^jwa<cwTIegh�[ghWaklVYXw]�kWjwVzyga^�&SUTWVYX4praoevcwmIjwaBVzX�klatXDn�jDVzZfaok�Vbh�cwTWa�x%8Ç�`aon¥cDVb[^h <wÅ�Ãsl¨� ]dn >I�³��cDX7mIXwa�prmW_zhWatXDX7Xwadat�ËXEcw[�Z*aqjDa�ÒXÁcwjDVzn�cwaokF�SUTWaÂyve�_zmWaUjDa�cwmIjwhWaok�Z`|b<wjw]ve^kWklj >�VYX,pr[gjD�ËevcÁcDatk�pr[gjklVzjDatn¥cUcDjDeghIXÁ�EVYXwXwVz[ghBcw[�cwTWa4nd[gh\cwjD[g_¼jDad�^VzXÁcwatjt�WÅ�Ã�Ä�Ô4�� ' 43 �� �� � � ��� � � � '��SUTWVYX1iWjD[ln�atkWmWjwa.�ÂTWadh�ndeg_b_zatk&pr[gj(cDTWaËÅ�Ã:klVYXw]q_b[\egkWXegiWiWjD[giWjDVze�cwa¢yve�_zmWatX�Vbh\cw[UcDTWaOjDad�gVYXÁcwadjuXFÅ�Ã�Ä�Ô��tÅ�Ã��UÔ��Å�Ã1�ÐÍ eghIk�Å�Ã1ÍU�ÐVbh XÁmfndn�aoXwXwVz[gh�� !½hI_b|ÏcDTWa�_ze^Xscyve�_zmWa1hWatatkWXUcD[EZfa4nd[g�EiWmlcDatk�evcÂcDTWVzX�Xscue��ga^�SUTWaqnte�_Yn�mW_YevcDVb[^h��³cDTW[gmW�^TÑ�EaoXwXw|�VzhÎegiWi*ate�jue�hfn�ag�VYXUXscDjDegVb�^T^c8pr[gjD��egjDk��,~�[�cwa½cwTfevcs<ÁT`Z¼n�[g�s>�VzX datjw[Ee�hfk<wjwZWiWÒ �ÂZ 9l�Ead�s>�n�[gh\cue�VzhIX�cwTWa�cs��[�TWVb�^TÑ[^jDkWadjEZWVbcDX[gpºcwTIa�iWT`|`XwVYnde�_Fnd[gjDa(e^kWkljDatXDXd�¢SUTWa�_z[^egkWVbhW��[�p¢Å�Ã�ÍU�VzhWVbcwVYe�_zVzXwatX.cwTIa�klVYXw]�n�[gh\cDjw[^_b_zadj.V � ag��cDTWa�[gi*adjuevcwVz[gh VzXhW[v��adh\cwVzjDad_z|<mWhIklatjUcwTWa4nd[gh\cwjD[g_F[gpºcDTWa�TIe�jukl�Ue�jDag�

<wklatylXscue�jwc >�jDa�cDmWjDhIX<cD[=<wjw]lXÁcDegjÁc > l ��$m$o(4n¥���ÂTIVznuTjDa�cwmIjwhIXqcw[ <wjw]lXÁcwjuevcDad�g|y> l ��$IÖo�on¥���ÂTWVznuT¿jwaoXÁadcDX}cDTWaiWjD[ln�atXDXw[gj�iWjwVz[gjDVbcs|ÎeghIk�jwadcwmWjDhIXBcw[�<wXw�Ue�ia>Wl �^�lÖ�#4n¥��ÂTWVYnuT��z�z�� '< �� � � " ���2� � ��3 � � �SUTWVYX�iWjD[ln�aoklmWjDa�VzX�Vbh`yg[^]gaok7cD[<TIeghIkl_za�cwTWa.Vbh\cDadjDjwmWiWcDX�ÂTWVYnuT [lndn�mIj&�ÂTWath¿Å�à klVYXÁ] [gi*adjuevcDVb[^hIXqegjwa nd[g��ÒiW_za�cDatkF�ga7�g g%� Í8TWatnu]<pr[gj�e.p¨e�_YXÁa�eg_zegjw� *ga7�g��-� ��hIXwifaon¥cÂcwTIa�adjDjw[^j8ZWVbc�fV{pOXwa�c��b�z�ga7 v Q-� Í�e�_z_q<wklatygadjDjD[gj >sl �N$o$`�mnOcD[�klVYXwiW_ze¸|<e��EatXDXDe��ga[^h�cwTWa4Xw|lXscDad�:nd[ghIXw[g_za�cDadjD�EVbhIeg_1ga7 v��'� Í8_baoe�j�cwTWa�Vbh\cDadjDhIe�_,jwat�gVYXscDadjuXÂ[�p$cwTWaEklVYXÁ]}n�[^hlÒcDjw[^_b_zadj�eghIk��b�z�ga7 v�,%� ��egV{c¢cDVb_z_`cwTWVYX¢VYXOn�[g�EiW_za�cDatk+lrmIXwmIeg_b_z|�e�prad� �EVbÒndjw[\XÁaon�[^hIkWX n�ga7 v B-� ��p�cwTIa7[gi*adjuevcDVb[^h�TIe^X�Z*adath�jwadcwjDVbaok�_zatXDX4cDTIe�hcDadh�cDVb�EatXt�Inte�_z_e<ÁjD]lXscue�jwc >�cw[EcwjD|Beg�^egVbh��c!�cDTWadjwÒ�ÂVYXwa��gVzyga(mWi}e�hIk�jDadi*[gjwcUegh�atjwjD[gj,ga7 v �-� �`a�c�cwTWaP<wjwadcwjD|y>}l�* nLnd[gmWh\c�ZIe^nu]qcD[ datjw[f�ºjDa�Ò�E[vy^a<cwTIa�ndmWjDjwath^cE[gi*adjuevcDVb[^h�prjD[g�AcwTIa <Degn�cÁp >_zVYXsco�4e�hIk n�[^�EiW_badcwa�cDTWa�[gi*adjuevcDVb[^h�Z`|�nte�_z_bVzhW�

<wVb[lkl[^hWa�>2ga7 ~ ,%� <ÁjD]lXscue�jwc >�VzX�ndeg_b_zatk�mIhIn�[^hIklVbcwVz[ghIeg_b_z|�TWadjDag�q��pcDTWa<ndeg_b_OVYX1hW[gc1hIatn�aoXwXDe�jD|PlrZ*atnte�mIXwa�cwTWaz<Degn�cÁp >_zVYXsc<VYXËad�Eilcs|1nr<wjw]lXÁcDegjÁc >q�ÂVz_b_½jwadcwmWjDhÑVz�E�EatklVbÒe�cwat_b| lÉ�N$o$m$4n��� '< �' " ������� �� � =�� �SUTWVYX³jD[gmlcDVbhIaÂVzX$iWjwVz�Ëe�jDVb_z|.nd[ghIndadjDhWatk��ÂVbcwTEcDTWa�jDa�cDmWjwh[�pÂjDatXw[gmWjun�aoX��ÂTWath eqZW_z[lnu]�V �¸[&[gi*adjuevcwVz[gh�TfegX�nd[g��ÒiW_za�cDatkF�O��c �

prjDadaoX�mWi�cDTWa<x�hWVzZWmIX��Ëe�i lÀpr[^j<ÖgÖ��g�v�a' Xt�FVbpÂegilÒiIjw[^iWjwVYevcDa�n% Xwa�cuXUcwTIaf<w� ÄM!(~½Ì > #fe�� jDad_zate^XÁaoX*cwTWa$ZWm��¼adj�Vbp`cwTWa³V �¸[U�UegX�e^XÁ|`hInuTIjw[^hW[gmIXt�[^j at_zXwaÐjDatXwa�cDX�cwTWa <w� �&Ô�~½SÂÌ$Äd> #feg� e�hIk�Ue�]^atX�mWi&e�h`|�iWjD[`ndatXDX��Ue�VbcwVzhW�Ëpr[^j�cwTIa.V �¸[<[^ilÒatjDe�cwVz[ghBcw[Ën�[^�EiW_badcwa^�

�\�

Page 76: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � ���r� � � �*� � * � �%�d�������

��hÎcDTWVzXBnuTIe�iWcwadjË��aq_z[`[g] e�c<cwTWa �I_ba <ÁZWVz[I� nA>�VzhÐkla�Òcue�Vz_ �U��c(nd[gh\cDegVbhfXÂ�E[^XÁc�[�p¢cwTWa.ZIegXwVYn1jw[^mlcwVzhWatX�mIXwatk�cw[�Ëe�hIVbiWmI_ze�cwaUZWm��¼adjOTWaoegklatjDX¢eghIk�ZIm��*atjDXjl�$\�m#^�l�N$l���g�on¥���hIklVzy`VzkWmIe�_(ZWm��¼adjBTWate^kladjuX<e�jDa}cue��g�^atk Z`| e kla�Òy`VYn�a7h`mW�.Zfatj <wZ kladyy>I�ql�$\�^�^��n1eghIk�e}ZI_b[lnu]�h`mW��Z*adj<wZ ZW_b]`hW[4>W�Zl�$\��#IÖ�n�� l ~�[�cDa(cwTWa��Ue¸|ËVbh��ÂTWVYnuT7cDTWa1_ze�cÁÒcDadjÂVYX�klatnd_zegjwaokBe^XUe�h�mWhIXwVb�^hWatkBVzh^cDad�^adjo� n��m��¼adj�TWaoegklatjDX��Ëe¸| Zfa _bVzhW]^atk3XÁVz��mW_bcDeghWad[^mIXw_b|Vzh\cw[�cs�8[E_zVzXÁcDX �� ��2 H �K - 5k��6���6 e�jDaË_bVYXÁcDXt�,[^hWa<i*adj�klady`VYn�a7nd[gh\cwjD[g_z_batjt��ÂTWVYnuTL_zVzhW]ÐcD[g�gadcwTWatjqZWm��¼adjuXqe^XwXw[ln�VYevcwaok �ÂVbcwTcwTIe�c�klady`VYn�a1cs|`ifa�� ��2 Hm/oXZK - 5k��6�� VYXUe4_zVzXÁc8[gpºZWm��¼adjuX8�ÂTWVznuTB�Ëe¸|�Z*a1kla�ÒcDe^nuTWatk&prjw[^� cDTWadVzj�n�mIjwjDadh\c�mIXwa<e�hIk�n�[^h`ygadjwcwaokcw[Ëe�h�e�_bcwatjwhfevcwa1mIXwag�

��[�cDT�cwTWab<De¸yy>vÒ�_bVYXsc�eghIkBcwTWa.y¸egjwVz[gmfXY<ÁZa>�ÒÉ_zVzXÁcDX�e�jDakl[^mWZW_z|Ë_bVzhW]^atkEcD[�p¨e^n�Vz_bVbcDe�cwa(VbhIXwadjwcwVz[ghBe�hIkBklad_za�cDVb[^hBevcegh\|7if[^Vbh\ct�� � �� � �� ���

��p�e�ZWm��*atj$VYX³�ÂVbcwTIkljue¸�Âh�cwat��i*[gjue�jDVz_b|�prjw[^� cwTIaE<we¸yy>�Ò_zVzXÁct�WcwTWath�VbcDXp<w� ��x(� d> #*e���VzXÂjue�VYXwatkF���pÂcwTIaBn�[^h\cwadh\cuX4[�p�e}ZIm��*atj.nd[gjDjwaon¥cw_z|&jDa #fatn¥c�cwTWaVzhlpr[gjD�ËevcDVb[^h1cwTIe�cºVzXG[gjGXÁTW[^mW_Yk1Zfa�XscD[gjDatk1[gh4kWVzXw]¼�tcDTWadhcDTWaf<w� ÄM!(~½Ì > #feg��VYXUjue�VYXÁaokF���p¢cwTWa <w� ĽÌ8Æg�ÐÅÂ� > #fe��EVYX�jue�VYXÁaokF�`cwTWa.n�[gh\cDadh\cDX[gp�cwTWa�ZWm��¼adj�e�jDaq�E[gjDa&mWiÐcw[ÑkIevcwa&cwTIeghÐcDTWa�nd[ghlÒcDadh\cDX7[�p�cwTIa�n�[^jwjDatXwi*[ghIklVzhW��klVYXÁ] ZW_z[lnu]*��eghIkÏTWathIn�acDTWa4ZWm��¼adj½��mIXÁc�Z*a4�ÂjwVbcÁcDadh}[^mlc�Z*a�pr[gjDa�Vbc½ndegh�Z*a4jDa�Òe^XwXwVb�^hWatk��� � -( � )7 � � � ��"�� : ���8�2&

��c4�ÂVz_b_$Zfa7Xwadath�cwTIe�c�cwTWaË_Ye�jD�gaEZWm��¼adjuX�Vzh�x�~���¾/e�jDa�Ëe�hIVbiWmI_ze�cwatk VbhLe �Ue¸|Î�ÂTWVYnuT VYX�eghIe�_z[g�^[gmIXËcw[ÑcwTWa[^ifatjDe�cwVz[ghq[gp8TIegjDkl�Ue�jDa�ntegnuTWaEevcwcDegnuTIatk�cD[BcDTWaE�Ëe�Vzh�Ead�E[^jw|<[gp,eEn�[^�EiWmlcwatj�ag� �I�,cDTWa*%$Äd%�Ö^Ö �g���W���m��¼adjuX�e�jDa.hW[gc4egXDXÁVz�ghWaok}cD[�egh`|}iIe�jwcwVYn�mW_Ye�j1iWjD[�Ò�^jDeg� [^j �I_zag��aA9Wn�adiWc<pr[gj�ygatjw| XÁTW[^jÁcBVbh\cwatjwyveg_zXBevc�ecDVb�Eag� ��h cwTWVYX���e¸|LeÏjwat_ze�cwVzygat_b|LXÁ�Ëe�_z_�h`mW�.Zfatj�[gpZWm��*atjDXBnde�hÎZ*a&XwTIe�jDatk a �¼atn�cwVzygat_b|Îe��E[ghI�^XÁc7e�_zegjw�^ah`mW�.ZfatjÂ[�p¢iWjw[^�gjue��ËX�e�hIk �I_zatXt���hlpr[^jw�ËevcDVb[^hËVzX$_badpÀc8VzhEcwTWa½ZWm��¼adjuX³mWh\cDVb_fcwTWa�ZWm��¼adjVYX¢hWadaoklatk�VÉ� a^�GVz�E�EatklVYevcDa�<w�ÂjwVbcwa�cDTWjw[^mW�gTO>�VYXOe¸yg[^VzklaokVbp*[^hW_z|4iIe�jwcO[�p*cwTWaÂZIm��*atj³TIe^X¢jwaon�adh\cD_b|4Z*adathËnuTIe�hW�^atkF�%$jw[^�gjue��ËXË�ÂTWVYnuT jDate^kÐ[gj��ÂjDV{cDa�jDatnd[gjukWX<�ÂTWVYnuT e�jDaXw�Ëe�_z_Und[g�EiIegjwaok��ÂVbcwTÑcwTWa�ZWm��¼adj<XwV� da�e�jDa<cwTIadhÎhW[�ci*adhIeg_bVYXwatkBmWhIklmW_z|g�

),Vbhfe�_z_b|Ë�ÂTWath7iWjD[g�^jDeg�ËX$e�jDa�cDadjD�EVbhIe�cwaok7e�hfk �I_zatXegjwaEn�_z[^XwatkF��cwTWaËiWjD[gZI_bat�EX([gp�athIXÁmIjwVzhW�BcwTIe�c�cwTWaËiWjD[�Ò�^jDeg�+' XFZWm��*atjDX,e�jDa #ImIXwTWaok�iWjD[gi*adjD_b|�lriWjD[gZW_zad�ËXG�ÂTWVYnuT

TIe¸y^aÂiW_zeg�gmWaok�[�cwTIadj$[^ifatjDe�cwVzhW�4Xw|`XÁcwat�ËX n¢Tfe¸ygaÂ_Ye�jD�gad_z|klVYXwegiWi*ate�jDatk��SUTWadjDa}VYXË[ghWa�e�jDate�[�p1iWjuegn¥cDVznte�_�nd[ghIndadjDh �qVbp(cDTWaklaon�VYXÁVz[gh <w�ÂTWadhÎcD[ �ÂjDV{cDa�>�VYX7_za�pÀcBcw[ cwTWa�[gi*adjuevcwVzhW�Xw|`XÁcwat� e�_z[ghIag��cDTWadh�Xw[g�EaËZWm��¼adjuX1�Ëe¸|&hW[gc�Zfa<�ÂjDVbcÁÒcwath�[^mlc(pr[gj�e7y^adjD|�_b[^hW�7cDVb�Ea^�.Ô�ntn�[^jDklVzhW�^_b|�cwTIadjDa.VYXe.mlcwVz_bVbcs|7iIjw[^�gjue�� �ÂTWVYnuTBjDmWhIX�cs�ÂVYn�a1i*adjÂ�EVbh`mlcDa�e�hIkpr[gjun�aoX.eg_b_ÂXwmInuT ZIm��*atjDX.cD[�Z*a��ÂjwVbcÁcDadh [^mlcËmWhInd[ghIklVbÒcwVz[ghfe�_z_b|^��SUTIVzX�_bVz�EV{cuX4cDTWa<_zVb]^ad_z|�eg��[^mWh\c4[�p�kWeg�Eeg�gacwTfevc�eEXÁmfkWkladh}Xw|lXscDad�:ndjDe^XÁTB�Ee¸|Bnde�mfXÁa^�� �' ), � ��� � 0 � � � ,����SUTWVYX�jw[^mlcwVzhWa dadjD[^X�[gmWc�cDTWa �IjDXÁc��g���Ð�8[^jDkWX l �WÖo�Z`|\cwatX n�[gp�cDTWaÐZWm��*atjt� ~�[gcwaÏcDTIevc cwTWa�iIe�jue��Ea�cDadjiIe^XwXwatk3cD[ <wnd_bjDZWmlp > VYX�cwTIaLe^kWkljDatXDX�[�p}cDTWa ZIm��*atjTWaoegklatjt�M<wnd_bjDZWmlp >.VYXÂndeg_b_zatk�Z`|P<De�_z_b[lnA>+l¨�^×m(\�mn¥�� �' 3 " ��� �8� �� 3 ����� �SUTWVYX¢jw[^mlcwVzhWaÂXwate�junuTWaoX�pr[^j³e½ZIm��*atjOcwTfevcOVzXOeg_bjDate^kl|4egXÁÒXwVb�^hWatkBcw[<e<iIe�jwcwVYn�mW_Ye�j*l klady`VYn�a^�IZW_z[lnu]7h`mW��Z*adj nUiIegVbjo���c.XwategjDnuTWaoX(cwTWaBn�VzjDndmW_zegjb<ÁZO>vÒ�_bVYXsc��ÂTW[\XÁa7TWate^k�VYX�cDTWa<wkWady\cDegZa>�XÁcwjDmIn¥cDmWjwa$pr[gj,cwTIa�klaty`Vznda³cs|`ifa^�G��p*e�ZWm��*atjGVYXpr[gmIhIkF�\cwTWa�e^kWkljDatXDX$[gp�cwTWa(ZWm��¼adjUTWaoegklatjUVzX�jDa�cwmIjwhWaokF�<ÁVzhInd[gjDa�>4VYX�nte�_z_baok7Z`|P<wZWjwaoegkWeo> l�$`��(g�W�F$l�N(m(4n¥�� �' �� � � � ��� � 3 � ( � �SUTWVYX�jD[gmlcDVbhIa�i*adjwpr[gjD�EX�cwTWa�Xweg�Ea�XÁaoe�junuT}egXp<wVbhfn�[gjDa�>ZWmlc��^[\aoX�prmIjÁcDTWadj1Vzh&cDTIevc1V{p8cwTWaEVzhWVbcwVYe�_OXÁaoe�junuTqVYX½mIhlÒXwmIndndatXDXsprmW_É�OeqZWm��*atj�VYX�e�_z_b[lnde�cwaok�prjw[^� cDTWa3<De¸yy>vÒ�_bVYXscl¨e¸yvegVb_Ye�ZW_za(_bVYXsc n¥���|�eËnte�_z_º[gh <whW[�cue¸y¸egVb_ >ul $\×g×g×4n¥�lcDTWa4ZWm��*atj�VYX�jDa�Ò�E[vygaok�prjD[g��cwTIa*<we¸yy>vÒ�_zVzXÁc�e�hIk #feg�g�^atk1egX<w� ��x(� d>I�

<Á�^a�cwZI_b]y> VzX��E[^jwa�XwmIXÁiIVzndVb[^mIX�[�pEV{cuX}iIegjDeg��adcwatjDXcwTfe�h <ÁVzhIn�[^jwa�>W�,��c�VzX�nte�_z_baok7Z`|=���= � �7L������ � 3>� �$N = � �7:�L������=�� �$N �7L���L�F � ���Q�%�$N �7: � ��( �9>��=��0� ����F���( � �>���0 � �7: � (8,��9>��=��0��� ����F�(8,8����F�( � � +0��=�= �7F��8,$: ��"8 ����N �7:8,$��L � � #��>� N = �7F��8,$: �

7 �a7�Q-� Ô�c.cDTWVYXEif[^Vbh\cEcwTWa�jDa � mWVzjwaok�ZWm��¼adjËTfegX�Zfatadh_z[lnde�cwatk Z`|ÎXÁaoe�junuTWVbhI�&cDTWa <ÁZO>vÒ�_bVYXsco��Ì$V{cDTWadj<VbcVYXS<D� �Ux(� d>1VzhË�ÂTWVYnuTEntegXwaÂeu<wXw_batadia>(��mfXsc$Z*acue�]^adh l�$^×m$o#on��¸[gj,ad_YXÁa8V{c¢VzX¢egiWiWjD[giWjDVze�cwaokpl $\×�$o(4n�7 � gOB-� ��pOcwTWa�jDa � mWVzjwaok�ZWm��¼adj1TIegX½hW[gc½Z*adadh�_b[lntevcwaokF�eghIk(V{p`cDTWa*<we¸yy>�ÒÉ_zVzXÁc¼VzXºad�Eilcs|g�¸Xwa�cFcwTIa*<w� �&Ô�~½SÂÌ$Äd>

#*e��(pr[gjOcDTWas<we¸yy>�ÒÉ_zVzXÁcOe�hIk.�g[(cw[f<DXÁ_zadatia>Yl $\×^�g�on�7 �Ov Q-� ��p¢cwTWab<De¸yy>vÒ�_bVYXscÂVYX�hW[gc�ad�Eilcs|^�fXwad_zatn�c�cwTWa �IjuXsc�Eat��Z*adjo��e�hIk1VbpIVbcGjDadiWjDatXwadh\cDXºep<wkWad_Ye¸|gatk(�ÂjDV{cDa�>egjwjue�hI�ga³cD[1TIe¸yga�V{c³�ÂjDVbcÁcwathE[gmlc³egXw|`hInuTWjD[ghW[^mIXw_b|

l�$^×^�^�mn%7 �Ov v-� <w� Å�Ì$Æ�!�Í >�VYX�e�jDad_zVzn�*qlÉ�`adaS$`��(o#on�

�o(

Page 77: A Commentary on the Sixth Edition UNIX OS -- Lions

7 �Ov ~ � SUTWa�n�[lkla1prjD[g�:TWadjDa1mWh\cwVz_ $^×\��#�mIhIn�[^hIklVbcwVz[ghlÒe�_z_b|�jwat�E[vygatX(cDTWa<ZWm��*atj4prjD[g� cwTWaP<wZa>vÒ�_zVzXÁc�pr[gjV{cuXºndmWjwjDadh\cºklaty`Vznda¢cs|\i*a8eghIk(jwatVbhfXÁatjÁcuXFV{cGVbh\cw[�cwTWaZWhlÒ�_bVYXÁcGpr[^j¢cwTWaUhWat�Ñklaty\VYn�a8cs|`ifa^�¢�lVbhInda�cwTWVYX¢�ÂVb_z_prjwa � mWadh\cw_z|�Zfa�eP<ÁhW[gÒÉ[^ia>EV � ag�UcDTWa�hIad� e�hfk�[g_Ykklady`VYn�aEcs|`i*a<�ÂVb_z_$Z*a<cDTWa7XDe��Eag�,Vbc��8[^mW_Yk�XÁatad�klatXwVzjDegZW_ba½cw[ËVzhIXwadjwc�e�cDatXÁc� +2�)9�#'3��J9 ;��>=�� ���E��=��8�

Zfadpr[gjDa1a�9latndmlcwVzhW�E_bVzhWaoXj$^×^�\�(cD[s$^×`��$I�~�[gcwa(cwTWa4Xwi*atn�VYe�_FTfe�hIkl_zVzhW�Epr[gj�nte�_z_zXU�ÂTWatjwa<wklaty � � ~d!(Ä(ÌR]d>El �¼Ö�n��qlÉ�`mInuT�ndeg_b_YX�VbhIndVzkWadhlÒcDeg_b_z|�egjwa��Ëe^kla4�ÂVbcwTW[^mlc(e<Xwatnd[ghIk�ife�jue��Ea�cDadjÂÒcwmlc+*¢cwmlc+*8�`ata(a^� �f�R#g�m$^�W� n

<ÁZWprjwatad_zVzXÁc >BXÁatjwy^atX(egX�cwTWa}<wklaty\cDe�ZO>7XÁcwjDmIn¥cDmWjwa�pr[gjcDTWaf<ÁZa>�ÒÉ_zVYXscUpr[gjs<D~d!(Ä(ÌR]d>W�� � (' � � � � �� 3 � '�� �SUTWVYX8iWjw[lndatklmWjDaÂcue�]gaoXOcDTWa½ZIm��*atj8ifegXDXÁaok<egX8e4iIegjDeg�.Òadcwadj�eghIk�_bVzhW]lXUVbc�ZIegnu]<Vzh\cw[�cwTIaf<we¸yy>vÒ�_bVYXÁct�Ô�h`|ËiWjD[ln�aoXwX$�ÂTWVznuTBVzX8adVbcwTIadjU��egV{cDVbhI�4pr[gj8cwTIa½iIegjÁÒcDVzndmW_zegjÂZWm��¼adj�[^j�e�h`|<e¸yve�Vz_zegZW_za(ZIm��*atjÂVzX��8[^]gadhBmWi��~�[gcwa�TW[v��adygatj<cDTIevc}XÁVzhInda�Z*[�cDT <wXw_zadadifX > l�$^×m$o#W�$\×^�g�on�e�jDa1e�cÂcwTWa.Xweg��a1iWjDVz[gjDV{cs|^�WV{p,cs��[ËiWjw[lndatXDXÁaoXÂe�jDa�Ue�VbcwVzhW� ��[ghWa�pr[gj½cwTWa�iIe�jwcwVYn�mI_zegj�ZWm��¼adj1e�hfk}[ghWa�pr[gjegh\|7ZWm��¼adj �<Vbc��ÂVb_z_�Z*a4e�cD[^XDXsÒ�mWi��ÂTWVYnuTB�ÂVz_b_º�ga�cÂVbct���|E�gVzy\VzhW��cwTWa �IjDXÁc8iIjwVz[gjDV{cs|�[vygatjOcwTIa(Xwatnd[ghIkbl¨ag� �I�Z`|4ZWVYegXwVzhW�½Z`|4[^hWa�nºcDTWaÂjDe^n�aUXÁTI[gmW_Yk�Z*aÂjDatXw[g_zygatk4��[^jwaXDevcDVzXÁp¨egn�cw[gjDVz_b|^��SUTWa�klVYXwe^klyve�h\cDeg�ga<[gp½XÁmfnuT e�nuTfe�hW�^a�EVz�gT\cÂZfa1cDTIevc�Vbc�n�[^mW_zkB_zategkBcD[EeEklaoegkl_z[lnu]7XwV{cDmIevcDVb[^hVzh}n�adjwcDegVbh�juevcwTIadjUifaon�mW_zVYe�j�n�Vzjun�mW�ËXÁcDe�hfn�atXt���p�e�h�atjwjD[gj�TfegX�[lndndmWjDjwaok�a^� �f��mWif[^h�jDategkWVbhW�}VzhlÒpr[^jw�ËevcDVb[^h�Vzh\cw[ÎcDTWa�ZWm��¼adj}cDTWa�Vzhlpr[gjD�ËevcDVb[^h�VzhLcwTWaZWm��*atj<�Ëe¸|�Zfa}VzhInd[gjDjwaon¥ct�ÏSUTWa}e^XwXwVb�^hW�Eadh\cË[gh _bVzhWa$4(m(m# adhIXwmWjDatX�cwTfevc�cwTWaÎVzhlpr[gjD�ËevcDVb[^h¿Vzh¿cDTWaÎZWm��¼adj�ÂVz_b_ºhW[�cÂZ*a���VYXÁcDe�]^adhW_z|<jDa�cDjwVzady^atk�XÁmWZfXÁa � mIadh\cw_z|g�OSUTWa<D� Ì8Å�Åe!(Åe> #feg�4VzX�Xwa�c8a^� �f�GZ`|r<ÁjD]lXscDjDe�cwat�g|y>Yl �N$\�m#4neghIk3<wjw]`Vzh\cwj > lÉ�N$^�`��n��SG[4XÁataÂTW[v� cDTWVYX³n�[^mW_zk�[lndndmWjo�^n�[^hIXwVzklatjO�ÂTIevc³Tfe�ilÒi*adhIX�cw[BeËZWm��¼adj(�ÂTWadhqe7klVzXw]�V �v[Ë[gi*adjuevcDVb[^h}VzX½n�[g��ÒiW_za�cDatk �ga7 ~ � <ÁjD]\Vzh\cwj >.nte�_z_zXY<wVb[lkl[^hWa�>2gOQ ,Ov <ÁVz[`kW[ghWa�>�Xwa�cuX�cwTWaf<D� ÄS!(~�Ìc> #fe�� gOQ ,O\ <ÁVz[`kW[ghWa�>�nte�_z_zXY<wZWjDad_YXÁa�> 7�BO\ ~ <ÁZWjDad_YXÁa�>�jwaoXÁadcDX¼cDTWaS<w� �&Ô½~�SÂÌ$Äd>W�a<w� ��x(� d>e�hIk+<D� Ô(� (~1Í > #fe��\X¼ZWmlcºhI[�cFcwTIa*<w� ÄM!(~½Ì >

#fe�� �U�����������

7 �a7�\ <Á�gadcwZW_z]y> �IhfkWX�cDTWa�ZWm��¼adjOe�hIk.ndeg_b_YXe<whW[�cue¸y¸egVb_ > gOQZ�yQ <ÁhW[gcDe¸yve�Vz_?>�Xwa�cDX�cDTWaf<w� �Ux½� d> #fe��

7 ~ g�� <wZWjDategka> lr�ÂTWVYnuT:ndeg_b_zatk <w�gadcwZW_z]y>on �IhfkWX�cDTWa<D� ÄS!(~�Ìc> #fe��ËXwa�c�e�hfk7aA9`VbcDXt�

~�[gcwa cDTIevcLZWm��¼adjLTWate^kladjuXÐegjwa jDad�E[vy^atk/prjw[^�cwTIa=<De¸yF>�ÒÉ_zVYXsc&Z`| <whW[�cue¸y¸egVb_ > eghIk¿egjwaÑjwadcwmWjDhWaok Z`|<ÁZIjwat_zXwa�>I�4�8m��*atj(TIategkWadjuX(egjwa.�E[vygatkqprjw[^� [ghWa}<ÁZO>vÒ_zVzXÁcÂcw[Ëe�hI[�cwTIadjÂZ`|P<Á�^a�cDZW_b]y>I�� �' �� � " � "�� � � � ���SUTWVYX�iIjw[ln�aoklmWjDa7VYX.nte�_z_baok�Z`| <Á�Ëe�Vzha>3lÁÖt�IÖA$4n1cw[&VzhWVbÒcwVYe�_zVYXÁa½cwTWa1ZWm��*atj�i*[`[g_É�³Ì³�Eilcs|^�`kW[gmWZW_z|<_zVbhI]gatkBn�VzjDndmlÒ_Ye�jU_bVYXÁcDX�egjwa�Xwa�cÂmWi �

pr[^jUcwTWaf<De¸yy>vÒ�_bVYXscSl�<wZlprjDadad_zVYXsc >.VYXUTWaoegkan% cDTWa*<wZa>vÒ�_bVYXÁc*pr[^j�h`mW_z_^klaty\VYn�aoXRl�<Dklady � ��~M!(Ä½Ì ]`>onlA<ÁZlprjDadat_bVYXÁc >�VzX�e��^egVbhBTWate^kan�

e}<wZa>vÒ�_bVYXÁc�pr[^jÂate^nuTB�Ëe�4s[^jÂklady`VYn�a1cs|`ifa^�)W[^jÂate^nuT7ZWm��¼adj �

cDTWaUZWm��¼adjOTWaoegklatj¢VzX,_zVbhW]^atk.Vbh\cD[�cDTWaY<ÁZa>�ÒÉ_zVzXÁc,pr[gjcDTWa4klaty\VYn�af<D~d!(Ä(ÌR]d> l �*Ö�n% cDTWaEegkWkljDatXDX½[�pOcwTIa.ZWm��*atj(VYX1XÁadc½VzhqcDTWa.TIategkWadjlÉ���^�\��n%

cDTWa�ZWm��¼adj #feg�^X�e�jDa�XÁadc}e^X <w� ��x(� d> lrcwTWVYXkW[\aoXÁh�' c�Xwadat�?cw[ËZ*a�jwaoe�_z_b|ËhIatn�aoXwXDe�jD|1ndl ���`���on� cDTWa<ZWm��*atj�TWaoegklatj4VzX4_bVzhW]gaok�Vbh\cD[�cwTWaP<De¸yy>vÒ�_bVYXscZ`|�e�nte�_z_F[gh <ÁZWjDad_YXwa�>+l ���`�N#4n�SUTWa h`mW�.Zfatj [gp�ZI_b[lnu] klady`VYn�atX VzX jwaon�[^jDklaok egX

<Áh`ZW_z]lkladyy>I� SUTWVYX}VYXqmIXwatkLpr[^j&nuTWatnu]`VzhW�Îyve�_zmWatXqpr[gj<wkWadyy>�Vzh <w�ga�cDZW_z]F> l $^×\�^�mn¥�p<w�ga�cD�Ëkladyy> l �WÖo×^�mn<e�hIk<Á[^ifathWV >=l �\���g�on�� ��hfXÁi*atn�cwVz[gh3[�p <ÁZ¼kladylXw�e>"l�$^�\���onXwTW[v��X½cwTIe�cu<wh`ZW_b]lklatyy>7�ÂVz_b_$ZfaËXwa�c�cw[�atVb�^T^c��ÂTWatjwaoegXcwTIa�y¸eg_bmIa([^hWa1VzX��ÂTIevcÂVYXÂjwaoe�_z_b|ËjDa � mWVzjDatkF�SUTWVYXËjwaoXÁmI_{c7nd[gmW_Yk Z*aq[^ZlcDegVbhWaok Z`|=<ÁatkWV{cDVbhW�4>�egXpr[g_z_z[v��X��

� �0��(�� � � ����(8, � � � 9'� � �>=��*� � &� �0��(�L � � ����F�F � � � *�*

� �' �� � � � � � 3 � � 3 �SUTWVYX�VzX�cDTWa�XÁcDe�hfkWe�jukÐiWjD[ln�aoklmWjDa�pr[^j�jwaoegklVzhW� prjw[^�ZW_z[lnu]7klady`VYn�aoXd�¢��c�VYX�ndeg_b_zatkBZ`| �3 � �$N �7L���(�� � ���Q�8�$N �7: � ��F'�9>��=��0��� ����F ��� � �>���� � �7: � F�L'�� N � N � �7:����8,�� � �>�0�0 � �7F�� � F'��"8 ����N �7:8,�,$: � � ,�= N �7F�L�, � ���=��0� � �7:�����( � � � #>�>� N �7F�L$(�:'�3>� �$N = � �7:�L���� � �$N � ��� � �7F��>��:/� F���L�,��9�8��# �7:���F����O:�� (�( � � �$�= � �7F�:0���'�<Á�^a�cwZI_b]y> �IhIkWX�e�ZWm��*atjt�Ë��p�cwTWaz<D� ÄS!(~�Ìc> #fe��VYXÂXÁadc�hW[EV �v[�VYXUhWatatklaokF�

�g×

Page 78: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � � � � �= � 3 ��� , �SUTWVYX�iWjD[`ndatklmIjwa TIegX�eghÓegkIklV{cDVb[^hIe�_EiIegjDeg�Ea�cwatjt��egXnd[g�EiIe�jDatk��ÂV{cDTt<wZWjDategka>W�º��cOVYXOndeg_b_zatk.[ghW_z|4Z`|f<ÁjDate^klV >l �^�g�g�on��7 ~ \ Q(� Í8TWaonu]7VbpGcDTWa�klaoXÁVzjwaok�ZW_b[lnu]BTIegXÂeg_bjDate^kl|<Z*adadhegXDXÁVz�ghIatk�cw[�e�ZIm��*atjt�jl¨��c8�Ëe¸|�hW[gc$|gadc$Z*a½e¸yve�Vz_{Òe�ZW_zag�lZImlc�evc�_zate^XscÂVYXUV{cÂcDTWadjDa %�n�7 ~ \���� ��pUhW[�c�VzhWV{cDVze�cwa�cwTIaËhWatndatXDXwegjw|�jDategk�[gi*adjuevcDVb[^hZWmlc�kl[^hZ' cU�Ue�VbcÂpr[gjÂVbcÂcw[ �IhIVzXwT 7 ~ \ \(� Æ�[`[^]Be�jD[gmIhIk<pr[^jÂcwTIab<ÁjDate^kBegTWate^k1>EZW_z[`nu]¼�8��pV{c<VYX<hI[�cËcwTIadjDag�Âe�_z_b[lntevcwa}e�ZWm��*atjtl $l�N(^×on.ZWmlcjwat_baoegXwaUV{c`l�$`��×WÖ�nGVbp¼cwTWa�ZIm��*atj$VYX³e�_zjDategkW|�jDategkW|�7 ~ � B(� SUTWa+<ÁjDate^k<e�TWaoegk1>�ZW_z[`nu]EVYX�hW[�cÂjDategkW|g�`XÁ[�VbhIV{ÒcwVYevcDa1egh}egXw|\hfnuTWjw[^hW[gmfX$jDate^k<[gi*adjuevcDVb[^h 7 ~ � \(� ��pGe�ZIm��*atjU��e^X$egXDXwVb�^hWatk�cD[4cwTIa(ndmWjwjDadh\c$ZI_b[lnu]ndeg_b_j<wZWjwaoegk1>�cw[E�Âjue�i�V{c�mIi��Wad_YXwag�z�b�7�\OQ Q(� ��e�Vbc&pr[gj�cwTIaÑn�[^�EiW_badcwVz[gh [gpËcwTWa [gi*adjuevcDVb[^h�ÂTWVYnuTB�UegXÂXÁcDegjÁcDatk�evcÂ_bVzhWaS$l�N(^�W�� � �� �� �!" �� � 3 �� ���SUTWVYX�VzX8cDTWa�Xscue�hIkWegjDk<iWjw[lndatklmWjDa�pr[^j8�ÂjDVbcwVzhW��cD[.ZI_b[lnu]klaty`VzndatXt�3��c�VYXBnte�_z_baokÏZ`| <Áa�9lVbc >Il�#^�m#g×4n¥�s<ÁZfe¸�ÂjwVbcwa�>l�$o(g�o#on��P<Á�^a�cwZI_b]y>�l $\×g�m#4n¥�P<wZ�#ImIXwTa> lÉ�g�N$fÖ�n��P<sprjDada�>l��v�^�WÖ�n�� <ÁmWi¼kWevcDa�>YlÉ�g�g�WÖ�nGe�hIkt<ÁVzmWi¼kWevc >�l���$\�g�on��G~�� �(�<w�ÂjwVbcwatV?>�ndeg_b_YXY<ÁZIe¸�ÂjDVbcwa�>+l¨�o#WÖo�on *7�\ ,OQ(� ��p$cDTWar<w� Ô½� 1~(Í > #feg�7VYX1hW[�c4Xwa�co�FcwTWaEiWjD[�Òn�aoklmWjDaUkW[\aoX¢hW[�c³jDa�cDmWjDh.mWh\cDVb_IcwTWaÂV �¸[1[gi*adjuevcDVb[^hVzXÂnd[g�EiW_za�cDatk�7�\ ,OB(� ��p*cwTWap<D� Ô(� (~1Í >1VzX$XÁadct�gZImlci<w� ĽÌ8Æg�ÐÅÂ� >

[i/16 hI[�c.Xwa�c l¨hW[�cDaz< #feg�o>�VYX4XÁadc.evc4_zVzhWap$o(IÖt�4nndeg_b_Y<Á�^a�cDadjDjw[^j >PlÉ��#o#g�on4cw[�nuTIatnu]�[ghÑcwTIa}adjDjw[^j#fe��f�blr��ps<w� Ä(Ì$Æ^�ÐÅÂ� >���e^X�XÁadct�¢e�hIk�cwTIadjDaËVzXe�h�adjDjD[gjo��XÁathIklVzhW�}cwTIaËadjDjw[^j�VbhIkWVzntevcwVz[gh�cD[�cwTWajwVz�gT\cUiWjD[`ndatXDX�VzXY<Ácw[`[ETIe�jukF� >on¥�OSUTWa�nte�_z_Rl $o(\�N$Fn[gh <w�ga�cDadjDjw[^j >��ÂVz_b_U[^hW_b|�jDadi*[gjwc�adjDjD[gjuX�jwat_ze�cwaokcw[�cwTIa�VbhWVbcwVYevcDVb[^h�[�pºcDTWa��ÂjDV{cDa�[gi*adjuevcwVz[ghº�

� � ��8� � � " �� � 3 � � '��SUTWVYX�iIjw[ln�aoklmWjDaOVzXGndeg_b_zatk1Z`|E<w�ÂjwVbcwatV?>Sl �m#IÖt�on¼eghIku<ÁZ¼k`Ò�ÂjDV{cDa�>Il $o(m$\�on¥� <Á�ÂjDV{cDadV >�ndeg_b_YX7atV{cDTWadj <wZIe¸�ÂjwVbcwa�>�[gj<wZ*kl�ÂjDVbcwa�>�klatifathIklVzhW��[ghÎ�ÂTWadcwTWatjEcwTWa}ZI_b[lnu]�cD[�Zfa�ÂjDV{cwcwath�TfegXUZ*adadh��ÂTW[^_b_z|<[^jÂiIe�jwcwVYe�_z_b| �f_b_zatkF�� � �� ( � � �!"��� � 3 �8, '��SUTWVYX�iWjw[lndatklmWjDa�VYX�nte�_z_baok Z`| <Á�ÂjDV{cDadV >�l¨�o#WÖgÖ�n}e�hfk<wZW�Ëe�ia>ul¨�m$m$4#W�l��$o$^×W�`��$4(^�W�`�\���^�.eghIkB�\���IÖ * n¥�7�\a7 7@� Ľ[ghZ' c�klat_ze¸|.cwTIa��ÂjDV{cDa�VbpFcwTWa(klady`VYn�a�VYX$e��Ëe���ÒhWa�cDVzn½cue�i*a4kljwVzygaE�z�b�O]^adatiBatygadjD|\cwTWVzhW�EVzh�[^jDkWadj,

7�\a7 ~ � �`a�c,cwTIa�<D� ÄS!(~�Ìc>W��<w� ĽÌ8Æg�ÐÅ�� > #feg�^XGe�hIknte�_z_<wZWjwat_zXwa�>�cD[<_zVbhW]BcwTIa�ZWm��¼adj½Vbh\cD[ËcwTWa <we¸yy>vÒ_zVYXsco�� �' �� , ��� 0 � � � � (8(����SUTWVYX³iWjD[ln�aoklmWjDa�VzX�ndeg_b_zatkEZ`|}<ÁmWi¼kWe�cwa�>ElÉ���g�WÖ�n¥�g�ÂTIVznuTVYX ndeg_b_zatkMZ\| <Áife�hWVYnA> lÉ�N$`���on��3<DXÁ|`hIn�> l�#�$4(g×4n�e�hIk<wXwmW�E[gmIh^c > l �WÖ¸���on��

<ÁZ�#fmIXÁTO>ÂXÁaoe�junuTWatXfcwTIa*<we¸yy>vÒ�_zVzXÁc¼pr[gjj<wkWad_Ye¸|gatk½�ÂjDV{cDa�>ZW_z[lnu]`X�e�hIk pr[gjun�atXqcwTWat� cw[ Z*a �ÂjDVbcÁcwath [gmWc�egXw|`hlÒnuTWjD[ghW[^mIXw_b|^�~�[gcwa1cwTfevc½e^Xs<ÁhW[gcDe¸yve�Vz_ >.e^k#4smIXÁcDXUcDTWa4_zVbhW]lXÂ[gpGcDTWa<we¸yy>�ÒÉ_zVzXÁct��cwTWa<XwategjDnuT lr�ÂTWVYnuT�jDmWhIX4e�c�iWjD[`ndatXDXÁ[^j1iWjwVbÒ[gjDVbcs|�XwV:9an1VYX.jwatVbhWVbcwVYevcDatk�e�pÀcwatj.aoegnuT <wkWad_Ye¸|gatk��ÂjDV{cDa�>ZW_z[lnu]<VzXUathIn�[^mWh\cwatjwaokF�~�[gcwa&eg_zXw[�cwTIe�cBXwVbhIndaqVbc7TIe�iIifathIXËcDTIevc3<wZ�#ImIXwTa>VYX&[^hW_b| nte�_z_baok Z`| <ÁmWi¼kWevcDa�> �ÂV{cDT <Dkladyy>Ïa � mfe�_.cw[<w~M!(Ä½Ì ]`>I�*_zVzhWa7�g�m#m(W�FVzh�iIe�jwcwVYn�mW_Ye�jo�ºnd[gmW_Yk&Z*a<XwVb��ÒiW_zV �fatkF�� �' ��13 � � & � " � � �8( � ���SUTWVYX,jw[^mlcwVzhWa�VzXOnte�_z_baok�cw[(TIeghIkl_za�<wjDe¸�e>�VbhWiImlc �v[gmlcDiWmlcVÉ� a^�<[gi*adjuevcDVb[^hIX1�ÂTWVYnuT�Vz�ghI[gjDa.cDTWaËhW[^jw�Ëe�_$�WÖo��nuTIegjÁÒegn�cwatj�ZI_b[lnu]BXwV� dag�

<ÁiWT`|lXwVb[4>7VYX�ndeg_b_zatk�Z`| <ÁjD]`jwaoegk1>tl �N$l�v�4n�eghIk <wjw]\Ò�ÂjDV{cDa�>blÉ�N$o(o#onU�ÂTIVznuT&egiWi*ate�j1egX�adh\cwjDVzatX½Vbh}cDTWaEe�jDjDe¸|<wntkladylXw�e> l�$^�o(�$4n

<wÅ�e¸� V �¸[4><VYX�hW[gc(eghqatXDXÁath\cwVYe�_GpratevcDmWjDa�[�p$x½~���¾.�)W[^j$klVYXÁ]Eklaty\VYn�aoXOVbc$VzX$mIXwatkE�Ëe�VzhW_z|�pr[^j$n�[^i\|`VzhW���ÂTW[^_baklVYXÁ]lX�eghIk�nuTWatnu]`VzhW��cwTWa<Vzh\cwat�gjDV{cs|q[gp8cDTWa �I_za7Xw|`XÁcwat�egXÂeE�ÂTI[g_zapl¨Xwada4a^� �f�³�wÍ�È�ÌUÍ�à l�]��Á�w� nÂVzh�cwTWa�x`%$Ç n���ÂTWatjwa�Vbc½VYX�nd[gh`ygathWVbath\c�cw[<jDate^k��ÂTW[g_za�cwjuegnu]lXt�WjuevcwTIadjcwTfe�h�XÁVzhW�g_za1ZW_z[`nu]lXt�Wevc�e.cwVz�Eag�~�[gcwa}cDTWa&klaon�_Ye�juevcwVz[gh [�pf<DXscDjDe�c > l �^���WÖ�n¥� �`Vbhfn�acwTIa(e^n¥cwmfe�_*iIe�jue��Ea�cDadj�mIXwatk<a^� �f�M<ÁjD]`XÁcwjuevcDad�^|F>slÉ��#o(g×onkl[`atX�hW[�cºjDa�cDmWjDh1egh`|�yve�_zmWag�oVYXFcwTIVzX�pr[gjD� [�pWklaon�_Ye�juevcDVb[^hjDate�_z_z|ËhWatndatXDXwegjw| %

���

Page 79: A Commentary on the Sixth Edition UNIX OS -- Lions

������������ ������������� ����$�3�*6� �1������:�)*<����% =6� ��� , " �:�1���$% , " �7�>��� �

�>���8�(4� , " ���>���>�>�)� � � �/�0����)� , " �:� ���$%.������&��� ���>�(%�����#�" �:�

���$%7%���* �(���>�* � �(�-�*B ����)� �0�(%.����>7� ������ �" �����>�* �� '�/%'����� ����:3��)� ���;� %&� ���.@��$� �'4�6��� � ���(���� ��1�� ����*B� ����� �8������� )� �$* �(������� .���$%��$���

�:�:�������� , " �:��� " &�(������� , " �:����� ��%&��*B�����>�*G� �:��� ���$%A�*B ������� ������ 7���$%A�������(������������ , " �/�>���>�>���8�(4

5 � ��" ��7�����)" 3�%'�:� �������:&%��8� �* ���/�� $)�� �1#)* �:�(%!)� , " ��(��" " �(%7� � @)��@)����4

� � � � �A� � � �j�� �*� �.�"���Y� � � �

Ô�_zegjw�^a�iIegjÁc�[�pºatygatjw|E[gi*adjuevcDVbhI�.Xw|`XÁcwat�MXÁatad�ËX$cw[�Zfand[ghIndadjDhWatkË�ÂVbcwT�kWe�cDe4�ËeghIe��^ad�Eadh\c�eghIk �f_ba(�Ëe�hIeg�ga�Ò�Eadh\co�Ie�hIk�x�~���¾ cwmIjwhIXU[^mlcÂcw[EZ*a�hW[Ëa�9WndadilcDVb[^h���`aon¥cwVz[gh*)I[gmWjº[�p`cwTWa8XÁ[^mWjDndaOn�[lkla$nd[gh\cDegVbhIX*cDTWVzjÁcDadadh�I_zatXt�SUTWa �IjuXscLpr[gmIj nd[gh\cDegVbh n�[g�E�E[gh�klatnd_zegjDe�cwVz[ghIXhWatatklaok�Z\|7y¸egjwVz[gmfX8[gpGcDTWa�[�cDTWadjÂjD[gmWcwVzhWatX �H � 5�2 � ��K klaoXwndjwVzZfaoXOcDTWa�XÁcwjDmIn¥cDmWjwaÂ[gp¼cwTWa < �I_za�>�egjwjue¸| H � 5�6�XZ6 � ��K kWatXDn�jDVbZ*atX&cwTWa XscDjwmfn¥cwmIjwaÑ[�pËcwTIa&<wXwmWi*adjZW_z[`nu]y>�pr[gjs<w��[^mWh\cwaok1> �I_ba4Xw|lXscDad�ËX�Hm�k��� � ��K klatXDn�jDVzZfaoX¼cwTWa8XscDjwmIn�cwmWjDaO[�p�<ÁVzhW[lklaoX >�jDatn�[^jDkWatk[gh <Á�E[gmIh^cDatk1>�klaty\VYn�aoX�Hm�k���Z��2 � ��K klatXDn�jDVzZfaoX(cwTWa<XÁcwjDmIn¥cDmWjDa�[gp$cDTWaz<ÁVzhW[lkla�>e�jDjDe¸| SUTWa8hWa�9`cºcs��[ �I_zatXt��<wXw|`Xu�l� nA>ÂeghIku<wXw|lX #I� n�>Un�[gh\cue�Vzhnd[`kWa�pr[^j(Xw|lXscDad� ndeg_b_YXt�pl�<wXw|lXdÖ^� n�><e�hfk <wXw|lX $f� n�>E�8atjwaiWjDatXwadh\cDatkBVbhq�`aon¥cwVz[gh�SU��[4n¥�SUhWaEhWaA9\c �Iy^a �f_baoXd�j<wjDkl�ÂjDVÉ� n�>W�q<wXwmWZWjo� n�>W�q< �f[I� nA>W�

<De�_z_b[ln�� nA>7e�hIk <ÁVz�ga�co� n�>W�fcw[^�ga�cDTWadj(iWjDatXwadh\c�cDTWa�iWjwVzhIndV{ÒiIeg_`jw[^mlcwVzhWatXGpr[^j��f_baU�Ëe�hIeg�gat��ath\ct��e�hfk4iWjD[vy`Vzkla�e�_zVzhW]Z*a�cs��adathËcwTWa½V �v[�[^jwVzadh\cwaokËXÁ|lXÁcwat�3nte�_z_zX�e�hIkËcwTWa½ZIegXwVznV �¸[EjD[gmlcDVbhWaoXd�SUTWa �f_ba <whIe��EVÉ� n�>�VzXBn�[^hIn�atjwhWaok �ÂV{cDTÐXÁaoe�junuTWVbhI�klVzjDatn¥cD[gjDVbaoX�cD[&n�[^h\y^adjwc��I_za7iIe�cwTWhfe��EatX.Vbh\cD[ <ÁVzhW[lkla�>jDa�pratjwathIn�aoXd�),Vbhfe�_z_b|^�Z<ÁiWVzi*ag� nA>½VzXGcwTIa�<Dklady`VYn�a8kWjwVzygatj >�pr[gj,iWVbi*atXt�

�� �� � " �� ) � �# � �� ��!" � �#" � �Ô x�~���¾ �I_zaÎVzX�nd[ghIndadilcDmIe�_z_b|Óe hIeg�Eatk nuTIe�juegn�cwatjXÁcwjDVbhI�I�FXscD[gjDatk�[^h&[ghIa�[�p�e<yve�jDVbadcs|B[gp$i*adjDVbiWTIadjue�_¢kla�Òy`VYn�atXsl¨[gj�Vzh&cDTWaË�Ëe�Vzh��Eat��[^jw|1n��Ge�hfk�e^ndn�aoXwXwVzZW_ba�y`Vze�EatnuTfe�hWVYXÁ�ËX¢e�iIiWjw[^iWjDVze�cwa8cw[(cwTWaÂmfXÁmIeg_`ifatjwVziWTWatjDeg_Wkla�Òy`VYn�atXt���cË�ÂVb_z_UZfa�hW[gcwatk�cwTIe�c.cDTWadjDa�VzX.hW[�jwaon�[gjuk�XÁcwjDmIn¥ÒcDmWjwa�egXDXÁ[ln�VYevcDatk �ÂVbcwT x½~���¾ �f_baoXd� È�[v��ady^adjz<whWad�UÒ_zVbhIa�>�nuTIe�juegn�cwadjuXO�Ëe¸|EZfa1VzhIXwadjwcwatk<Vbh\cw[.cwTIa �I_za½cw[Ekla�Ò�IhIa4XÁmWZfXscDjwVzhW�^XUeghIe�_z[g�^[gmIX8cw[EjDatnd[gjukWXd�

x�~���¾Mnde�jDjDVbaoX�cDTWaËVzkWategX([gp�klaty\VYn�aEVzhIklatifathIkladhfn�acw[1cDTWadVzj³_z[g�^Vznte�_la�9`cDjwat��aÂZ`|�eg_b_z[v�ÂVzhW�(cwTWa �f_baÂhIeg�EaÂVbha �¼atn�c�cD[7kla�cDadjD�EVbhWa.mWhWV � mWad_z|}e�_z_ºjDad_zadyve�h\c½e�cÁcwjDVzZWmlcwaoX[�pGcwTWa �f_ba^���< )( $ & � �� � )� � � �

SUTWaBpr[g_z_b[v�ÂVzhW��XÁ|lXÁcwad� nte�_z_zXEegjwaBiWjw[vy`VYklatk a�9liWjDatXDXÁ_z|pr[gj �f_ba��Ëe�hIVbiWmI_ze�cwVz[gh �� � /10P2 � ����2 � � /1032 � �k��2# jwaoegk �^�`Ö^Ö ÖA$ �E]`hW[lk ��×\�g�$ �ÂjwVbcwa �^���g� Öo� nuTW�E[lk #^�g�g�� [gi*adh �^�v�\� Öt� nuTW[v�Âh #^�\���� n�_z[^Xwa ��(�$\� Öt× Xwadat] ��(^�WÖ( n�jDate�c �^�N(IÖ �lÖ �E[gmIh^c �g�o(g�× _bVzhW] ��×g�^× �g� mW�E[^mWh\c �WÖ�$m$Öo� mWhW_zVbhI] #^�lÖo� $IÖ klmIi �g�^�g×Ö¸� nuTIklVzj #^��#o( $\� iWVzi*a �g�g��#

��< ), ) �����2� ��� � � � �

SUTWa4egjwjue¸|lXi< �I_ba�>Ee�hIk <ÁVzhW[lkla�>�egjwa1aoXwXwadh\cwVYe�_�nd[g�Ei*[�ÒhWath^cuXU[�p,cwTWa �f_ba4e^ndn�aoXwX��EatnuTfe�hWVYXÁ�����< 3 � �� �� � � � �

SUTWa(e�jDjDe¸|t< �I_za�>�VYX�kla �IhIatk7e^X$egh7e�jDjDe¸|.[�pºXÁcwjDmIn¥cDmWjDatXl¨eg_zXw[�hIe��Eatk < �I_ba�>on��Ô�h�ad_zad�Eath^c4[gp$cDTWaz< �I_za�>�egjwjue¸|�VzX4nd[ghIXwVYkladjDatkqcw[Z*a�mWhIe�_z_z[`ntevcDatkBV{pM<sp nd[gmWh\c >.VYX datjw[f�Ì$e^nuT+<w[gi*adha>U[^je<wndjwaoevc >ÂXÁ|lXÁcwad�Lndeg_b_^jwaoXÁmW_bcDXºVbh1cDTWae�_z_z[`ntevcDVb[^h.[gp¼egh�at_bat�Eadh\c³[�p*cwTWas< �I_za�>�e�jDjue¸|g�ºSUTWa�e^k`ÒkljDatXDXU[�p¢cwTIVzXÂat_bat�Eadh\c�VYX�XscD[gjDatk�Vzhqe�h�ad_zad�Eadh\c�[gp,cDTWandeg_b_zVzhW�qiWjD[ln�atXDX�' X.e�jDjDe¸|I<Ám�� m [ �f_ba�>W�&��c�VzX.cDTWa7VzhIklaA9[�pUcDTWa7hWat�Â_b|�e�_z_z[`ntevcDatk�ad_zad�Eath^c.[�pÂcwTIa7_YevcÁcDadj�e�jDjDe¸|�ÂTWVYnuT&VYX1iIegXDXwatkqZfegnu]�cw[BcwTIa�mfXÁatj(iIjw[ln�aoXwXt�.ĽatXDn�athlÒkWegh^cuX¢[�pFe1iWjD[`ndatXDXOn�jDate�cwatk.Z`|b<ÁhIad�ÂiWjD[lnA>(VbhITWadjDV{cOcDTWan�[^h\cwadh\cuXU[�pºcDTWa�iIegjwath^c�' XY<wm�� m [ �I_za�>�e�jDjue¸|g�Ì$e^nuT½at_bat��ath\cº[�p�< �I_za�>UVzhInd_bmIkWatX�eÂnd[gmWh\cwatjt� <sp nd[gmWh\c >I�cw[1kladcwadjD�EVbhIa$cDTWaUh\mI��Z*adj¢[�pfndmWjDjwath^c¢iWjD[ln�atXDXwatX��ÂTIVznuTjDa�pradjDadhfn�a(V{co�

<sp nd[gmWh\c >7VzX(VzhIn�jDad�Eath^cDatk&Z\| <whWad�ÂiIjw[lnA>tlsÖ�(\�N(4n¥�<wkWmWia>Yl¨�^�\�v×4nºeghIk}<sp¨eg_b_z[lnA>�l¨�m(\�^�mn��Vbc³VzX$klatndjwat��ath\cwatkZ`|P<wnd_b[\XÁadp >ul¨�^�^�^�mn$eghIk}lrVbp,cDTWa �I_za�nde�h�' c�Z*a�[gi*adhWaokanZ`|P<Á[^ifathW_ >+lÉ��(o#g�on��SUTWaP<Áp #fe��4>}lÉ�g�g�g×on([gpUcwTWaP< �I_za�>�ad_zad�Eath^c.hW[�cDatX�ÂTWadcwTWatjÂcwTWa �f_ba4VYXÂ[^ifathBpr[^j�jDategkWVbhW�ËeghIk �¸[^jÂ�ÂjwVbcwVzhW�[gj��ÂTIa�cwTIadj4Vbc4VzX�e <ÁiWVzifa�>�[gj�hW[gct�}l�)WmIjÁcDTWadj�kWVzXDn�mIXÁÒXwVb[^h�[�p�<ÁiWVzi*atX >Â�ÂVb_z_\Zfa�kla�pratjwjDatk(cDVb_z_lÍ8Tfe�ilcDadjGSU��adh\cs|\Ò!½hWa^� nSUTWa < �I_za�> XÁcwjDmIn¥cDmWjDa e�_YXÁ[ nd[gh\cDegVbhfX e i*[gVzh\cwadjo�<sp VzhW[lkla�>zlÉ�g�WÖgÖ�n�cw[}egh�ath^cDjw|&Vbh�cwTIaz<ÁVzhW[lkla�>7cDegZW_ba^�e�hfk�e #\��ZWVbc�Vzh\cwad�^adjo�M<sp [ �FXwa�c >3l �g�WÖo�on¥�¢�ÂTWVYnuT VYX.e_z[g�gVYndeg_¼if[^Vbh\cwatjUcw[<eEnuTIegjDe^n¥cwatj8�ÂVbcwTIVbh�cDTWa �I_zag�

�`Ö

Page 80: A Commentary on the Sixth Edition UNIX OS -- Lions

�� (� " � � � � � ' � ���<wVbhW[lkla�>&VYXËkla��IhWatkÎe^XËe�hÎe�jDjDe¸|�[�p1XscDjwmfn¥cwmIjwaoX+l e�_YXÁ[hIeg�Eatk@<ÁVzhW[lkla�>4n¥�Ô�h ad_zad�Eadh\c.[gpUcwTWa@<ÁVzhW[lkla�>�VYX.nd[ghIXwVYkladjDatk�cw[&ZfamWhfe�_z_b[lnde�cwaokÓVbp�cwTWaÏjDa�pratjwathIn�aÐnd[gmWh\co�P<ÁV n�[^mWh\c >W�7VzX tadjD[I�Ô�c.aoegnuT�i*[gVzh^c�Vbh�cDVb�Ea^�S<ÁVzhW[lkla�>}nd[gh\cDegVbhIX�eqXÁVzhlÒ�^_ba.adh\cwjD|7pr[^j½aoegnuT �f_ba.�ÂTWVznuT&�Ee¸|�Z*a.jDa�pratjwathIn�aok�pr[gjhW[^jw�Ëeg_OV �v[�[^ifatjDe�cwVz[ghIXt�F[gj��ÂTIVznuT�VYX�ZfatVbhI�}a�9latndmlcwaok[^j.�ÂTWVYnuT TIegX.Zfatadh a�9latndmlcwaok eghIk TfegX�cwTWa <wXÁcwVYnu]`|y>ZWVbc(Xwa�co�¼[gj��ÂTIVznuT}VYX�cDTWa���[gjD]`VbhI�<klVbjDatn�cw[^jw|Bpr[gj(XÁ[^��aiWjD[ln�aoXwXt��`atygadjue�_S< �I_za�>�cDegZW_zaËadh\cwjDVbaoX1�Ëe¸|&i*[gVzh^c�cD[qe}XÁVzhlÒ�^_ba <ÁVzhW[lkla�>�adh\cDjw|^� SUTWa�VzhW[lkla�adh\cwjD|�klaoXwndjwVzZfaoX.cwTWa�^adhWatjDeg_¼kWVzXwif[^jwVbcwVz[gh�[�p,cwTIa �I_ba^��� (' � � � 0 ��� � �� �� 0 " � �Ì8egnuT �I_zaEjwa � mWVbjDatX�cwTIaEkWatklVYnde�cwVz[gh&[gp8n�atjÁcue�Vzh�Xw|lXscDad�jDatXw[gmWjun�aoXd�Â�ÏTIadh&e �I_ba.a�9lVYXscuXd�*ZWmlc1VzX½hW[gc½Z*adVzhW�7jDa�pÀÒatjwathIn�aok7Vzh}e�h`|<�Ue¸|g�`V{c�jDa � mWVzjDatX �� /�� e<klVzjwaon¥cw[^jw|Badh\cwjD|tlÁÖt�<nuTfe�juegn¥cDadjuXUVbhqe7klVbjDatn�cw[^jw|

�I_za�n�� �� e7kWVzXw] <ÁVzhW[lkla�>7adh\cwjD|zl�#^�7nuTIe�juegn�cwatjDXÂVzh�e<cDegZW_baXscD[gjDatk7[gh�cwTWa4kWVzXw]1n�� ��� datjw[f�,[^hWa<[^j.�E[gjDa<ZW_z[lnu]lX4[�p�kWVzXw]�XscD[gjue��gablÉ�lÖ¸�nuTIe�juegn�cwatjDX8ate^nuTOn¥���h�egkIklV{cDVb[^h�V{pUcwTIa �I_baËVYX�Z*adVzhW�}jDa�pradjDadhfn�atk�pr[^j4XÁ[^��aiWmIjwi*[^Xwag�lVbc�jwa � mWVbjDatX� �� e�n�[gjDaE<wVbhI[`kWa�>4ath\cwjD|bl�#^��nuTIe�juegn�cwatjDX$VbhBcwTWa+<ÁVzhlÒ[lkla�>Ee�jDjue¸|yn%),VzhIe�_z_b|�Vbp$eËmIXwadj�iIjw[^�gjue��MTIe^Xp<w[gi*adhWaok1>�cwTWa �I_za�pr[gjjDate^klVbhI��[^j��ÂjDVbcwVzhW�I��e�h`mW�.ZfatjE[�p½jDatXw[gmIjDndatX�e�jDaBjDa�Ò� mWVzjwaok �� 2� er< �f_ba�>.egjwjue¸|Ëadh\cwjD| lk(�nuTfe�juegn¥cDadjuX n%� ��� e�h.adh\cwjD|4Vzh�cDTWaUmIXwadj¢iWjD[g�gjue��u' Xe<wm�� m [ �I_za�>(e�jDjDe¸|

lr[^hWaE�8[^jDk&ifatj �I_ba^��i*[gVzh^cDVbhI��cw[}e3< �I_za�>�e�jDjDe¸|adh\cwjD|1n�Ç}aonuTIe�hWVYXw�EX¢Tfe¸yga³cD[1ZfaÂXwa�cOmWi�pr[gjOe�_z_z[`ntevcDVbhW�1e�hfkklaoe�_z_b[lntevcwVzhW��ategnuT [�p�cDTWatXwa�jwaoXÁ[^mWjDndatX�Vbh e�h [^jDkWadjD_b|�Ëe�hIhWadjo�,SUTIaÂpr[g_z_b[v�ÂVzhW�(cDegZW_za��gVzygaoX,cwTWa�hfe��EatX$[�p*cwTWaiWjDVzhIn�VziIe�_FiIjw[ln�aoklmWjDatX�Vzh\y^[g_zygaok �

�N2F6�� �����o2 � ���/1�k� � �N2F2klVzjDatn¥cD[gjD|<adh\cDjw| hIe��EadV hIeg�EadVklVYXw]3<ÁVzhW[lkla�>.ath\cwjD| Vzeg_b_z[ln VbprjwataklVYXw]BXÁcw[gjue��^a½ZI_b[lnu] e�_z_b[ln prjDadand[gjDa+<wVbhI[`kWa�>�adh\cwjD| Vb�^a�c VziWmlc< �I_ba�>.cDe�ZI_ba�ath^cDjw| p¨e�_z_b[ln nd_b[\XÁadp<wm [ �I_za�>�ath^cDjw| mlp¨e�_z_b[ln nd_b[\XÁa

��< �� ��� � " � � � " ��

�ÏTWath e�iWjD[g�^jDeg���ÂVYXwTWatX�cD[�jDa�pratjwathIn�a�e �I_za��ÂTIVznuTe�_zjDategkW|qa�9lVYXscuXd�¢Vbc���mIXÁct<w[gi*adha>�cDTWa �I_zaËcD[&n�jDate�cwa7e<ÁZIjwVYkl�ga�>1cw[�cwTWa �I_zag�jl ~�[�cDa�cDTIevcUVzhBx�~���¾��liWjD[ln�aoXwXwatXmIXwmIe�_z_z|�VbhWTIadjDV{c¢cwTIaÂ[gi*adh��f_baoX¢[�pIcDTWadVzjOiIegjwath^cuX,[gj¢iWjDa�Òklaon�atXDXw[gjuXd�WXw[EcwTIe�c�[�pÀcDadhqeg_b_�hIadatkWatk �I_zatX�egjwa4eg_bjDate^kl|Vz��iI_bVYn�Vbcw_z|}[gi*adh�� n}��pOcDTWa �I_ba�kl[`atX½hW[�c�e�_zjDategkW|7a�9lVYXsco�Vbc���mIXÁcÂZfaf<Dn�jDatevcDatk1>I�SUTWVYX�XÁaon�[^hIkBntegXwa½�ÂVz_z_�Zfa�Vzh`ygaoXscDVb�\evcwaok �fjDXÁc ���< �� � � � � � � � � �g ~ \ v-� <ÁhIeg�EadV >*lÉ�g�lÖ�(4n�nd[gh`ygatjÁcuXºe�ifevcwTIhIe��Ea�Vbh\cw[1e�h

<wVbhI[`kWa�>Âi*[gVzh\cwadjo�e<wmInuTIe�j >UVYXFcwTIa³hIe��Ea³[gpIeUiWjD[�ÒndatklmIjwa��ÂTWVYnuT�jwaon�[vy^adjuX$cDTWa�iIe�cwTWhIeg�Eag�InuTIegjDe^n¥ÒcDadjÂZ`|7nuTIegjDe^n¥cDadjo�gprjD[g� cDTWa�mIXwadjUiWjD[g�gjue��?kWe�cDeegjwaoe g ~ \ ~ � Ô h`mW_z_E<ÁVzhW[lkla�>�if[^Vbh\cwatj<VzhIklVYndevcDatX7adVbcwTWatjBe�hatjwjD[gjU[^jUcwTIe�c�hW[ �I_za�[�p,cwTIe�c�hIe��Ea�e�_zjDategkW|<a�9`ÒVYXÁcDX�g ~ \ \-� )W[^j.atjwjD[gj�nd[ghIkWV{cDVb[^hIXd�³Xwada@<uÍ�Å�Ì8ÔOS lr�w� n >�VbhcDTWa4x%8Ç

g ~ � Q-� <Á�Ëe�]`hW[lkla�>MlÉ��$`�g�on¼n�jDatevcDatX�e�n�[gjDaS<ÁVzhW[lkla�>Ây`Vzee�ndeg_b_U[gh&<ÁVYe�_z_b[lnA>&e�hIk�cDTWadhÑVbhIV{cDVzeg_bVYXÁaoX�VbcËe�hIkath\cwadjuXUVbcUVzh\cw[�cwTIa4e�iWiWjD[giIjwVYevcDa(klVzjDatn¥cD[gjD|g�¢~�[gcwacDTWa�a�9liW_zVYn�Vbc�jwaoXÁadcÁcwVzhW�E[�p,cwTIaf<wXÁcwVYnu]\|y>.ZWVbc��< �� �8� ��� � ��� �3 �SUTWVYX iIjw[ln�aoklmWjDaÐVYXÑnte�_z_baok?Z`| <w[gi*adha> l �^�^��$Fn�e�hIk<wndjwaoevc > l �^��×m#I�½�^��×^�mn��ÂiIegXDXwVbhW� y¸eg_bmIatX�[�p�cDTWa&cDTWVzjDkiIegjDeg��adcwatjt�M<scDjÁp >W�O[�p��I�$�qeghIkÐÖBjwaoXÁi*atn�cwVzygad_z|g��SUTWayve�_zmWa��EjDadiWjDatXwadh\cuX�cwTWa�ntegXwa��ÂTWadjDa�hW[ �f_ba4[gpGcDTWa.kWa�ÒXwVbjDatkBhIe��Ea�e�_zjDategkW|Ëa�9lVzXÁcDXt�gO\Z�1,%� SUTWa Xwatnd[ghIkLiIegjDeg��adcwatjt�f<w��[lkla�>W�4nte�h cDeg]gacDTWa7yveg_bmWaoX��IÖbl�< )¢Å�Ì8Ô�Äd>on��G�^�Pl�< ),�ÐÅÂ�sSÂÌc>on[^j(�o# lA< )¢Å�Ì$Ô½Ä � ),�ÐÅÂ�sSÂÌ >4nÂ�ÂTWathI<Ácwjwp ><VYX�I�lZWmlc�[^hW_z|7�^�.[�cDTWadjD�ÂVYXÁa�

�ÏTIa�cwaEe��I_ba�[�pOcDTWaEklatXwVbjDatkqhIe��EaEe�_zjwaoegkl|�a�9`ÒVYXÁcDXt��nuTWatnu]�cwTIa�e^ndn�aoXwX½i*adjD��VYXDXÁVz[ghIX�pr[gj½cwTIaEkWa�ÒXwVzjwaokË�E[`kWaol¨X nO[gpºegn�cwVzy\Vbcs|�y\VYe�nte�_z_zX$[ghz<DegndndatXDX >l �\�N$^�on����ÂTWVYnuT��Ee¸|�XÁadcu<wm�� m adjDjw[^j >BegX�e}XwVzkWa�Òa��*aon¥c,

gO\ ,a7(� ��p½cDTWa �I_za}VzXËZ*adVzhW� <wndjwaoevcDatk1>I�³ad_zVb�EVzhIevcDa}V{cuXiIjwaty\Vz[gmfXFn�[gh\cDadh\cDXFy`VYeÂeÂndeg_b_�[^hu<ÁVbcwjDmWhInA>Sl���$fÖA$4n��SUTIa7n�[lkla<TIadjDa<n�[gmI_zk�Z*a<Vz��iIjw[vy^atk�Z\|�nuTIeghW��ÒVzhW�EcDTWa�cwaoXsc�cw[z<�lrcwjwp � �MÖ�n >W�R]OatjwVbpr|<cDTIevc�cwTWVYX��[gmI_zkBZfa4Xw[I�gO\ ,Ov-� <ÁiWjDad_za�>sl��N(o(^�mn,VYX³mfXÁaokEcw[b<wmWhW_z[lnu]F>u<wVbhI[`kWatX >W��ÏTIadjDag�E|g[^m �Ëe¸| e^XÁ]¼�EklVYk cwTIa=<wVbhW[lkla�> �^a�c

<w_b[lnu]^atk1>I�`eghIkB�ÂT\| %�g�

Page 81: A Commentary on the Sixth Edition UNIX OS -- Lions

gO\ , ~ � ~�[gcwa cDTIevc <sp¨e�_z_z[`n�> l¨�o(�$`�mnÎndeg_b_YX <wmlp¨e�_z_b[ln�>l¨�o(^�N$Fn$e^X�cwTWa �fjDXÁcUcwTWVzhW�ËVbc�kl[`atX�

gO\OB���� <ÁmWp¨e�_z_b[lnA>�_zate¸y^atX*cwTIa³mIXwadj �I_zaOVYkladh\cwVbpr|`VbhI��h`mW��ÒZfatju<Ám�� m e�ju�a{ Å���| >I���ÏT\|�kl[`atX½cwTWVYX4XÁcDe�cwad�Eath^c[lndn�mIjº�ÂTWatjwa³Vbc,kW[\aoXd�¸VzhIXÁcwate^k1[�pIe�pÀcwadjG_bVzhWaU��(m#m$&%gO\OB�,-� <Á[^ifathWV >bl¨�`�v�^�on�VzX½ndeg_b_zatk�cD[7ndeg_b_GTIe�hfkl_batjDX�pr[gjXÁi*atndVzeg_��I_zatXt�`Vbh�ndega�e�h`|Ëklady`VYn�a(XÁi*atndV �fn½egn�cwVz[ghIXe�jDa�jDa � mWVzjwaokblÀpr[^j�klVYXw] �f_baoX$cDTWadjDa�VYX8hW[�e^n¥cDVb[^hOn�gO\OB �(� ��hLcwTWa�ntegXwa�[�pËe�h adjDjw[^j��ÂTWVb_za��Ëe�]`VzhW� cwTWa

< �I_za�>Ïegjwjue¸|Ðath^cDjw|^��cwTIa�<ÁVzhW[lkla�>Ðadh\cwjD| VYXqjDa�Ò_baoegXwatk7Z\|�eEnde�_z_F[gh <ÁVziWmlc >W���c$�ÂVz_b_lZ*a�Xwadath�cDTIevc³jDatXwif[^hIXwVbZWVz_zV{cs|4VYX � mWVbcwaÂ�ÂVYklad_z|klVYXÁcwjDVbZWmWcwatk��(SUTWat< �I_za�><cDegZW_ba.adh\cwjD|�VzX(VzhWV{cDVzeg_bVYXwatk}Z`|

<Áp¨e�_z_b[lnA>�e�hIk=<Á[^ifathW_ > 8cwTWa <ÁVzhW[lkla�>}cDegZW_za�ath\cwjD|g�³Z`|<wVb�^a�c >I��<ÁVYe�_z_b[lnA>EeghIk3<w�Ëe�]`hW[lkla�>I�~�[gcwa(cwTfevcs<ÁVYe�_z_b[ln�>.nd_baoe�juX$[^mlcUcwTWau<ÁV egkWkWj >�e�jDjDe¸|[gpGe�hIad�Â_z|<e�_z_b[lnde�cwaokP<ÁVzhW[lkla�>.eghIkP<wV{cDjwmWhfnA>�kW[\aoX8cwTWaXDe��Ea<pr[^j�e&iWjDa�Ò�a�9lVzXÁcwVzhW� <wVbhI[`kWa�>W�³Xw[}cDTIevcËevpÀcDadj.cwTWa<Dn�jDatevc >7Xw|lXscDad� ndeg_b_É�FcDTWadjDa�egjwa�hW[�klVYXÁ]}ZW_z[lnu]lX(e^XwXw[�ÒndVze�cwatkB�ÂVbcwT�cwTIa �f_ba^�WhW[v��nd_ze^XwXwatk�egXY<DXÁ�Ëeg_b_ >W��� �� �8� � � � � ' ,����a½hI[v�ÎcwmWjDh<cD[�nd[ghIXwVzkWadj8cwTWa1nde^XÁa½�ÂTWadjDa½e.iWjD[g�gjue���ÂVYXÁTIatX�cw[ËjDa�pratjwathIn�a1e �I_za1�ÂTWVznuT}eg_bjDate^kl|Ëa�9lVYXscuXd�

<Áhfe��EadV >7VYX�ndeg_b_zatk@l �\�g�v�4nÂ�ÂVbcwT�e�XÁaon�[ghfkqiIegjDeg�.Òadcwadj½[�p tadjD[Ëcw[B_b[lnde�cwa�cDTWa�hfe��Eatk �f_ba^��l�<wm�� m e�jD�O{ �N| >nd[gh\cDegVbhIXºcwTIaUe^kWkljDatXDX�Vzh�cDTWa�mIXÁatjOXÁiIe^n�a8[�pfe(nuTIe�juegn�cwatjXÁcwjDVbhI���ÂTIVznuT�kla �fhWatX�e �I_za�iIe�cwT�hIe��Ea^� n<Ámº� m egjw� {{ÖA| ><TIegX�cw[�ZfaEVzhIn�jDad�Eath^cDatk}Z`|}[^hWag�¼Z*a�Ònte�mIXwa�cwTWatjwa&VzXBe��EVzXw�ËevcDnuTÏZ*a�cs��adathÎcwTWa&mIXÁatj7iWjD[�Ò�^jDeg���EVzhW��nd[gh`ygath^cDVb[^hIX�e�hIkEcDTWa(Vbh\cwatjwhfe�_FkWevcue4jDadiWjDa�ÒXwadh\cDe�cwVz[ghIXt� n

�� ��8� �8� ��� �� ��=" � " �� �<Ácwjwp >�VYXOhW[v� dadjD[I�\XÁ[4e^ndndatXDXOifatjw�EVYXwXwVz[ghIX³egjwa�nuTIatnu]gaoklÉ��(WÖ�#on4ZWmlcEcwTWa�aA9`VYXÁcwVzhW��f_bazlrVbp(egh`|yn�VYX.hI[�c<klateg_b_z[�ÒntevcwaoktlÉ��(\�N$4n���ÏTIe�c8VYX³e�_zV{cwcw_za�klVYXwnd[ghIndadjwcwVzhW��TWadjDaÂVYXOcwTfevct�`e�ife�jwcprjD[g� cDTWa�nte�_z_G[^h <Áp¨e�_z_b[lnA>tl �m(^�^�mn¥�fcwTWatjwa�VYX½hI[�klVzjDatn¥cnte�_z_�[ghÐegh\|Ñ[�p1cwTIa <ÁjDatXw[gmWjun�a}eg_b_z[lndevcDVb[^ha>�jw[^mlcwVzhWaoXd�!�p¢n�[gmIjDXwag�\pr[gjÂeghBaA9`VYXÁcwVzhW� �I_ba^�lhWadVbcwTIadj�klVzjwaon¥cD[gjD|ËadhlÒcDjw|BhW[gj�kWVzXw]@<wVbhI[`kWa�>�adh\cwjD|7hI[gj�klVYXw]BZW_z[lnu]lXUhWadaok�Zfaeg_b_z[lndevcDatkF��SUTWa�n�[gjDaP<wVbhW[lkla�>qath^cDjw|�VYX.eg_b_z[lnde�cwatk lrVbphWaon�aoXwXDe�jD|1n1egX�e�XÁVYkladÒÉa��*aon¥c.[gpUcwTWa�ndeg_b_8[gh�<whIe��EadV >W�ZWmWc4�b�z�O�ÂTWadjDa1VzX�V{c�VzhWVbcwVYe�_zVzXwatk %�� �� ( � ����� �� � � 3 '��SUTWa3<wn�_z[^Xwa�>�Xw|`XÁcwat��nte�_z_³VYX�mIXwatk�cw[qXwady^adj�aA9`iI_bVYn�Vbcw_z|cDTWa7n�[^hWhWaon¥cwVz[gh�Z*a�cs��adath�e}mIXwadj4iWjD[g�^jDeg� e�hIk�e �f_baeghIk<cDT`mIX�ndeghBZ*a1jwat�^egjDklaok7e^X$cDTWa�Vzh\y^adjuXÁa([�pd<Á[^ifatha>W�SUTWaËmIXwadj�iIjw[^�gjue��u' X �I_zaËVzkWadh\cwV �fnde�cwVz[gh�VzX1ifegXDXÁaoky`VYe4ju�W�¢SUTWa�yve�_zmWa½VzX�yve�_zVzkIevcwaokËZ`|r<Á�gadcÁp > l¨�^�WÖt×4n¥�gcwTWa

<Ámº� m [ �I_ba�>&ath\cwjD|�VzX�atjDe^XÁaokF�8eghIk e�ndeg_b_UVYXE�Ëegkla�[gh<wnd_b[\XÁadp >W���< �� , � � ��� � � ' ' 3 ,��<wnd_b[\XÁadp >}VYX.nte�_z_baok�Z`|W<Dn�_z[^Xwa�>zlÉ��(^��$4n�eghIk�Z`| <Áa�9lVbc >l�#\��#^�on¥� l¨SUTIa�_YevcwcwatjBVYX���[^jwa�n�[^���E[^h�XwVbhInda&�E[^XÁc�I_zatXUkl[EhW[gc��^a�cÂn�_z[^Xwatk<aA9liW_bVYn�Vbcw_z|<ZWmWcU[^hW_z|<Vb�EiW_zVYn�Vbcw_z|�ÂTWath7cDTWa�mIXwadjÂiWjD[g�^jDeg� cwadjD�EVbhfevcwaoXd� nv va7 �-� ��p�cwTIa �f_ba�VYX�e�iWVzifa^�$jDatXwa�c�cwTWa��E[lkla�[�p�cDTWaiIVbi*a�e�hIkt<Á�Ue�]^admWiO>�e�h`|�iWjD[ln�aoXwX,�ÂTWVYnuT.VYX¢�Ue�VbcÁÒVzhW�Ëpr[^jÂcwTIa�iWVbi*ag�*adVbcwTIadjÂpr[^j�VbhWpr[gjD�Ee�cwVz[gh�[gj�pr[gjXwiIe^n�a�v v g g%� ��pWcwTIVzX¢VYXGcwTWaU_YegXÁc,iWjD[ln�aoXwXºcw[(jwadpradjDadhInda³cDTWa �I_ba^�nte�_z_j<wnd_b[\XÁatV?> l¨�g�`���on¢cw[ETIeghIkl_za�e�h`|<XÁi*atndVzeg_¼adhIk[gp �I_baÂiIjw[ln�aoXwXwVzhW�1pr[gj$Xwi*atn�VYe�_��I_baoX³e�hfk�cwTWath<nde�_z_

<wVbiImlc >2v v g ~ � Ä�aon�jDad�Eadh\c(cwTWa}< �f_ba�>7ath^cDjw|�jDa�pratjwathIn�aEn�[^mWh\ct���pUcDTWVzX�hW[v� dadjD[I��cwTWa<ath\cwjD|&VYX�hW[}_z[ghW�^adj4e�_z_z[�ÒntevcDatkF���< ��13 "�� 0 � � � , 383 �<wnd_b[\XÁatV?>I��egX¢VbcDXO_YegXÁc$egn�cwVz[ghEndeg_b_YXS<ÁVziWmlc >W�¢SUTWVYXOjw[^mlcwVzhWaVYX8Vzh<p¨e^n¥cÂndeg_b_zatk<prjw[^�?�Eegh`|�iI_ze^n�atXt�`�ÂTWadhIadygatj�e�n�[^hlÒhWaon¥cwVz[gh&cw[�eBnd[gjDa <ÁVzhW[lkla�><VYX�cD[BZ*aËXÁatygadjDatk}eghIk}cDTWajDa�pradjDadhfn�a1n�[gmIh^c�kWatn�jDad�Eath^cDatkF�~ B gOQ-� ��p�cwTIa�jDa�pratjwathIn�a�n�[^mWh\c�VYX�[ghWa�evc�cwTWVYXEi*[gVzh^co�cDTWa <ÁVzhW[lkla�>&VzX.cw[�Zfa�jDad_zategXwatk����ÏTWVz_za7cDTWVzX�VYXTfe�iWi*adhWVzhW�f�WV{c�XwTW[^mW_zkBZ*a�_b[lnu]gaokF�~ B g ,%� ��pWcwTIa�h`mW�.Zfatj¢[�pc<w_bVzhW]lX >Âcw[½cwTIa �f_ba�VzX tadjD[�l¨[gj_zatXDX n8cwTWa �I_za1VzXÂcw[EZfa4kWate�_z_z[`ntevcDatk}l¨Xwada�Z*ad_z[v�n�~ B g ~ � <ÁVzmWi¼kWevc > lÉ��#\��$Fn�mWi¼kWevcDatX7cwTWa�egndndatXDXÁaokÎe�hIkmIi*kWe�cwaUcDVb�EatXOe^X,jwaon�[gjuklaok4[gh.cwTIaUkWVzXw]b<ÁVzhW[lkla�> ~ B gO\-� <ÁiWjDad_za�>�mWhW_z[lnu]`X�cDTWaf<ÁVzhW[lkla�>W�¢�ÏT`|7XÁTI[gmW_Yk7VbcZ*a4ndeg_b_zatkBTWatjwa4e^XU�8at_b_�e^XÂevcÂ_bVzhWa.��#g�m#&%��< �� � . �� �#" ��� � � � " � �~�at� �I_baoX&egjwa egmlcw[^�ËevcwVYndeg_b_z| ath\cwadjDatkLVzh\cw[ÏcDTWa �I_zaklVzjwaon¥cD[gjD|Îe^X�ifatjw�Ëe�hIadh\c �f_baoX}egX�XÁ[`[^h�egX7cwTIad| egjwa<Á[^ifathWatka>W�<�`mWZIXwa � mWath\cu<Dn�_z[^XwVbhI�o>B[�p�e �I_za<kl[`atX1hI[�ce�mWcw[g�Ëe�cwVYnde�_z_z|½ndegmIXwa³V{cuXGkWad_za�cwVz[ghº�GÔ�XG�UegXºXwadath4evc,_bVzhWa�N#\�g�W�gklad_za�cDVb[^h<�ÂVz_b_*[lndn�mIj8�ÂTWathËcwTIa �Iat_zkz<wV hI_bVzhW]y>�[�pcwTIaEnd[gjDat<wVbhI[`kWa�>Badh\cwjD|}VzX tadjD[I��SUTWVzX �fad_Yk�VYX1XÁadc1cw[[ghIa�VzhWV{cDVzeg_b_z|�Z`| <w�Ëe�]`hW[lkla�> lÉ��$\��$FnU�ÂTWadh&cwTWa �I_za�VYX�IjuXscÂn�jDate�cwaokF�G��cÂ�Ëe¸|ËZ*a(VzhIndjwat��ath\cwatk7Z`|EcwTWa�Xw|`XÁcwat�ndeg_b_S<w_bVzhW]y>rl �g×�$IÖ�n�eghIk�klatndjwat�Eadh\cwaok&Z`|}cDTWa7Xw|`XÁcwat�ndeg_b_j<wmWhW_zVbhI]F>ulk#^�g�g×on��

%³jD[g�^jDeg�EX(�ÂTWVYnuT�n�jDate�cwa�cwat��i*[gjue�jD| <w�8[^jw] �f_baoX >XwTW[gmW_Yk.jwat��[vy^a$cDTWatXwa �I_zatXOZ*a�pr[^jwaUcDadjD�EVbhIe�cwVzhW�I�gZ\|.a�9`ÒatndmlcwVzhW�1e�ht<ÁmWhW_zVzhW]y>�Xw|`XÁcwat� ndeg_b_É�,~�[�cDa$cDTIevc,cwTWaY<wmWhlÒ_zVbhW]y>(ndeg_b_Wkl[`aoX¢hW[�cO[�pfV{cuXÁat_{p¼jwat�E[vyga³cDTWa �I_zag�¢SUTWVYXOnde�h�N#

Page 82: A Commentary on the Sixth Edition UNIX OS -- Lions

[^hW_b|&TIe�iWi*adh��ÂTWath�cwTWaEjDa�pradjDadhfn�aËn�[^mWh\cslA<ÁV n�[^mWh\c >onVYXÂe�Z*[gmlcÂcD[EZfa4klaon�jDad�Eadh\cDatkBcw[ datjw[fl��N#^�g�W�I�N#^�^�on¥�SG[��EVbhIVb�EVYXÁa$cwTWa�iWjD[gZW_zad�ËXºe^XwXw[ln�VYevcDatk(�ÂV{cDT <Ácwad��Òi*[gjue�jD|y> �I_baoXÐ�ÂTWVYnuT XwmWjDy\Vzyga iIjw[^�gjue�� [^j�Xw|lXscDad�ndjDe^XÁTWaoXd�$iWjw[^�gjue��E�EadjuX.XwTW[^mW_zkÑ[gZfXÁatjwy^a7cDTWaqn�[^h\y^adhlÒcDVb[^hIX�cwTIe�c �� /�� cwad�Ei*[gjue�jD| �I_baoX½XwTW[^mW_zk&Zfa}<ÁmIhW_bVzhW]^atk1>7Vb�E�EatklVbÒevcDad_z|7evpÀcDadjUcwTIad|Begjwa([gi*adhIatk�� �� cwat�Eif[^jDegjw| �I_zatXUXÁTI[gmW_Yk7eg_b�Ue¸|lX³Z*a½iW_Yegndatk7Vbh7cwTWa

<scD��iO>�klVbjDatn�cw[^jw|^� x�hWV � mWa �I_za}hIeg��aoX<ndeghÎZfa�gathWadjuevcDatk(Z`|½VzhIn�[^jwi*[gjuevcDVbhI�8cDTWa$iIjw[ln�aoXwX�' XFVzkWadhlÒcwVbpr|`VbhW�&h\mI��Z*adj4Vzh\cw[}cDTWa �I_za<hIeg��ablÉ�`ada@<Á�^a�cÁÒiWVYk1>ul�#�$4(g�4n n¥��� �� ' �� � " ��� � � � �!"��2" � ���c}VYX�[�p.Vzh\cwatjwaoXsc�cw[Î��[gjD] cwTWjD[gmW�^TLeghLegZWZWjDady`VYevcwaokXwmW�E�Ëe�jD|Ë[�pºcDTWa�n�[lkla1�ÂTWVYnuTBVYX�Vbh`y^[g]gaok<�ÂTWath�e.mIXwadjiWjD[ln�aoXwXOi*adjwpr[gjD�ËX³eu<ÁjDate^k1>1XÁ|lXÁcwat�Óndeg_b_fZfadpr[gjDaÂa�9We���ÒVzhWVzhW�EcwTWa�nd[`kWa�Vbh}kladcDe�Vz_É�

������� ��=����!��+.� 9 � � �5& � A � ��=��4#>��-,��>�$ �

� N ����#E���� � ����

��: � L N ���J#

� � )�� N =$ ���>��� � L�

��F8,�, ��=����!�"�5&��F8,$L �>�-3>�!��M�P$��K�"8�5&Ì�9laon�mlcDVb[^h�[gpfcDTWa�Xw|lXscDad�Ónte�_z_WZ`|4cDTWa�mIXwadj³iIjw[ln�aoXwXjDatXwmW_bcDX�Vzh�cwTIa7egn�cwVzy¸e�cwVz[gh�[gp�<Ácwjue�ia>�jDmWhWhWVzhW�qVzh�]gatjÁÒhWat_U��[lkla^��<scDjDegia>}jDatnd[g�ghIVzXwatX.XÁ|lXÁcwad� nte�_z_ �i#I�$e�hfknte�_z_zX+lry`VYe <scDjDegiW_ >on(cDTWaBjD[gmWcwVzhWaP<ÁjDate^k1>W�¢�ÂTWVYnuT nte�_z_zX

<wjDkl�Âj >W��0F�L8, �>�-3>��0F�L�:�+�# �/,�= N +&� � ��� ;������� P>��� &�0F���L � ��� ; 9 � ��= � � ��� ;0����, ��� &�0F���� � ��� ;>�� ���>N � � � � ;0����, 1, � &�0F�� � � ��� ;>��=-,>+�� ,2�<�6&�0F��8, � ��� ;�0+�+'��= N 1, � �E+��>3���+ 0+�+ ��= N 1, � &�0F���� � ��� ;�0+�+'��= N )��� �E+�#'3���+ 0+�+ ��= N )��� &�0F�������=��0� � �O+�#'3���+ �Q� 0�>='�5&�0F���:���# �0�0�/�O+�#'3���+40+0+'��= N �� ��� ;�����, 1, ��3 � ��� ;��� �0��N � &<Ájukl�Âj >1Vbhfn�_zmIklatX8��mfnuT<n�[lkla��ÂTWVYnuTËVYX8nd[g�E�E[ghEcw[Z*[�cDT=<wjwaoegk1>�e�hIk=<Á�ÂjDV{cDa�>�[gi*adjuevcDVb[^hIXd� ��cËnd[gh`ygatjÁcuXd�y`VYef<Á�^a�cÁp >pl¨�^�WÖt×4n¥�gcwTWa �I_ba½VzkWadh\cwV �fnde�cwVz[gh<XwmWiWiW_zVzatkËZ`|cDTWa1mIXÁatj8iIjw[ln�aoXwX�Vzh\cw[.cwTWa1egkWkWjwaoXwX8[�p¢e�h7ath\cwjD|ËVbh7cwTWa

< �I_ba�>Ee�jDjDe¸|^�~�[gcwa(cwTfevc�cwTWa �IjuXscUiIegjDeg��adcwatj$[�pºcwTWa�Xw|`XÁcwat�Mndeg_b_VYX$ifegXDXÁaokEVbh7e.klV �*atjwath^c���e¸|.prjD[g�3cwTWa½jwat�Ëe�VzhWVbhI��cs�8[iIegjDeg�Ea�cwatjDXt�

<Ám�� m Xwad� #I�o>}VYX�XÁadc.cD[ datjw[qcw[�VbhIkWVzntevcwa7cwTIe�c.cDTWa[gi*adjuevcDVb[^h&klaoXscDVbhIe�cwVz[gh�VzX(Vzh&cDTWaEmIXwadj4egkIkljwaoXwX(XwiIegndag�ÔÂpÀcDadjS<wjwaoegklV >�VYXOndeg_b_zatk.�ÂVbcwTËe�ife�jue��Ea�cDadj¢�ÂTWVYnuT.VYX³e�h<ÁVzhW[lkla�>7i*[gVzh\cwadjo�FcDTWa �IhIeg_³egndnd[gmWh\cDVbhW��VYX1ifatjÁpr[^jw�EatkZ`|�e^kWklVzhW�}cDTWa7h`mW�.Zfatj�[�p�nuTfe�juegn¥cDadjuX1jwa � mWatXÁcwaok�pr[gjcwjue�hfXspratjB_zatXDXBcwTWa�jDatXwVzklmfe�_1h`mW��Z*adj�hW[gc�cDjDeghIXÁpradjDjwaoklr_za�pÀc�Vzh <Ám�� m nd[gmWh\c >4n$cw[�cwTWa �f_ba�[ �¼Xwa�co�

:����8, ��=���� �

:���L � �J9 � �6��� 4 � + N � � ��� ;00+�+'�J= N � 3 � �5&:������� � � ����� ;00+0+'��= N , � �6��F�F0F+&:����-, � �R ��� � �8,$� 3E � � ����� ;��� ���>N �5&:���� (R9 � ��9J8��#�� � # � �J9 � �5&:�������� � � � #'3�� � ;��>=��'&:�����(R9�# ��9���=��0� �O� � � 9 � �5&:���:�� � $����= ��9�#�� � � � � �EP���K$"8�5&:���:8, 9>��=�����= ��9�#8�5&

<ÁjDate^klV?>�n�[^h`ygadjwcDX.cDTWa �I_za}[ �FXÁadcËVbh\cw[�cs��[�iIe�jwcDX �e�_b[^�gVYnde�_UZW_z[lnu]�h`mW��Z*adjo�i<w_bZIha>W��e�hIk e�hÑVbhIkWa�9ÑVzh\cw[cwTIa7ZW_z[lnu]*�S<w[gha>I�&SUTWaBh\mI��Z*adj�[�p�nuTIegjDe^n¥cwatjDX�cw[&Z*acwjue�hfXspratjwjDatkËVYX�cwTIa(�EVzhWVz��mW�M[gp`<wm�� m nd[gmWh\c >.eghIk<cDTWah`mW��Z*adjG[�pInuTIegjDe^n¥cDadjuXF_badpÀc,Vzh�cDTWa$ZW_z[lnu]slrVzh4�ÂTWVYnuT�nde^XÁaegkIklV{cDVb[^hIe�_lZI_b[lnu] l¨X n,��mIXÁc³Z*a�jwaoegk+lrhW[gc$XÁTI[v�ÂhOn nql e�hIkcwTIa�h`mW��Z*adj�[�pºnuTfe�juegn¥cDadjuXOjDad�Ëe�VzhWVzhW�4VzhËcwTWa �I_za�lrcwTWVYXnde^XÁa(VYXÂhW[�c�XwTW[v�ÂhOn n¥�<wklhO>ÂVzX�cwTWa�klady`VYn�a³h`mW�.Zfatjº�ÂTWVYnuT�VYXºXÁcw[gjDatk1�ÂVbcwTIVbhcwTIa*<ÁVzhW[lkla�>I�e<ÁZIha>ÂVYXFcwTIa8egn�cwmIeg_�ZW_z[lnu]½h`mW�.Zfatjº[gh1cDTWaklaty\VYn�aSl klVzXw]1n¥�^�ÂTWVznuTEVYX³n�[^�EiWmlcwaok�Z`|t<ÁZW�Ëe�iO>�l ��$fÖo�mnmIXwVbhI�}<w_bZIha>W�SUTWa�nte�_z_�[^h <ÁZWjDate^k1> �IhIkWX7cwTIa&jDa � mWVzjwaokÎZW_b[lnu]¼�n�[^i`|\VzhW�ÂVbcºVzh^cD[�n�[^jwa¢prjD[g� klVYXÁ](Vbp`hIatn�aoXwXDe�jD|g�<ÁVz[g�E[vyga�>

l¨�o#g�m$4n,cDjDeghIXspratjDXOcwTWa1e�iWiIjw[^iWjwVYevcDa�nuTIe�juegn�cwatjDX¢cD[4cDTWadVzjklaoXscDVbhIe�cwVz[gh��WeghIk�ifatjÁpr[^jw�ËXUegntn�[^mWh\cwVzhW�ËnuTW[gjDatXt���< �� � � � � � � � , � �<ÁjDate^k1>4eghIk3<w�ÂjwVbcwa�>4i*adjwpr[gjD�MXÁVz�EVb_Ye�j�[gi*adjuevcDVb[^hIX�e�hIkXwTIe�jDa&�.mInuT�nd[`kWag�/SUTIa�cs��[ÑXw|lXscDad�-nte�_z_zXt�E<wjwaoegk1>l �\�`Ö^Ö�n�eghIkt<Á�ÂjDV{cDa�>�l �^�g���4n¥��ndeg_b_�<wjDkl�Âj >�Vz�E�EatklVYevcDad_z|cw[ �g ~ B v-� Í8[gh`ygatjÁcÂcDTWa�mfXÁatj�iWjD[g�gjue�� �I_za4VzkWadh\cwV �fnde�cwVz[ghcD[<e�if[^Vbh\cwatjÂVbh�cDTWa �I_za1cDe�ZI_ba�g ~ B �-� Í8TWatnu]�cDTIevc(cwTWa�[gi*adjuevcDVb[^hPlrjDate^k}[gj(�ÂjwVbcwa�nÂVYXVzh&e^ndn�[^jDkIe�hInda��ÂV{cDTqcwTIa��E[lkla��ÂVbcwTq�ÂTIVznuT}cDTWa

�f_ba��UegXU[^ifathWatk�g ~ 7�B-� �`a�c�mWi3yve�jDVb[^mIX�Xscue�hIkWegjDk¿_b[lntevcwVz[ghfX�Vzh <Áma>�ÂVbcwT�cDTWa4e�iWiIjw[^iWjwVYevcDa½ife�jue��Ea�cDadjuX�g ~ 7�v-� <ÁiWVzi*atX >1�ga�c�XÁi*atndVzeg_WcwjDate�cw�Eadh\c$jDVz�gT\cOprjw[^�¿cDTWaXÁcDegjÁc+*g ~ g g%� Í�e�_z_j<ÁjDate^klV?>.[gjY<w�ÂjwVbcwatV?>EegXÂegiWiWjD[giWjDVYevcwa�

�N$

Page 83: A Commentary on the Sixth Edition UNIX OS -- Lions

g ~ gOv(� x�i¼kWe�cwaEcwTIa �I_baE[ �¼Xwa�c4Z`|g�Ge�hIk�XÁadc�cwTWaËyveg_bmWajwadcwmWjDhWaok<cD[EcwTWa�mIXwadj�iWjw[^�gjue��3cw[f�lcwTIa4h`mW��Z*adj[�p¢nuTIe�juegn�cwadjuX�egn¥cDmIe�_z_z|Ëcwjue�hIXÁpradjDjDatkF��� ��� � � � " � '8(8( � �v�,aB Q(� ��p.hI[ÎnuTfe�juegn¥cDadjuX7egjwa�cw[ÎZ*a�cDjDeghIXÁpradjDjwaokF�½kl[hW[�cDTWVzhW�2v�,aB�,-� �`adcOcwTWaY<ÁVzhW[lkla�> #*e��½cw[1VbhfklVzntevcDaUcwTIe�c,cDTWas<ÁVzhlÒ[lkla�>�TIe^XUZfatadh}egntn�atXDXwatk�v�,aB B(� ��p¢cwTWa �I_za4VzX½e<nuTIegjDe^n¥cwatj�XÁi*atndVzeg_��I_zag�*ndeg_b_ºcwTWae�iWiIjw[^iWjwVYevcDa�klaty\VYn�a+<ÁjDate^k1>4iIjw[ln�aoklmWjDag�`iIe^XwXwVbhI�cwTWa�klaty`Vznda�Vzklath\cwV �fnde�cwVz[gh�egXUiIegjDeg��adcwatj�v�,aB \(� ��ad�^Vbh<e�_z[`[giEcD[4cwjue�hfXspratj$kWevcue4Vzh<e��E[gmIh^cuX³mWicw[ �WÖo��nuTIe�juegn�cwadjuXEevc7e�cDVb�Ea}mWh\cwVz_�l �^�g�^�mn.atV{ÒcwTWatj³e�hEVzjwjDatnd[vygadjue�ZI_ba8adjDjw[^j¢nd[ghIkWV{cDVb[^h�TfegX¢Z*adadhadhInd[gmWh\cDadjDatk.[gjOcDTWa�jDa � mWatXÁcwaok�h`mW�.Zfatj$[gp¼nuTIegjÁÒegn�cwadjuX�TIegXUZ*adath�cwjue�hIXÁpradjDjwaok�v�,aB �(� <Á_YXwTWV{pÀc >PlsÖ�$IÖo�on(n�[^hInde�cwadhfevcwaoX1cwTIa<cs��[}�8[^jDkWX[�pOcDTWa�egjwjue¸|3<wm�� m [ �FXÁadc >I�*XwTWVbpÀcDX(jwVz�gT\c(Z\|�hWVzhWaiW_Yegn�aoXd�leghIkBcwjDmWhInde�cwaoX�cw[�Öt��ZWVbcDXt�³SUTWVYX�kla �fhWatXcwTWas<w_b[^�gVYndeg_\ZI_b[lnu]�h`mW�.Zfatj >1[gpfcDTWa �I_za��ÂTWVYnuTEVzXcw[EZ*a�jwadpradjDadhIndatk�v�,17�Q(� <Á[^ha>.VzX�eEnuTIegjDe^n¥cDadj�[ �FXÁadc��ÂV{cDTWVbh�cDTWa�ZW_z[`nu] v�,17���� <ÁhO>ËVzX(kladcwadjD�EVbhIatk}VzhWVbcwVYe�_z_b|}egX�cwTWa��EVbhIVb�.mW�[�pqcDTWa h`mW��Z*adjÏ[gp�nuTIegjDe^n¥cwatjDXÑZ*ad|g[^hIk <Á[ghO>Vbh cDTWa}ZW_z[`nu]¼�Ue�hIkÑcDTWa}h`mW��Z*adj<jDa � mWaoXscDatk pr[gjcwjue�hIXÁpradjo�rl¨~�[gcwaËcDTIevct<Á�EVbhO>zl¨�m#o#g×4n½cwjDatevcuX�VbcDXe�jD�gmW�Eath^cuXUegXUmWhIXwVz�ghWaok7Vzh\cwad�^adjuXd� nv�,17 ,-� ��p,cwTWa �I_za�VYXUhW[�c�eEXwifaon�VYe�_FZW_z[lnu] �I_za1cwTWath��z�z�v�,17�B(� Í8[g�EiIegjwa(cDTWa �I_za�[ �FXÁadc��ÂV{cDT�cwTWa.n�mWjDjwath\c �f_baXÁV� da�v�,17�v(� ÅÂaoXÁadci<Áha>�egXOcDTWa��EVzhWVz��mW� [�p¼cDTWa½nuTIegjDe^n¥cDadjuXjwa � mWatXÁcwaok4e�hIk�cwTIa�jDad�ËegVbhWVzhW�(nuTIe�juegn�cwadjuX�Vzh.cwTWa

�I_za�v�,17�\(� Í�e�_z_}<ÁZW�Ëe�iO>Ïcw[Ln�[^h\y^adjwcqcwTIaÑ_z[g�^Vznte�_�ZI_b[lnu]h`mW��Z*adj(pr[gj(cDTWa �I_ba�cD[�eBiWT`|lXÁVYndeg_¢ZW_b[lnu]qh`mW��ÒZfatj³pr[^j8VbcDX8TW[^XÁc8klaty`Vzndag�OSUTWadjDa��ÂVz_b_*Z*a½�E[gjDa�[^h

<ÁZW�Ëegia><XwTW[gjwcw_z|g�)I[gj(hW[v���*hW[�cDa4cwTfevc <wZW�Ëe�ia>XÁadcDXY<wjDegZW_b[lnu]y>�e^XÂeEXÁVYkla�a �¼atn�c�v�,OgOQ(� �`adc@<wkWha>�egX<cwTWa�klady`VYn�aqVYklath^cDV �*ndevcDVb[^hÏprjD[g�cwTWau<wVbhW[lkla�> v�,OgZ��� ��p,cwTWa �I_za�VYXÂe�Xwi*atn�VYe�_ºZW_b[lnu] �f_ba(cwTIadh��z�b�v�,Og ,-� �`adcE<wklhO>Eprjw[^�:cDTWab<wV e^kWklj > �Iad_Yk�[�pOcDTWab<ÁVzhlÒ[lkla�>�adh\cDjw|^�tl�%$jwaoXÁmI�EegZW_z|}cwTWVYX��ÂVz_b_8hWategjw_z|&eg_{Ò��e¸|lX$Zfa½cwTWa(Xweg�Ea½egX$cwTIa <wV klatyy> �Iat_zkF�lXw[��ÂT`|cwTWa�klVYXÁcwVzhIn¥cDVb[^h %�nv�,OgOB(� �`adcGcDTWa�<wjwaoegk4egTWate^k�ZW_z[lnu]F>Âcw[½cwTWa�hWa�9`c¢iWT`|lXsÒVznte�_FZW_z[lnu]

v�,Og g%� ��p�cwTIa½ZW_z[lnu]lX$[gpFcwTWa �I_za(egjwa(e�iWiIegjwath\cw_z|.Z*adVzhW�jDate^kBXwa � mWath\cwVYe�_z_b|ËcDTWadh��z�b�v�,OgOv-� Í�e�_z_c<wZWjDategkIem>1cD[.jDate^kEcwTWa�klaoXÁVzjDatkËZW_z[lnu]Ëe�hIkcD[EVbhWVbcwVYevcDa1jwaoegklVzhW��[gp�cwTIa+<wjwaoegk<egTWate^k<ZW_z[lnu]y> v�,OgO\-� ad_YXÁa 4smIXÁc�jDategk7cwTIa4klatXwVbjDatkBZW_z[lnu]�v�,av Q-� Í�e�_z_M<ÁVz[g�E[vyga�>�cw[�cwjue�hIXÁpradj(Vzhlpr[gjD�ËevcwVz[gh&prjw[^�cDTWa�ZWm��¼adj�cw[�cwTWa�mfXÁatj�e�jDate v�,av��'� ÅÂa�cDmWjDh7cDTWa�ZWm��¼adjÂcD[EcwTWaf<De¸yy>vÒ�_bVYXsco���< ��� �!" �� "

v BOQ B-� ��p,_zatXDXUcDTIe�hqe�prmW_z_ºZI_b[lnu]7VYXÂZ*adVzhW�Ë�ÂjDV{cwcwadh�cDTWaiIjwaty\Vz[gmfX½nd[gh\cwath^cuX([�p³cDTWaEZWm��¼adj1��mIXÁc�Zfa�jDategkXw[�cDTIevc,cwTIa�egiWiWjD[giWjDVze�cwa³ife�jwc¢nte�h4Z*a8iIjwaoXÁatjwy^atkF�[gcwTWatjw�ÂVYXwa 4smfXsc��^a�c�e�h`|7e¸yve�Vz_Ye�ZW_za1ZWm��¼adj,v BZ� �'� SUTWadjDa�VYX$hI[ <Á�ÂjDVbcwa�egTWate^k1>(p¨egndVb_zV{cs|^�`ZWmlc$cDTWadjDaVYX�e�<Dklad_Ye¸|gaokÎ�ÂjwVbcwa�>�pr[gj�ZWm��¼adjuX��ÂTW[^Xwa �IhIeg_nuTfe�juegn¥cDadjuX�TIe¸yga(hW[�c�Z*adath}nuTIe�hW�^atk�v BZ�1,%� ��p�cDTWa �I_za [ �FXwa�cÐhW[v� if[^Vbh\cDXÐZfat|g[ghfk:cDTWajDatnd[gjuklatk<adhIk7[�p��I_za1nuTIe�juegn�cwadjo��cDTWa �I_ba1TIe^X$[^ZlÒy`Vz[gmIXw_z|<�gjD[v�Âh7ZWVz�g�^adj+*v BZ�y\-� �ÏT`|?VzX VbcÎhIatn�aoXwXDe�jD|��vklaoXÁVzjue�ZW_zaÎcw[ XÁadcÑcDTWa

<w�sx%8Ä`> #feg�Eeg�^egVbh %rlÉ�`ada�_zVzhWa��^��(\�l� n��< )( " ����� �� � '8, ' 3 �SUTWaqnd[g�E�Eadh\c7evcËcDTWaqZ*ad�gVzhWhWVzhW��[gp(cDTWVYXËiWjD[`ndatklmIjwaXDe¸|`Xq��[\Xsc�[�p<�ÂTIe�c�hWatatkWX&cw[�ZfaÎXDe�VYkF� <Dn�[gi`|`Vzha>W�<wnd[gi`|g[^mlc >I�M<wn�ifegXDX >qeghIk�<wiIegXDXDnA>q�Ëe¸|�Z*aBpr[^mWhIkÑevc_zVbhWaoX1Öo��$m$I�¼Ö¸�g�g�W�l�^�N$`��eghIk��^�lÖv��jDatXwi*atn¥cDVby^ad_z|g���< )( � � � � � ' 3 � ���Ô��gathWadjue�_1klatXDn�jDVzilcwVz[gh�[�p4cDTWa�prmWhIn¥cDVb[^h [�p <wZW�Ëe�ia>�Ëe¸|�Zfa.pr[gmWhfk&[^ht%Oe��^a.�Ë[gpi< ),�sÆGÌL� ��lSÂÌ$Ç l ]Mn >[�pGcwTWa4x`%$Ç��vO7�,OB-� ),Vb_zatX,[�pW�E[^jwa$cwTIegh�� `Ö¸�UZW_z[`nu]lX l �� ���$�nuTIegjÁÒe^n¥cDadjuX n�e�jDa1hW[�c�XwmWiWi*[gjwcwaok�vO7�, ~ � �\cDegjÁc��ÂVbcwT�cDTWaf<wXw�Ëe�_z_?> �I_za�eg_b�^[gjDV{cDTW� l �f_ba�VYXhI[�c��gjDate�cwadj½cwTfe�h&atVb�^T\c(ZW_z[lnu]lX½VÉ� ag�i$\�g×^�7nuTIegjÁÒe^n¥cDadjuX n%vO7 B��'� ��plcwTWa�ZW_z[lnu](h`mW�.ZfatjGVYX�(�[gjG�E[gjDag�ocwTWa�<wXw�Ëe�_z_?>

�f_ba½��mIXÁc�nd[gh`ygatjÁcDatk�Vbh\cD[�e�_Ye�jD�ga �I_zag�O~�[gcwa�cwTWVYXVYX4e}XwVzkWaËa �¼atn¥c4[gp�<wZW�Ëe�ia>I�ºe�hfk�XwTW[^mW_zk�[lndndmWj[^hW_z|��ÂTWathf<ÁZW�Ëe�iO>UTIegXFZ*adath4ndeg_b_zatk(Z`|E<w�ÂjwVbcwatV?>l e�hIk�hIadygatj�Z`|@<wjwaoegklV > �BXÁata4_zVbhWa.�^�N$`�mn��8SUT`mIXeg_b_��I_baoXOXscue�jwcO_bVbpra�egXM<DXÁ�Ëe�_z_ > �f_baoXOe�hIkEe�jDa�hWady^adjaA9liW_bVYn�Vbcw_z|&nuTIeghW�gaok�cw[ <Á_Ye�jD�ga�> �I_zatXt�4~�[gcwaEe�_YXÁ[cDTIevcÂcDTWa4nuTIeghW�ga1VYXUVbjDjwatygatjDXwVbZI_ba *

���

Page 84: A Commentary on the Sixth Edition UNIX OS -- Lions

vO7 B�g-� <weg_b_z[lnA> l �g×\���on7e�_z_b[lntevcwaoX7eÑZW_z[`nu]Î[^h�klaty\VYn�a<wk1>½prjD[g�ÓcwTWa½klady`VYn�am' X¢prjDada�_zVYXsco�,��c$cwTWath<egXDXÁVz�ghIXe1ZWm��¼adj$cw[�cDTWVzX8ZW_z[lnu].e�hfkEjwadcwmWjDhIX³e�i*[gVzh\cwatj³cw[cwTWa1ZWm��*atj�TWate^kladj,

vO7 B \(� SUTWa}atVb�^T^cËZWm��*atj7egkWkWjwaoXwXwatXEVzh cwTWa <wV e^kWklj >e�jDjDe¸|¿pr[gjÑcwTWa <ÁVzhW[lkla�> e�jDa�nd[giWVzatk?Vzh\cw[¿cwTWaZWm��¼adj�egjwaoe.eghIkBcwTWath�atjDe^XÁaok�vO7O7 ,-� <ÁV egkWkWj�{ �N| >ÂVYX,Xwa�cGcw[½if[^Vbh\c,cw[�cDTWa�ZWm��¼adj¢�ÂTWVYnuTVzXÂXwa�c�mIiBpr[^j�e}<wklat_ze¸|^atk1>��ÂjwVbcwa�vO7O7�\(� SUTWa �I_ba.VzX(XÁcwVz_b_¢XÁ�Ëeg_b_É�½�(a�c½cwTWa�hWaA9\c(ZW_z[`nu]�VbphWatndatXDXwegjw| vO7�gOv(� ~�[gcwa1cDTWa4XÁadcÁcDVbhW�E[gpd<wjDegZW_b[lnu]y> �� -(8( � � ��� �� ���� ³[^m7XÁTI[gmW_YkËVzh\y^atXÁcwVz�^e�cwaUcwTIa�pr[^_b_z[v�ÂVbhI��iWjw[lndatklmWjDatX³pr[gj|^[gmWjuXÁat_{p �

��=�= � � ��(�:8,�� � N � N � �7:���� � ������0=�#!� � � F � � � � # �7:���: � �+'� N � N �O:��8,��8� #3 � =��!�7:�F � ,��� N � N �O:�����('� � � �J=��!�7:�(8,�,��

���

Page 85: A Commentary on the Sixth Edition UNIX OS -- Lions

� ( � � �A� � � � ��� ��� � ��� �*� � � � � � � ���� � � � � �A�e

Ô½XÐ��a TIe¸yga Xwadath�����mInuT Vz�Eif[^jÁcue�h\c Vzhlpr[gjD�ËevcDVb[^hegZf[^mlc<VbhfklVby`VYklmIeg_ �I_baoXËVYXËn�[gh\cue�VzhWatkÑVbh cDTWa <ÁVzhW[lkla�>cue�ZW_zatXt�º��pWcDTWa �I_ba�VYXGndmWjwjDadh\cD_b|1egntn�atXDXwVbZW_zag�¸[^jGZ*adVzhW�½e^n¥ÒndatXDXÁaokF�WcDTWa4jDad_zadyve�h\c�Vzhlpr[gjD�ËevcwVz[gh}VYX�TIad_Yk�Vbh�cDTWa.nd[gjDa<wVbhW[lkla�>Âcue�ZW_zag�,��pfe �I_ba�VYXG[^h.klVYXw]plr�E[gjDa8�^adhWatjDeg_b_z|g�¸[^hXw[g�Ea �I_za7Xw|lXscDad��yg[g_zmW�Ea�n4e�hIk�VYX4hW[gc.n�mIjwjDadh\cw_z|�e^n¥ÒndatXDXÁVzZW_zag�WcDTWadhqcwTWa4jDad_zadyvegh^cp<wVbhI[`kWa�>Ecue�ZW_za4VYXUcwTWa.[ghWajDatnd[gjuklatk7[ghBcwTWa4klVYXw]tl �f_ba4Xw|lXscDad�My^[g_zmW�Ea�n¥�~�[gcDegZW_b| e�ZIXwadh\cËprjD[g� cDTWa <ÁVzhW[lkla�>�cDe�ZI_ba�VYX<e�h`|Vzhlpr[gjD�ËevcDVb[^h�jDad�\e�juklVzhW��cwTWab<whIe��Ea�>.[gp¢cwTWa �f_ba^�USUTIVzXVYXÂXscD[gjDatkBVbh�cDTWa4klVzjwaon¥cw[^jw| �f_baoXd�

�� �� ��� �.�"�� � ���8�2& .� �2 $ �2�!0�� �#0=��

Ì8egnuT �I_za��.mIXsc(TIe¸yga4e�c½_zate^Xsc([ghWa4hfe��Eag�(Ô �I_za��Ëe¸|TIe¸y^aB�E[^jwaBcwTIeghÑ[^hWa�klVzXÁcwVzhIn�c<hIe��Eag�8ZWmlcËcDTWa}Xweg��ahIeg�Ea��Ëe¸|�hW[gcËZfaqXwTIe�jDatk Z`|�cs�/klVYXÁcwVzhIn¥c �I_zatXt�$VÉ� ag�aoegnuT�hIe��Ea1��mIXÁc�kla��IhWa4e�mWhWV � mWa �I_zag�Ô hIeg��a��Ëe¸|}ZfaE�.mW_{cDVbife�jwct���ÏTWadh��ÂjwVbcÁcDadh���cwTWaiIegjÁcuXÂ[gj½n�[g�Ei*[ghWath\cDX�[gp¢cwTWa4hfe��Ea�e�jDa4XwadiIegjDe�cwatk�Z`|Xw_ze^XÁTIatX+l�< ��>on�� SUTWa�[gjukladj�[�p1n�[^��i*[ghIadh\cDX��ÂVbcwTWVzh ehIeg�EaqVzX7XÁVz�ghWV �fnte�h\c7VÉ� a^� <De �vZ �vn�>&VYX7klV �¼adjDadh\c<prjD[g�<De �vn �¸Za>I���p �I_za�hIe��EaoX�e�jDa4klVzy\VYklaok�Vbh\cw[Ecs��[ËiIegjÁcuX��$egh}VbhIV{ÒcDVzeg_ÂiIe�jwcË[gjz<wXÁcwat�s>�eghIkÎe�fhIe�_ÂiIegjÁcË[^jz<ÁadhfklVbhI�o>W�cDTWadh�cs��[ �I_baoX¢�ÂTW[^XwaÂhIeg��aoX¢TIe¸ygaUVYkladh\cDVznte�_IXÁcwat�EX$e�jDamIXwmIeg_b_z|�jDad_YevcDaÂVbh<Xw[g�EaÂ�Ue¸|g�¢SUTWad|��Ëe¸|�jDatXwVzklaÂ[^h�cwTWaXDe��Ea.kWVzXw]¼�IcDTWad|}�Ëe¸|�Zfat_b[^hW�ËcD[7cDTWa.XDe��Ea�mfXÁatjt�*a�cun��x½XÁatjDXÂ�Ëeg]ga�VzhWV{cDVzeg_GjDa�pratjwathIn�a1cD[ �I_zatX�Z\| � mW[�cDVbhI�EcwTWa�I_zaEhIe��Ea^�ºag� �I�EVzh&cDTWaz<Á[^ifatha>�XÁ|lXÁcwat� ndeg_b_É�ËÔ�h�Vb��Òi*[gjwcDegh^c1[gi*adjuevcDVbhI��Xw|lXÁat� prmWhIn¥cDVb[^h�VYX½cw[}klaon�[lkla.cwTWahIeg�Ea4Vbh\cD[<cwTIa�n�[^jwjDatXwif[^hIklVzhW�z<ÁVzhW[lkla�>Ëadh\cwjD|g��SG[7kl[cDTWVzXt�¼x�~���¾Ón�jDatevcDatX�eghIk��Ëe�Vzh\cDe�VzhIX�eËkWVbjDatn�cw[gjD|BkIevcDeXÁcwjDmIn¥cDmWjDag�¢SUTWVzXOXÁcwjDmIn�cwmWjDaÂVzX¢a � mWVbyveg_bath^cOcD[�e�klVbjDatn�cwaok�^jDegiWT7�ÂVbcwT}hIeg�EatkBatkl�^atXt���h7VbcDX�iWmIjwaoXsc�pr[gjD���^cDTWa(�gjue�iWTËVYXUe�cwjDada(VÉ� a^�,VbcUTIegXeBXÁVzhW�g_za�jw[`[�c(hW[lklag�F�ÂVbcwT�a�9Wegn�cw_z|�[ghWa�iIevcDT&Z*a�cs��adathcDTWaEjw[`[�c�e�hfk�egh\|}hI[`kWag�EÇ}[gjDa�nd[g�E�E[ghW_z|qVzh�x½~���¾l¨ZWmlc½hI[�c½Xw[7n�[^�E��[^hW_z|7Vzhq[�cDTWadj½[gi*adjuevcwVzhW�<Xw|lXscDad�ËX ncDTWa��^jDegiWT�VzX(eË_YevcÁcDVznda4�ÂTWVYnuTq�Ëe¸|BZ*a�[^ZlcDegVbhIatk�prjD[g�e.cwjDada1Z`|Bnd[^eg_baoXwndVbhW��[ghIa([^jÂ�E[gjDa½�^jw[^mWiIXU[�p,_baoe¸ygaoXd���hÑcwTWVYXEndegXwag�$�ÂTWVb_zaBcwTWatjwa�VzXEXÁcwVz_b_U[^hW_b|�[^hWa7ifevcwTZ*a�cs��adath&cDTWaEjw[`[�c�e�hfk&e�h`|}Vzh\cwadjDVz[gj(hW[lklag�FcDTWadaE�Ëe¸|Z*a��E[gjDaUcwTIeghË[ghWaÂifevcwTEZ*a�cs��adathEcwTWa�jD[`[�c$eghIkEe�_baoevps�ƺate¸ygaoXFe�jDaOhW[lklatXº�ÂV{cDTW[gmWcGXÁmfndn�aoXwXw[gjuXFe�hfk�n�[gjDjDatXwif[^hIkcD[<kWevcue �I_baoXd����h\cwatjwVz[gjÂhW[lklaoX�e�jDa1hW[lklatX��ÂV{cDT}XÁmIntn�aoXsÒXw[gjuXUe�hIk�n�[^jwjDatXwi*[ghIk<cw[ËklVzjwaon¥cw[^jw| �f_baoXd�SUTWa4hfe��Ea1pr[gj�e �I_za4VYXÂ[gZWcDe�VzhWaok7prjD[g�McwTWa4hfe��EatX[gp³cwTWa�atkW�gatX½[�p$cwTWaEiIe�cwT&Z*a�cs��adathqcDTWa.jD[`[�c1e�hIkqcwTWahW[lklaÂnd[gjDjwaoXÁi*[ghIkWVbhW��cw[(cwTWa �I_zag�ql�)I[gj,cwTIVzX¢jDate^XÁ[^h��ocwTWahIeg�Ea8VYX,[�pÀcwath�jDa�pratjwjDatk1cD[(e^XGeE<ÁiIe�cwTWhfe��Ea�>I� n1��pfcwTWatjwaegjwa�XwadygatjDeg_fifevcwTfXd�lcDTWadh�cDTWa �I_za�TIegXÂXwady^adjue�_¼hIe��EaoXd�

��< )( .�"�� � ���8�2& � " �� �Ô:kWVbjDatn�cw[gjD| �I_baBVzX.Vzh��Ëe�h`|�jwaoXÁi*atn�cDX4VzhIklVYXÁcwVzhW�gmWVYXwTlÒe�ZI_ba1prjD[g�:eEhI[ghlÒ�klVzjwaon¥cw[^jw| �I_ba^�$È�[v��ady^adjÂVbc�n�[^h^cue�VzhIXVzhlpr[gjD�ËevcwVz[gh.�ÂTWVYnuT�VYX¢mIXÁaok4Vzh._z[lnde�cwVzhW�½[gcwTWatj��I_baoX¢e�hIkTWathIn�a�V{cuX�n�[^h^cDadh\cDX1egjwa�nde�jDa�prmI_b_z|}iWjD[�cwaon¥cDatkF��eghIk&egjwa�Ëe�hWVziWmW_YevcDatkBZ`|<cwTIa�[gi*adjuevcwVzhW�EXÁ|lXÁcwat�/e�_z[ghIag���hÎadygatjw| �I_ba^��cwTWa}Vzhlpr[gjD�ËevcDVb[^hÑVYX<XÁcw[gjDatk egX<[ghWa[gj1�E[gjDaË�lÖo�7nuTIe�juegn�cwatj½ZW_z[lnu]lXd�EÌ$e^nuTqZW_z[`nu]&[�p�e�klVbÒjDatn¥cD[gjD| �I_za�VYX�kWVby`VYklatk}Vzh\cw[+#^� �Öo�ËnuTIe�juegn�cwatj�XscDjwmfn¥ÒcwmIjwaoXd�<Ì8egnuT�XÁcwjDmIn�cwmWjDaËn�[ghfXÁVYXscuX1[�pÂe�Öt��ZWVbcb<ÁVzhW[lkla�>cDegZW_za³if[^Vbh\cDadjGeghIk4e�Ö�$�nuTIegjDe^n¥cwatjFhIe��Ea^�GSUTWa�<ÁVzhW[lkla�>i*[gVzh^cDadjÂVYX�cw[EcDTWaf<ÁVzhW[lkla�>.cue�ZW_za1[gh�cwTWa4XDe��Ea�klVYXÁ]7[gj�I_za�Xw|lXscDad� y^[g_zmW�Ea�e^X�cDTWa �I_baoX1�ÂTWVYnuTqcwTIaEkWVbjDatn�cw[gjD|jDa�pradjDadhfn�atXt�Ml¨Ç}[^jwa�[^h�cwTWVYX�_YevcDadjo� nBÔ�h <wVbhI[`kWa�>Eyve�_zmWa[�p datjw[Ëkla��IhWatXÂeEh`mW_z_Fadh\cDjw|<Vzh�cwTWa4kWVbjDatn�cw[gjD|g�SUTWa�iWjD[ln�atkWmWjwaoX��ÂTWVznuT�jDa�pratjwathIn�a1klVzjwaon¥cw[^jwVzatXÂegjwa �

� �$�= � �7F��8, ('�4��=����'� 4 � � ��=�� N ���)� �Q� � � � � � � �4� ��=�� N =��>� N =�� � � N = � �$8=3�� � � �7F���F0F'� 3>� �$N =4� � ��= � N ���)�= �>N ��)��� � �Q� � �7L��8,Q�'� �>=>�0= N = � �$8=

��< ), � �� " � � � � ���~ gaB��'� <Ám�� m ndkWVbj >�kla��IhWaoX³cDTWaE<wVbhW[lkla�>4[gpºe4iWjD[ln�atXDX�' XndmWjDjwath^c1klVzjwaon¥cw[^jw|^�(ÔÓiWjD[ln�atXDX�VzhWTWatjwVbcDX(VbcDX½iIe�jwÒath\c�' XËn�mWjDjwath\cEklVzjDatn¥cD[gjD|�evcEZWVzjÁcDTWlA<ÁhWat�ÂiWjw[ln�>W�Ö�(m(o#on¥�,SUTWa�ndmWjwjDadh\c³klVzjwaon¥cD[gjD|��Ëe¸|4Z*a�nuTIe�hI�gatkmfXÁVzhW��cwTWaf<DnuTIklVzj >ulk#^��#o(on8XÁ|lXÁcwat�:ndeg_b_ ~ gaB�,%� ~�[gcwa�cDTIevcY<sprmIhInA>.VzX�e.iIe�jue��Ea�cDadj$cw[ <whIe��EatV?>eghIk�VYXGeg_b�Ue¸|lXFadVbcwTIadjd<ÁmInuTIegj >Sl��v�o(g×onF[gj<DXwnuTfe�j >

l��v�`�v×on%~ gaBO7(� <ÁVz�gadc >+lÉ���\�v�4n³VYX�ndeg_b_zatk7cw[ �

�Ue�Vbc�mWh\cwVz_GXwmInuT�cwVz�Ea�egXUcDTWab<wVbhW[lkla�>Ën�[^jÁÒjDatXwif[^hIklVzhW��cw[r<wkliO>.VYXÂhW[E_z[ghW�^adjU_z[`nu]^atk� nuTWaonu]&cDTIevc�cwTWa�egXDXÁ[lndVze�cwatk �f_ba�XÁ|lXÁcwad�AVYXXÁcwVz_b_��E[^mWh\cwatk VzhIn�jDad�Eadh\cUcwTIa�jwadpradjDadhInda1nd[gmWh\c, _z[`nu]<cwTWaf<wVbhW[lkla�>

~ gaB�g%� Ç}mW_bcwVziW_za4XÁ_YegXwTWatXÂegjwa1egntn�atilcDegZW_ba *jlrVÉ� a^�< � � � �ve � � �¸Z ��>1VzX�cDTWa4Xweg�Ea1e^XY< ��e �¸ZO>on�

~ gaB ~ � Ô�h`|Ñe�cÁcDad�Eilc<cD[�jwatiW_Yegn�a}[^j<klad_za�cDa}cwTIa&n�mWjwÒjDadh\c��8[^jw]`VzhW�&klVzjwaon¥cD[gjD|�[^j4cwTIaBjD[`[�c�kWVbjDatn�cw[gjD|VYXÂZ*[gmWhfn�atk�Vz�E��aoklVYevcwat_b| *~ g17 ,%� SUTWa�_Ye�Z*ad_e<Dn�_z[\[^ia>.�Eegjw]lX�cDTWa4Z*ad�gVzhWhWVzhW�Ë[gp¢eiIjw[^�gjue�� _z[`[gi�cwTIe�c$a�9`cDadhIkWXOcw[4_zVbhIa(�v�^�\�`�GÌ$egnuTnd|ln�_za.e�hfe�_z|`XwatX�e<n�[^��i*[ghIadh\c½[gp,cDTWa�ifevcwTIhIe��Ea

l¨V � ag�¢e�XÁcwjDVzhW�Âcwatjw�EVzhIevcDatk�Z`|�e�h`mW_z_`nuTIe�juegn�cwadjº[gj[^hWa4[^j��E[gjDa4XÁ_YegXwTWatX n¥��~�[gcwa�cDTIevc½eEhfe��Ea4�Ëe¸|Z*a8nd[ghIXÁcwjDmIn�cwatk½prjD[g���Eegh`|(klV �¼adjDadh\cGnuTIegjDe^n¥cwatjDXl����\�`Ö�n%

�g�

Page 86: A Commentary on the Sixth Edition UNIX OS -- Lions

~ gOgOQ(� SUTWa4athIk}[gp,cDTWa�ifevcwTIhIe��Ea4TIe^X�Z*adathqjwaoegnuTWaokl¨XwmIndndatXDXsprmI_b_z|1n¥�/Å�a�cwmIjwh cwTWa�n�mIjwjDadh\c�y¸eg_bmIa�[gp<wkliO>

~ gav B(� <wXwategjDnuTO>.i*adjD�EVzXDXwVb[^h}pr[gj(klVbjDatn�cw[^jwVzatX�VzX(n�[lklaokVbh&cwTWaEXDe��Ea��Ue¸|}egX <Áa�9laon�mlcDa�><i*adjD�EVzXDXwVb[^h}pr[gj[�cDTWadj �I_zatX�~ g ~ Q(� Í8[gi`| cwTIa&hIeg��a�Vzh^cD[Ñe ��[^jwa�egntn�atXDXwVbZW_zaq_z[�Ònde�cwVz[gh�Zfadpr[gjDa7evcwcwad�EilcDVbhI��cw[q�ËevcunuT�V{c��ÂVbcwT�eklVzjwaon¥cw[^jw|Badh\cwjD|g�½~�[�cDa4cDTIevc1eËhIe��Ea.[�pO�gjDate�cwadjcwTIegh@<DÄ��sŽ�`� �>EnuTIe�juegn�cwatjDX�VYX�cwjDmWhInde�cwaok�~ ga\ �(� <Ámº� m nd[gmWh\c >7VYX4Xwa�c1cw[�cDTWaËh`mW��Z*adj�[gp8adh\cDjwVzatXVbhBcwTIa4klVbjDatn�cw[^jw| ~ g ��,-� SUTWa�_zegZfat_E<Áat_b[`[^ia>��Ëe�jD]`X<cwTWa�Zfat�gVzhWhWVzhW� [gpe&iIjw[^�gjue���_b[`[gi �ÂTWVYnuT aA9\cDadhIkIX�cw[�_bVzhWa&�v�m$`�`�Ì$e^nuTBn�|lnd_ba1[�p,cwTIa�_b[`[gi�TIeghIkl_zatXÂeEXÁVzhW�^_ba�klVzjwaon¥Òcw[^jw|Ëath^cDjw| ~ vOQ Q(� ��p cDTWa?klVzjwaon¥cw[^jw| TIe^XLZfatadh XwategjDnuTIatk l¨_bVzhlÒategjw_z| * n��ÂVbcwTW[^mlc��ËevcDnuTIVbhW�BcwTIa<XÁmWiIiW_bVzatk�iIe�cwTlÒhIe��Ea�n�[g�Ei*[ghWath\ct�¸cwTIadh.cwTWatjwa8��mIXÁcOZfaUe�h.adjDjw[^jmWhW_zatXDX��

� /�� cDTWVzX<VzXEcDTWa}_YegXÁcËnd[g�Ei*[ghWath^c<[gp½cDTWa}iIe�cwTlÒhIeg�Eag�WVÉ� a^�S<wn � �i_ � �1'F> � � cDTWa �f_ba½VzX³cw[4Z*a½ndjwaoevcwaokF�gVÉ� ag�M< #feg� � � Ö�> egjDk� � � cDTWa1mIXwadjUiWjD[g�gjue�� TIe^X�<Á�ÂjDV{cDa�>4i*adjD�EVzXDXwVb[^hpr[^jUcwTWa4klVzjDatn¥cD[gjD|

~ vOQ v(� ÅÂaon�[gjuk1cDTWa�<wVbhI[`kWa�>�e^kWkljDatXDXFpr[^jGcDTWaUklVbjDatn�cw[^jw|pr[gjUcDTWa�hWad� �I_za�Vbh <Ámº� m i¼klVzj >2~ vOQ ~ � ��p7eÐXwmWVbcDe�ZI_ba Xw_z[�cqpr[^j�eÎhWat� klVbjDatn�cw[^jw|�adhlÒcwjD|�TIegX.iWjDady`Vb[^mIXw_b|�ZfatadhÑadhInd[gmWh\cwatjwaok lÉ����$`�mn¥�XscD[gjDa1cwTWa.yve�_zmWa�Vzh <Ámº� m [ �¼Xwa�c�{{ÖA| >2fat_zXwa�Xwa�c½cwTWa

<Á�sx`%$Äd>1pr�se���pr[^j³cDTWaE<Dklia>4klaoXÁVz�ghfevcwaokr<ÁVzhW[lkla�>lrZWmWc��ÂT\| %�n�

~ v , ,-� �ÏTWath egiWiWjD[giWjDVze�cwa^�³jwaoegkÑe�hIad�MZW_z[lnu]�prjD[g�cwTWa�klVzjwaon¥cw[^jw| �I_za l¨hW[�cDaqcDTWa�mfXÁa�[�pb<ÁZIjwaoegk1>4nlr�ÂT`|�hI[�ci<wZWjwaoegkWeo>+%�n¥�^evpÀcwatj8nte�jDa�prmW_z_b|.jwat_baoegXwVbhI�e�h`|ËiWjDady`Vz[gmIXw_b|7TWad_Yk�ZWm��¼adj,

~ vOB v(� Í8[gi`| cwTWaqatVb�^T\c7�8[^jDkIXE[�p1cwTWa�klVbjDatn�cw[^jw|ÑadhlÒcwjD|ÐVzh^cD[ cwTWa�egjwjue¸| <Ám�� m klath^c >W� SUTWa�jDate^XÁ[^hpr[gj�n�[gi`|`VzhW��Zfadpr[gjDa�n�[^�EiIe�jDVbhI�4VzX$[gZIXDn�mIjwa *OÍ�eghcwTWVYX4e^n¥cwmfe�_z_b|�Zfa<�E[^jwaËa �ËndVbath\c % l¨SUTWa<jDate^XÁ[^hpr[gj¢n�[^i\|`VzhW��cDTWaU�ÂTW[g_zaUklVbjDatn�cw[^jw|�evcOe�_z_`VzX¢juevcDTWadjifatjwiI_baA9`VzhW��cw[�cDTWa4e�mlcDTW[gjÂ[gpºcDTWatXwa�hW[�cDatXt� n%~ va7 g-� SUTWVYXOn�[^��ife�jDVzXw[gh.�Eeg]gaoXGa �<n�Vzadh\cOmIXÁaU[gp*e1XÁVzhlÒ�g_za7nuTIegjDe^n¥cwatj�if[^Vbh\cDadj�jwat�gVYXscDadj4yve�jDVYe�ZW_zag�d<wndia>W�SUTWaÂ_z[\[^iË�8[^mW_Yk.Z*a�atygadhË�E[^jwaUa�<ndVbath^c8V{p���[gjukZ`|<�8[^jDkBn�[^��ife�jDVzXw[ghB�8atjwa1mIXwatk�~ va7 ~ � SUTWaf<wad_z[\[^ia>�n�|ln�_za1VzX�cDadjD��VzhIe�cwatk�Z`|<[^hWa�[�p �

�>= N$� � � ���������'�5& �7F0:8,$�'�,> N � �>N & �7F0:����/� F�:�,$L'�

e3XwmIndndatXDXsprmW_��ËevcunuT:Xw[¿cDTIevc cwTWaLZWjue�hInuTMcw[<wad_z[`[gia>+lÉ����$`�mn8VzXUhW[gcÂcDeg]gadh

~ v g ~ � ��pGcDTWa4hIeg�Ea�VzXUcD[ËZfa.klad_za�cDatkzl�< #fe�� � �1��>4n¥�`V{pcDTWa(iIevcDTWhIe��Ea(TIegX8Z*adadh�n�[^�EiW_badcwaokF�le�hIk7V{p�cDTWamfXÁatj�iIjw[^�gjue��3TIegX�<Á�ÂjDVbcwa�>�egndndatXDX³cD[�cDTWa�klVzjwaon¥ÒcD[gjD|g�8cwTWathÎjwadcwmWjDh e�i*[gVzh\cwadjEcD[�cwTWaqkWVbjDatn�cw[gjD|<wVbhI[`kWa�> �We¸yga³cDTWaÂklady`VYn�a�VzkWadh\cwVbcs|�cwat�Eif[^jDegjwVz_b|sl¨�ÂT\|�hI[�cVzh�cDTWa7jDad�^VzXÁcwatj <DnA>+%�n eghIk�nte�_z_�<wVbiWmWc >3l��N#m$m$4ncD[ mWhI_b[lnu]�<wkliO>W�Ucw[ klatndjwat�Eadh\c7cDTWa&jDa�pratjwathIn�and[gmWh\c¢[gh}<wkliO>½eghIk�cD[½i*adjwpr[gjD� e�h`|4n�[^hIXwa � mWadh\ciIjw[ln�aoXwXw_zhW�2

~ vOvO7(� ÅÂadyveg_bVYkWevcDau<wklia>�cD[Eif[^Vbh\c�cD[.cDTWab<wVbhW[lkla�>.pr[gjcDTWa�hWaA9\c�_zady^ad_ �I_za�~ vOv�g%� <wkli � �(~�x�ÆGÆ�>�XwTW[gmW_YklhZ' c4TIegiWifath��¢XÁVzhIn�aEcDTWakWVbjDatn�cw[gjD|½XDe¸|lX*cwTWa �I_za³a�9lVYXscuX *ºÈ�[v�8atygatjj<ÁVzhW[lkla�>cue�ZW_za4[vy^adj #I[v��XUe�hIk�V �¸[ËadjDjD[gjuX�nte�h�[lndndmWjt�fe�hIkXw[g�EadcwVz��aoX4cDTWa �f_ba�XÁ|lXÁcwad�A�Ëe¸|�ZfaB_badpÀc.VzhÑe�hVzhInd[ghIXwVzXÁcwath\cÂXÁcDe�cwa4e�pÀcwadj�eEXw|lXscDad�/ndjDe^XÁTº���< 3 $����� ) ������ ��� �

<Áhfe��EadV >qVYXEe&]^ad|�iWjD[ln�atkWmWjwaB�ÂTWVYnuT ��[gmW_Yk Xwadat�Acw[TIe¸y^a�Z*adathÏ�ÂjwVbcÁcDadhÏy^adjD| ategjw_z|g�8cw[ TIe¸yga�Z*adadhÎcDTW[gjwÒ[gmI�gTW_z|7klatZWmW�g�^atk�e�hfk7cDTWadh�cD[ËTIe¸yga1Z*adath}_badpÀc�atXDXÁathlÒcwVYe�_z_z|�mIhInuTIe�hI�gatk���SUTWaBVbh\cDadjwp¨egn�aBZfadcs�8atadh�<whIe��EatV?>e�hfkqcDTWaËjwaoXsc4[gp8cDTWa<Xw|`XÁcwat� VYX�jDe�cwTWatj4n�[^��iI_baA9¼�Ge�hIkpr[gj³cwTIe�c$jwaoegXw[ghEe�_z[ghWa^�gVbc$��[gmW_Yk�hW[�c$�ÂVzh�cwTWa½iWjDV( taUpr[gj< %$jw[lndatklmWjDa�[gpGcDTWa ³ategj >I�

<ÁhIeg�EadV >�VzX.nde�_z_zatk�cwTIVbjwcwatadh�cwVz�EatX�Z\|�cs��ad_zyga<klVbpÀÒpradjDadh\cÂiWjD[ln�atkWmWjwaoX��5��k��2 �N�O�����k��2 ��/y�N/10P24��24�N6#g�o#�$ a�9laon mInuTfe�j �#^��$o# nuTIklVzj mInuTfe�j ��^�^�v� [gi*adh mInuTfe�j ���×IÖA$ _zVbhW] mInuTfe�j ��g�o#m# XÁcDevc mInuTfe�j ��g�^×\� Xw��[^mWh\c mInuTfe�j ��WÖ�(g� �gadcw�Ëklaty mInuTfe�j ��g×`�v� [v�ÂhWatj mInuTfe�j ��^��(g� n�jDate�c mInuTfe�j Ö��×\��( _zVbhW] mInuTfe�j Ö��×\��( �E]`hW[lk mInuTfe�j Ö#^�WÖo� mWhW_zVzhW] mInuTfe�j �$IÖo�WÖ n�[^jwa XDnuTIe�j Ö

��c��ÂVz_b_FZ*a4XÁatadh�cwTfevc �� / � cDTWadjDa�e�jDa(cs�8[Ëndeg_b_YX�prjD[g� <w_bVzhW]y>

��(

Page 87: A Commentary on the Sixth Edition UNIX OS -- Lions

� �� cwTIa�ndeg_b_YX$nte�hEZfa(klVzy\VYklaokEVbh\cw[4pr[gmWj�ndevcDad�^[gjDVbaoXd��[gp�ÂTWVYnuT7cDTWa �IjuXscÂVYXÂZ`|Ëp¨e�jUcDTWa�_zegjw�^atXÁc�� ��� cwTWa1_YegXÁc$cs��[�ntevcDad�g[^jwVzatX$TIe¸yga½[ghW_z|E[ghWa(jDadiWjDatXwadhlÒcDe�cwVzyga1ate^nuT � �� Vzh iIegjÁcDVzndmW_zegjt�¢cDTWadjDa�VzX.[ghW_z|�[ghIaBndeg_b_UVzh`yg[g_zy`VbhI�cwTWa1jD[gmlcDVbhIa+<DXwnuTfe�j >W�g�ÂTIVznuT�VzXÂeg_b�Ue¸|lX³pr[^j�e��f_bandeg_b_zatk <Dn�[^jwa�>W� lr��p�cDTWVYXËndegXwa7��adjDa7Tfe�hIkl_zatkÑegXeËXÁi*atndVzeg_GntegXwa�ag� �I���ÂTWadjDa1cwTWa�XÁaon�[^hIk�iIe�jue��Ea�ÒcwatjÂTIegkBcwTIa�y¸eg_bmIa+< #m>I�`cwTWathBcDTWaf<ÁmfnuTIe�j >gXUe�hfk

<wXDnuTIe�j >�nd[gmW_YkBZfa�at_bVz�EVbhIe�cwaokF� n<whIe��EadV >.�Ee¸|<cwadjD�EVbhfevcwa�Vzh}e�y¸egjwVza�cs|Ë[gp,�Ue¸|lX��� /�� V{p`cwTIadjDa³TIegX�Zfatadh4e�h�atjwjD[gjo�¥cDTWadh4es<D~�x½ÆºÆ�>Uyveg_bmWaVzX,jDa�cDmWjwhIatk�eghIk�cwTWaUyve�jDVzegZW_zai<Ámº� m atjwjD[gj >ÂVYX¢XÁadct�

l¨Ç}[\Xsc�adjDjw[^jDX�jwaoXÁmI_{cEVbh eqZWjue�hfnuT�cw[�cwTWa�_Ye�Z*ad_<Á[^mlc >fl��v�g�^×onUXw[ËcwTfevc�jDa�pratjwathIn�a�nd[gmWh\cuXUpr[gj�cwTWaVbhI[`kWatX(e�jDa�iWjD[gi*adjD_b|��Ëe�Vzh\cDegVbhWaok3l��v�\���on��1SUTIVzXVzX�hW[gc�hIatn�aoXwXDe�jD|EV{pGcwTWa(p¨egVb_zmWjDa½[lndndmWjuX$Vzh@<wVb�^a�c >lÉ���g��$Fn¥� n�

� �� VbpE< #feg��� �1�m>}l¨V � ag��cDTWaBnte�_z_8VYX.prjw[^� <wmWhW_zVbhI]F>4n¥�cwTWa(yve�_zmWa(jwadcwmWjDhWatktlrVzhBhI[gjD�Eeg_*ndVbjun�mI�EXÁcDeghIn�aoX nVzX�e�h@<ÁVzhW[lkla�>4if[^Vbh\cwatj�pr[gj8cwTWa(iIe�jDadh\cUklVbjDatn�cw[^jw|[�pGcwTWa�hIeg�Eatk �I_zaYl��v�^�g�on%� ��� V{p+< #feg��� �.Ö�>}l¨V � ag��cDTWa}ndeg_b_�VzX.prjD[g� <wndjwaoevc >}[gj

<Á_zVbhI]F>4[gji<w�E]\hI[`ka>W�`e�hIk<e��I_za�VYX³cD[�Z*a½n�jDate�cwaokV{p,V{c�kW[\aoXUhW[�c�eg_bjDate^kl|Ëa�9lVYXsc nUe�hIkBVbpGcDTWa�hIe��Eaok�I_za�kW[\aoXEhW[�cËaA9`VYXÁct�³cDTWadhÏeW<w~½x�ÆGÆ�>�yve�_zmWa�VzXjwadcwmWjDhWaok lÉ���WÖo�on¥�,��hBcwTWVYXÂnde^XÁa1e�i*[gVzh\cwatjUcw[.cwTWa<ÁVzhW[lkla�>Ëpr[gj½cwTWaEklVzjwaon¥cw[^jw|��ÂTWVYnuTq�ÂVz_b_¢i*[gVzh^c(cw[cwTWa$hWad� �I_zag�¸VzXº_badpÀcºVzhf<Ám�� m i¼klVbj >*l��v�g�^�on��Rl¨~�[gcwae�_YXÁ[UcDTIevc,Vbh4cwTWVYXGntegXwag� <Ám�� m [ �¼Xwa�c >ÂVzXº_badpÀc,i*[gVzh\cÁÒVbhI��atV{cDTWadj�evc�egh�at�Eilcs|�klVzjDatn¥cD[gjD|qadh\cDjw|q[^j�evccwTWa1athIk�[�p,cwTWa4klVzjDatn¥cD[gjD| �I_zag� n�

� �� Vbp*Vzh�cDTWaÂjDad�Ëe�VzhWVzhW��ndegXwatXt�¸cwTIa �I_baÂaA9lVzXÁcDXt�ge�h}<ÁVzhlÒ[lkla�>�i*[gVzh^cDadjËpr[^jËcwTIa �I_ba&VzXËjDa�cDmWjDhWatk lÉ�g�g�WÖ�n¥�SUTWaY<ÁVzhW[lkla�>(VYXO_z[`nu]^atk�e�hIk.cDTWaÂjwadpradjDadhIndaÂn�[gmIh^cTIegX�Z*adathLVzhIndjwat��ath\cwatk�� Ô nte�_z_(cw[ <ÁVziWmlc > VzXhWadaoklatk}XwmWZIXwa � mWath\cw_z|7cD[<mWhIkl[7Zf[gcwT�cwTIatXwa.XwVzklaa �¼atn�cDXt��� (� ��" ��� � � � ���SUTWVYX8iWjw[lndatklmWjDa�Vz�EiW_bat�Eadh\cDX�e�Xw|lXscDad� nde�_z_*�ÂTWVznuT7adhlÒcDadjuX�e<hIad� hIe��Ea�pr[gj½egh}a�9lVYXscDVbhW���I_za�Vzh^cD[ËcwTIa.klVzjwaon¥ÒcD[gjD|�XscDjwmfn¥cwmIjwa^�GÔ�jD�gmI��ath\cDX,cw[(cDTWaÂiWjD[`ndatklmIjwaÂe�jDa8cwTWaaA9`VYXÁcwVzhW�Ëe�hIkBcwTIa�hWad��hIe��EatXU[gpGcDTWa �I_za�g��Z�F7@� Æ�[`[^]<mWi�cwTWa�aA9lVzXÁcwVzhW� �I_za(hfe��Ea�g��Z� ~ � ��p�cDTWa �I_zaBeg_bjDate^kl|�TIegXBÖo�\��klV �*atjwath^c�hIe��EaoXd�

� mWV{cÂVzh}klVzXw�gmfXsc,g�� ,Z��� ��plcwTIa$a�9lVYXscDVbhI� �I_ba$cwmWjDhIXº[gmlcGcw[�Z*a8e�kWVbjDatn�cw[gjD|g�cwTWath�[ghW_z|ËcwTIa4XÁmWi*adjwÒ�mIXÁatjU�Ee¸|7jwathIe��Ea1V{c,

g�� ,Ov-� x�hW_z[lnu]"cwTWaÓa�9lVzXÁcwVzhW� �I_ba <ÁVzhW[lkla�>MSUTWVYX VYX_z[lnu]gaokE�ÂTWadh7cwTWa �IjDXÁc�nte�_z_f[^hP<Áhfe��EadV >4kl[`atX�e�h<wVb�^a�c >+l����m#�$I�I���g��$Fn¥�x�hIklatj<�ÂTIevc�n�[ghfklV{cDVb[^hIXE��[gmW_YkÑcwTWa}p¨egVb_zmWjDa�cw[mIhW_b[lnu]&cwTWaP<wVbhI[`kWa�>�TWatjwaËZ*a<klVYXwe^XscDjw[^mIX %¿SUTWanuTfe�hIndatX1cDTIevc4cDTWaËa�9lVYXscDVbhI� �I_zaË�8[^mW_zk�Z*a7e}klVbÒjDatn�cw[^jw|�adhInd[gmWh\cDadjDatkEVzhËcwTWa1Xwate�junuT�pr[gj8cwTWa½hWad�hfe��Ea��8[^mW_YkLXwadat� Xw_bVz�gT\co��V{pEhW[�cqVz�Eif[\XwXwVzZW_ba^�Çq[^XÁc�iWjD[gZfe�ZW_z| cDTWa�jwat_baty¸egh\c�n�Vzjun�mW�ËXÁcDe�hfn�aqVYX�ÂTIadjDa8cDTWaÂXÁ|lXÁcwat� VzXOe�cÁcDad�EilcwVzhW�(cw[1jDatndjwaoevcwaUe�heg_{cDadjDhIevcDVby^a �I_za4hIe��Ea�[^j�e�_zVze^Xd�I�ÂTWVznuT /15��N24/a���aA9lVzXÁcDX�

g�� , ~ � �`ategjDnuTÑcwTIa&klVzjwaon¥cw[^jw| pr[gjËcDTWa&Xwatnd[ghIk hIeg��a^��ÂVbcwT�cDTWa�Vbh\cDadh\cwVz[gh�[�p¢n�jDate�cwVzhW�Ëe.hIad�Ladh\cwjD| g��OB Q-� SUTWadjDa VzX�e�hÓa�9lVYXscDVbhW� �I_zaÑ�ÂVbcwTÓcwTIaÎXwatnd[ghIkhfe��Ea�g��OB�g%� <Ám�� m i¼klVbj >�VYX�XÁadc�egX�e�XÁVYklaËa��*aon¥c4[�p�cwTIa<nde�_z_[^h <ÁhIeg��atV?>ulÉ��×^�m(on��8Í8TWatnu]7cwTIe�cÂcwTWa�kWVbjDatn�cw[gjD|jDatXwVYklatXU[^h7cDTWa4Xweg�Ea1kWady`Vznda4egX�cDTWa �I_za�g��a7�Q-� ��jDVbcwa4e�hWad�LklVzjwaon¥cw[^jw|7adh\cwjD| l¨Xwada1Z*ad_z[v�n�g��a7��'� ��hIn�jDate^XÁa½cwTIaf<Á_zVbhW]y>En�[^mWh\cUpr[gjUcwTIa �I_ba^���< �' � " � � � 3 ��� �SUTWVYX$iIjw[ln�aoklmWjDa�ath^cDadjuX8e�hWad� hIe��Ea�Vzh\cw[�e�klVzjwaon¥cD[gjD|g���cUVzX�ndeg_b_zatkËZ`|r<Á_zVzhW]y>El �g×�$\�onOeghIkP<w�Eeg]`hW[lkla�>pl���$\�\��n�ÂVbcwT}e�if[^Vbh\cwatjUcw[<eul¨nd[gjDa�n�<ÁVzhW[lkla�>�e^XUiIe�jue��Eadcwadjo�SUTWaUXÁV 9`cwadath.nuTIegjDe^n¥cDadjuX�[�pIcwTWaUklVzjwaon¥cw[^jw|1ath^cDjw|�egjwan�[^iWVzatk�Vzh\cw[�cwTWa�XÁcwjDmIn¥cDmWjwa <Ámº� m kWadh\c >I�$e�hIk �ÂjwVbcÁcDadhprjD[g� cwTWatjwaBVbh\cw[&cwTWa�klVzjwaon¥cD[gjD|�I_zag� l¨~�[�cwaBcwTfevc�cDTWaiWjDady`Vz[gmIX4nd[gh\cwath\c�[�ps<Ámº� m kWadh\c >}�ÂVz_z_8TIe¸y^aËZfatadh�cDTWahIeg��a1[gpGcDTWa�_ze^XscÂath^cDjw|7Vbh�cwTIa4klVbjDatn�cw[^jw| �I_zag� nSUTWa}iWjD[ln�atkWmWjwa�egXDXwmW�EatX�cwTfevcËcwTIaqklVbjDatn�cw[^jw| �I_zaTIe^X$e�_zjDategkW|�Z*adadh<XwategjDnuTIatkF�gcwTIe�c$cwTIap<ÁVzhW[lkla�>�pr[gj³cDTWakl_zjwaon¥cD[gjD| �I_zaBTfegX�eg_bjDate^kl|�Zfatadh eg_b_z[lndevcDatk�eghIk�cwTfevccwTIa7yve�_zmWatX�[�pp<wm�� m [ �FXÁadc >}TIe¸y^a<Z*adadhÑXÁadc�e�iIiWjw[^iWjDV{ÒevcDad_z|g���< �� � � � � � � � 3 � � �SUTWVYXºiIjw[ln�aoklmWjDa³VYXGnte�_z_baok1prjw[^� <wn�[^jwa�>Sl $fÖt�^�on¥� <wndjwaoevc >l �\�v×^�on�eghIk�<w��]`hW[lk1> l �g×g�^�on¥�Oe�pÀcwadjËe�iWjDady`Vb[^mIX�nde�_z_[gh"<Áhfe��EadV >��ÂV{cDTÐe�XÁaon�[ghfk iIegjDeg�Ea�cwatjË[�p1[ghWa^�8TfegXjDadygaoe�_zatk<cwTIe�c�hW[ �I_ba�[gpºcDTWa4XÁi*atndV �fatk�hIe��Ea�aA9`VYXÁcwatk����< �� 0 ����" � � � , �=� �SUTWVYX�iWjD[`ndatklmIjwaÎVz��iI_bat��ath\cDX�e Xw|`XÁcwat� ndeg_b_Ë�ÂTIVznuTklat_badcwatX}e��I_za�hIe��Ea�prjD[g� cwTIa�klVbjDatn�cw[^jw|ÐXÁcwjDmIn¥cDmWjDag�lr�ÏTIadhÑeg_b_�jDa�pradjDadhfn�atX4cw[�e �I_za�egjwa7kWad_za�cwaokF�OcDTWa �I_zaVbcDXwad_bp,�ÂVz_b_ºZfa4klat_badcwaokF� nB�g �1g%� �`ategjDnuT1pr[^j,e �I_ba��ÂVbcwT4cDTWa8Xwi*atn�V �Iaok4hIeg��a^�ve�hIkVbp¢V{cÂa�9lVYXscuXd�ljDa�cDmWjDh�e�i*[gVzh^cDadjUcD[.cDTWau<ÁVzhW[lkla�>.[�pcDTWa�Vz���EaoklVze�cwa�iIegjwath\cÂkWVbjDatn�cw[gjD|

�v×

Page 88: A Commentary on the Sixth Edition UNIX OS -- Lions

B�g �y\(� x�hI_b[lnu]ËcDTWa�iIe�jDadh\c�klVzjwaon¥cD[gjD|�B�g ���(� �(a�c�egh@<wVbhI[`kWa�>�if[^Vbh\cDadjUcw[EcDTWa �I_za1V{cuXÁat_{p B�gO, ,-� x�hI_bVzhW]`VbhI�½klVzjwaon¥cD[gjDVbaoX¼VzXºpr[gjDZWVYkWkladhº�oaA9Wn�adiWc�pr[gjXÁmIifatjÁÒ�mIXwadjuX�B�gO,O\(� ÅÂat�ÂjwVbcwaOcDTWa$klVzjDatn¥cD[gjD|�ath^cDjw|½�ÂV{cDT�cwTIa*<ÁVzhW[lkla�>yve�_zmWa�XÁadcÂcw[ datjw[ B�gO,��(� Ľatn�jDad�Eath^cUcDTWaf<Á_zVbhI]F>End[gmWh\ct�~�[gcwa�cwTIe�c$cwTIadjDa�VzX$hW[�e�cÁcwat�Eilc$cD[4jwaoklmIndaÂcwTWa(XÁV� da[gp,eËklVzjwaon¥cD[gjD|ËZfat_b[v��V{cuXs<ÁTWVz�gT��Uevcwatj >.�Ëe�jD]¼�

�� � ��� � � � � ��� � (��SUTWVYXÂiWjD[ln�aoklmWjDag�l�ÂTWVYnuT�Vb�EiW_zad�Eadh\cuX�eEXÁ|lXÁcwad�"ndeg_b_�[gpcDTWa&XDe��Ea}hIe��Ea^��VYX<[^hW_z| a�9laon�mlcue�ZW_za}Z`|�cwTIa&XÁmIifatjÁÒmIXwadjo�¢Ô�X³aA9liW_zegVbhIatk�VbhEcDTWa½�`aon¥cDVb[^h}<DÇqÃ�~d!(Ä�lr�w� n >�[gpcDTWa�x`%$Ç��tcwTIVzX,XÁ|lXÁcwat� nte�_z_^VYXGmIXÁaok1cw[(n�jDate�cwai<wVbhI[`kWatX >pr[^j�XÁi*atndVzeg_ �I_baoXd�

<Á�E]`hW[lk1>�e�_YXÁ[�XÁ[^_by^atX�cwTWaEiWjD[gZI_bat�"[gp�<w�ÂTWadjDa.kl[klVzjDatn¥cD[gjDVbaoX�nd[g�Ea prjw[^�s>+% SUTIaÎXwatnd[ghIk¿iIe�jue��EadcwadjiIe^XwXwatk cw[ <w��]`hW[lk1>�VYXËmIXwatkF���ÂVbcwTW[^mlc<�E[`kWV �fntevcDVb[^h[^j.jDatXÁcwjDVzn�cwVz[gh cw[�XÁadc}<wV �E[lkla�>I� lÉÍ8[^��ife�jDa3<wndjwaoevc >lÉ�^�v×^�on�e�hfk <wnuTW�E[lk1>ul�#\���g×4n n��8SUTWVYX�VYXÂcDTWa4[ghI_b|B��e¸|egh&<ÁVzhW[lkla�>�nte�h �^a�c #feg�g�gaok�egXEe�klVzjwaon¥cD[gjD|g�¢pr[gjËVzhlÒXÁcDeghIn�a^���h XÁmfnuT ntegXwatXt��cDTWa�cwTIVbjukLiIe�jue��Ea�cDadj}iIe^XwXwatk cw[<w��]`hW[lk1> 0}��6�� Z*a datjw[f�.SUTWVYX1yve�_zmWa.VYX�n�[^iWVzatk�Vbh\cw[<wV egkIklj�{ �N| >pl egX8VzX�e�iWiIjw[^iWjwVYevcDaUpr[gjUXÁi*atndVzeg_ �f_baoX n��`eghIkF�VbpfhW[^hlÒ dadjD[I�¸�ÂVz_b_lZ*aUegndndadilcDatk�mWhIn�jDVbcwVYnde�_z_z|�Z\|f<wZW�Ëe�ia>l ��$m$l��n��,��cÂ�EVz�gT\c�Zfa�iIjwmIkWadh\cÂcw[EVzhIXÁatjÁc�e�cDatXÁc

� +&� � #'3�� � ;Q80��= � �"H� ����P � H��� �0G8� � �E�'�

Z*a�pr[^jwa�_bVzhWaÂ��×^�g×W�¸juevcDTWadjGcwTIegh.jDad_z|1Vbhfkla �IhIV{cDad_z|4[gh�cwTWaVzhlp¨e�_z_zVbZWVz_zV{cs|B[�p,cwTWa4XwmWi*adjwÒÉmIXwadjo��� �� � � � � � ' � 3 '��SUTWVYX½iWjw[lndatklmWjDa�VYX(nde�_z_zatkqZ`| <ÁaA9latnA> l�#g�m$IÖ�n¥� <wnuTIklVzj >lk#^�g�^�mn��a<wnd[gjDa�>dl $fÖt�g×4n¥�O<Á[gi*adhI_?>SlÉ��(WÖ¸�l�t�m(WÖv��n¥�O<ÁhIeg�EadV >l������o#W�F�v�g�m$I���v�\��(on8cD[�nuTIatnu]�egndndatXDX�i*adjD�EVzXDXÁVz[ghqcw[Be�I_zag�¢SUTWaÂXwatn�[^hIk4ife�jue��Ea�cDadjo� <w�E[`kWa�>W�gVzX,a � mIeg_\cw[1[ghWa[gpq<w�s̳¾(Ì�Í >W��<Á���ÐÅÂ�sSÂÌc>�e�hIkr<w�sÅ�Ì$Ô½Ä`>I�g�ÂVbcwT<[ln¥cue�_yve�_zmWaoXU[�pO�WÖt�^�W�`�^�g�g��e�hIk���$\�g��jwaoXÁi*atn�cwVzygad_z|g�v ~ gOB(� <Á�ÂjDVbcwa�>�i*adjD�EVzXDXÁVz[gh�VYX�kladhIVbaok�V{p,cwTWa��I_ba�VYXÂ[^he �I_za�XÁ|lXÁcwat�¿yg[^_bmI��aÂ�ÂTIVznuTËTIe^XOZ*adadh7��[^mWh\cwaokegX <ÁjDate^k}[ghW_z|y>7[^j1V{p8cwTWa �I_za�VYX½prmWhIn�cwVz[ghWVzhW�}egXcwTWa(cDa�9`c�XÁat�g�Eadh\cUpr[gj½e�h�a�9latndmlcwVzhW�EiWjD[g�gjue��

v ~ v B(� cwTIa7XÁmIadjwÒÉmIXwadj��Ëe¸|�hW[�c�aA9latn�mWcwa7e �I_za<mWhI_baoXwXV{c½VzXs<wa�9latndmlcDegZW_za�>EVzhqevc�_zategXÁc�[^hWa�[�p¢cwTIa�cwTWjDada<Ái*adjD�EVzXDXÁVz[ghO>7�^jw[^mWiIXt�7��h�e�h`|&[gcwTWatj�XwV{cDmIevcDVb[^hTWa1VzX�e�_z��e¸|lX�e�_z_b[v��atk�egntn�atXDX�

v ~ v �-� ��p¢cwTWa4mfXÁatj�VzX�hW[�c�cDTWa4[v�ÂhWatj�[�p,cwTIa �I_zag�¼XÁTWVbpÀc<w�s>}cwTIjwata7iW_YegndatX�cw[qcDTWa�jwVz�gT\c�Xw[qcDTIevc��gjD[gmWii*adjD�EVzXDXwVb[^hIX³�ÂVz_b_¼Z*a�[^ifatjDe�cwVzyga4�z�b�¢��pFcDTWa½�^jw[^mWiIXkW[ghZ' c��ËevcDnuTº�WXÁTWVbpÀcE<w�Y>Eeg�^e�Vzh

v ~O~ 7(� Í8[g�EiIegjwa+<Á�s>Ee�hIk7cwTIa4egndndatXDXUifatjw�EVYXwXwVz[ghIXt�~�[gcwa4cDTIevc�cwTWatjwa4VYX(e�hqe�hI[g�Ëe�_z|7TWatjwa�Vbh�cDTIevc(V{p$e

�I_za�TIe^X½e3<Á�E[lkla�><[�p$�g�`�g�l�WcwTIa.[v�ÂhWatj½nte�hWhW[gc�jDa�pradjwÒadhfn�a(V{c�evcÂe�_z_É�lZWmlcÂady^adjD|g[ghIa�ad_YXwa(nte�h��OSUTWVYXUXÁVbcwmIe�cwVz[ghn�[^mW_Yk�Z*a�nuTIeghW�gaok.XDevcDVzXÁp¨egn�cw[gjDVz_b|�Z`|�VzhIXwadjwcwVzhW��e�XscuevcDa�Ò�Eadh\c � � � � � ����L'��� ����L+&

evpÀcDadjÂ_zVbhIa4�\���^�l�le�hfk7jDadiW_YegndVbhI�._zVbhIatX��`�v��$f�l�\�v�\��Z`|� +!� � H ����� � � �!� � � # 3�� � ;Q�0�>='� ���6� �

(^�

Page 89: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � � �A� ���E���� �

��h��E[^XÁc.nd[g�EiWmlcDadj�Xw|lXscDad�ËX��E[gjDaEcwTIegh�[ghWa7ifatjwVziWTlÒatjDeg_$XscD[gjue��^aEkWady`Vznda<VYX�mIXwatk�pr[gj�cwTWaBXscD[gjue��gaE[gp �f_baoXd���c�VzXBhW[v� hWaon�atXDXDe�jD|�cw[ klVYXwndmIXwXBe�h`mW�.ZfatjB[gp4�Ee�cÁÒcDadjuX$i*adjwcDegVbhWVzhW��cD[4cDTWa½�ËeghIe��^ad�Eadh\c$Z`|Ëx�~���¾�[gpFcwTWa�ÂTW[^_ba�XÁadcB[�p �I_zatX�e�hfk �I_za&XscD[gjue��^aqklady`VYn�atXt�&),VzjDXÁct�Xw[g�Ea�kla �fhWV{cDVb[^hIX �� 5�2f6 �Z6A��2F0�� e�h�Vzh\cwat�gjuevcwaok�n�[g_z_zatn¥cDVb[^h�[�p �I_zatX4�ÂVbcwTe}TWVzadjue�junuTWVYnde�_�XÁ|lXÁcwat��[gp�klVzjwaon¥cw[^jwVzatX�jwaon�[^jDklaok[gh�eEXÁVzhW�g_za1ZW_z[`nu]7[gjDVbath^cDatk�XscD[gjue��^a(klaty`Vznda�6����O�N/1GO2 ��24XZ���o2�� e�kWady`Vznda$�ÂTWVYnuT�nte�h4XÁcw[gjDa$Vzhlpr[^jw�ËevÒcwVz[ghrlraoXÁi*atndVzeg_b_z|BklVYXw]<iIegnu]7[gjÂĽÌUÍ$cDegifa^�Wa�cun�� n�/1�o�m2F6�6s��24XZ���o2�� eÎ�EatnuTfe�hWVYXÁ� pr[gj�cwjue�hfXspratjwjDVbhI� VzhlÒpr[gjD�ËevcwVz[gh7cw[Ë[^j8prjD[g�"eEXscD[gjue��ga1klaty\VYn�a�/}6A���a�N/1G 2b��24XZ���m2 VYXq[^hW_z| /1�o�m2F6�6��"�5k2 VbpEVbc�VYXqVzhlÒXÁatjÁcDatk�Vzh e�h�e^ndndatXDX�klaty\VYn�a^�q��h�cDTWVzX�XwV{cDmIevcDVb[^hjwadpradjDadhInda�cw[7cwTWaEXÁcw[gjue��^a4klady`VYn�a.VzX½�Ëegkla.y\VYe7ejwadpradjDadhInda�cD[EcwTWa4e^ndndatXDX�kWady^nda�/}6A���a�N/1G 2b��24XZ���m2 VYX4e^ndn�atilcDegZW_za<egX4e � 5�2P6 �Z6���2F0

XO� 5���0P2 Vbp �� /�� Vzhlpr[gjD�ËevcDVb[^h3VYX�jDatnd[gjuklatk3egX�e^kWkljDatXDXwegZW_zaZW_z[lnu]lX$[gpG�lÖo�4nuTIe�juegn�cwadjuXOaoegnuT��\�ÂTWVYnuT7ndeghZ*a�Vbhfkladi*adhIkWadh\cw_z|7jDate^k7[^jÂ�ÂjwVbcÁcDadh��

l ~�[�cDa �s�UÇ nd[g�EiIevcDVbZI_baÐ�Ëeg�ghWadcwVYnÎcDegifakl[`aoXUhW[�c�XDevcDVzXÁpr|ËcwTIVzX�nd[ghIkWV{cDVb[^h�� n%� � cDTWaqVzhlpr[gjD�ËevcDVb[^h jDatnd[gjuklatkÑ[gh cDTWa&klaty\VYn�aXDevcDVzX �IatXÂndadjwcDegVbh�n�[^hIXÁVYXÁcwadhfn�|7ndjwVbcwatjwVYe �

ZW_z[lnu] �7Ö8VYXGpr[gjD�Ee�cÁcDatk�e^X¢eE<DXÁmWi*adj¢ZW_z[lnu]y>l XÁata�Zfat_b[v�n%ZW_z[lnu]lX����8cw[ � lrh��.Ö�n�lr�ÂTIadjDaOh(VYX�jDatnd[gjuklatkVzh�cDTWas<wXwmWi*adj¢ZW_z[lnu]F>4nºnd[gh\cDegVbhEe�ht<ÁVzhW[lkla�>cue�ZW_za7�ÂTWVYnuT�jDa�pradjDadhfn�atX�e�_z_ �I_zatX�jwaon�[^jDklaok[^h�cwTWa�XscD[gjue��ga4kWady`Vzndag�¼e�hIk}kW[\aoX�hW[gc½jDa�pÀÒatjwathIn�a�e�h`|<[gcwTWatj �I_zatX�klVzjDatn¥cD[gjD| �I_zatX}jDatnd[gjuklatk�[ghLcDTWa�XscD[gjue��^aklaty`Vznda8jDa�pratjwathIn�a�e�_z_ ��eghIk4[^hW_b|^� �I_zatX,[gh�cwTWaXDe��EaqXÁcw[gjue��^a}klady`VYn�ag�UVÉ� a^��e �I_za&Xw|lXscDad�y^[g_zmW�Ea�n�[^hIXÁcwVbcwmlcDatX�eÑXwad_bpÀÒ�n�[gh\cue�VzhWatkÐXwa�c[gp��I_zatXt�WklVzjwaon¥cD[gjDVbaoX�eghIk <ÁVzhW[lkla�>.cue�ZW_za�

/ � 5k2f6��Z6���2F0 X �O5k��032 VYXÂ�E[gmIh^cDatkBV{p,cwTIa�iWjwaoXÁathIn�a[�p³cDTWaËXscD[gjue��^a�klady`VYn�a�Vbh�e�h�egntn�atXDX(klady`VYn�a�TIegXZfatadh pr[^jw�Ëe�_z_z|¿jDatn�[^�ghWVYXwatkÓZ\|ÓcwTIa [gi*adjuevcDVbhI�XÁ|lXÁcwat���( = �� ��� $ 0=� �� � � ����� 9 � � � '=� �SUTWa�<wXwmWi*adjºZI_b[lnu]y>ÂVYXGeg_b�Ue¸|lXFjwaon�[^jDklaok1egX�ZI_b[lnu] ��_^[^hcDTWa�XÁcw[^jDeg�ga$kWady`Vzndag� l¨��_b[lnu] �.��VYX¢e�_z��e¸|lXFVz�ghW[^jwaok4e�hfkVYX<e¸yve�Vz_zegZW_zaBpr[^jË�EVzXDn�at_b_Ye�hWat[gmIXEmfXÁaoXËhW[�c<hIatn�aoXwXDe�jDVz_b|nd[ghIndadjDhWatkB�ÂV{cDT}x�~���¾.� n

SUTWa+<wXwmWifatj$ZW_z[lnu]y>�n�[^h\cDe�VzhIX$Vbhlpr[^jw�Ëe�cwVz[gh<mIXwatk<Vbhe�_z_z[`ntevcDVbhW� jwaoXÁ[^mWjDndatXt�Uy\V� g�¿cwTWa�XÁcw[gjue��^a}ZW_z[`nu]lXBe�hIkcwTIa�adh\cDjwVzatX8Vbh<cwTWa+<ÁVzhW[lkla�>�cDe�ZI_ba½jwaon�[gjuklaokE[ghËcDTWa �I_zaXw|`XÁcwat���B�ÏTWVz_zaËcwTWa �I_baBXÁ|lXÁcwad��yg[^_bmI��aËVYX��E[gmIh^cDatke}n�[^i`|&[�pUcDTWaP<wXwmWi*adj4ZI_b[lnu]y>�VzX��Ëe�Vzh^cue�VzhWatk�Vzh�n�[^jwae�hfkqmWi¼kWevcDatk�cwTIadjDag�.SG[�iWjwatygath^c(cwTIa<XscD[gjue��ga�klady`VYn�an�[^i`|ËZfaon�[g�EVzhW�Ecw[`[�p¨e�jÂ[^mlc�[�pOkWe�cwag�lVbcDX�n�[gh\cDadh\cDXÂegjwa�ÂjDV{cwcwadh�[gmWc�evc�jDad�gmI_zegj8Vzh\cwadjDyve�_YXd�( )( ��� 9 ��� 0 ���19 �2 � �� �� ( � (��SUTWa=<Á�E[gmWh\c >ÏcDegZW_za nd[gh\cDegVbhWaok e�h¿adh\cwjD|Lpr[gj�ategnuT�E[gmWh\cDatk �f_baÂXw|`XÁcwat� yg[^_bmW�Ea^�GÌ$e^nuT4adh\cDjw|4kla��IhWaoXºcDTWaklaty\VYn�a�[gh<�ÂTWVYnuTËcDTWa �I_za½Xw|lXscDad�3yg[^_bmW�Ea�VYX8��[^mWh\cwaokF�e�if[^Vbh\cwatj�cw[�cwTWa ZWm��¼adj��ÂTWVYnuTÓXÁcw[^jwaoXqcDTWa�<wXwmWi*adjZW_z[lnu]F>4pr[gj�cwTIa1kWady`Vzndag�WeghIk7egh3<ÁVzhW[lkla�>�i*[gVzh\cwadjo�OSUTWacDegZW_za(VYXÂjDa�pratjwathIn�aokBe^X$pr[^_b_z[v��X ����k����� � v���,O, � �ÂTWVznuT/VzXÎnte�_z_baokMZ`| <Á�Ëe�Vzha> lsÖo�WÖo�on¥��Ëeg]gatXÂeghBath\cwjD|Ëpr[gjUcDTWa�jw[`[gcÂkWady`Vznda�6�0P�O����� � vOQ \ v � VzX1eBXÁ|lXÁcwad� nte�_z_¢�ÂTWVznuT��Ëe�]gaoX�athlÒcDjwVzatX�pr[^j�egkWkWV{cDVb[^hIe�_ºkWady`VzndatX���G 24� � ~ , ~ v � XÁaoe�junuTWatX�cDTWa <Á�E[gmIh^c >�cDe�ZI_ba}Vbp�V{c7athlÒnd[gmWh\cDadjuX8egh3<ÁVzhW[lkla�>��ÂVbcwTBcwTWa�_ �sÇt!(x�~½SM' #fe��Xwa�c,G 2o� � 6 � ~ �yv ~ � XÁaoe�junuTWatX.cDTWa <Á�E[^mWh\c >�cDegZW_ba�cD[ �IhIkeghIkBjwadcwmWjDhBe�i*[gVzh^cDadj�cw[�cDTWau<wXwmWifatjUZW_b[lnu]y>�pr[gje�iIegjÁcDVzndmW_Ye�j�klaty\VYn�a���� ��/1��2 � ~ ,OQZ� � VYX�nde�_z_zatkËi*adjDVb[lklVYndeg_b_z|Ëe�hIk7XÁaoe�junuTWatXcDTWa*<w��[^mWh\c >8cDegZW_zaOcw[Â_z[lndevcDaOVbhWpr[gjD�Ee�cwVz[gh1�ÂTWVYnuTXwTW[^mW_zk4Zfa��ÂjwVbcÁcDadh�prjw[^� nd[gjDa³cue�ZW_zatXGVbh\cD[�cwTIa$cuevÒZI_baoXÂ�Ëe�Vzh^cue�VzhWatkB[ghBcwTIa �I_ba4Xw|lXscDad�My^[g_zmW�EatX�6���0P� ����� � v��F7O7 � VYX&e XÁ|lXÁcwad� ndeg_b_.�ÂTWVznuT kWad_za�cwaoXath\cwjDVbaoX�prjw[^�?cwTWa1cue�ZW_zag�( ), "�" � "�� � ' �8(8(��SUTWVYX³jD[gmlcDVbhIa�VYX8nte�_z_baokEZ\|}<Á�ËegVbha>ElsÖt�IÖo�on,cw[4VzhWVbcwVYe�_zVzXwacwTIaf<Á�E[gmWh\c >4cue�ZW_za�adh\cwjD|Ëpr[^jUcwTWa�jD[`[�c�klady`VYn�a^�v � ,Ov-� Í�e�_z_¼cwTWaf<w[gi*adha>�jD[gmlcDVbhIa½pr[^jUcwTWa�jw[`[�cÂklaty\VYn�a^�~�[�cDa cDTIevc <ÁjD[`[�cDkWadyy>ÎVzX�kla��IhWaok Vzh <wnd[ghlps� nA>

l�$^�^×^�mn%v �OB��'� Í8[gi`|�cwTWa�nd[gh\cwath^cuX$[gpºcDTWa½jD[`[�cÂklady`VYn�a+<wXwmWi*adjZI_b[lnu]y>ËVzh^cD[7e<ZIm��*atj(egjwaoeEhW[�c(egXDXÁ[ln�VYevcDatk��ÂVbcwTegh`|<iIe�jwcwVYn�mI_zegjUkWady`Vznda�v �OB B-� SUTWa tadjD[`a�cwT adh\cwjD|�Vbh cwTWa <Á�E[gmIh^c >}cue�ZW_za7VYXe^XwXwVz�ghWaok�cw[7cwTWa�jw[`[gc½klady`VYn�a^�*!½hI_b|�cs��[<[�p³cDTWacDTWjDadaEad_zad�Eadh\cuX�e�jDa.aA9`iI_bVYn�Vbcw_z|qVzhWV{cDVzeg_bVYXwatkF�ESUTWacDTWVzjDkF��cwTWar<ÁVzhW[lkla�>7i*[gVzh\cwadjo���ÂVz_b_OhIadygatj1ZfaEjDa�pÀÒatjwathIn�aok�

(WÖ

Page 90: A Commentary on the Sixth Edition UNIX OS -- Lions

v �OB v(� SUTWau<Á_z[lnu]lX >.XscD[gjDatkBVbhBcwTWaf<DXÁmIifatj�ZI_b[lnu]y>Ee�jDaa�9liW_zVzndV{cD_b|}jDatXwa�co�sl¨SUTWaoXÁa._b[lnu]lX��Ëe¸|�TIe¸y^a�Z*adadhXÁadc4�ÂTWadh�cDTWaP<wXwmWi*adj�ZW_z[lnu]y>B�UegX1_YegXÁc4�ÂjDV{cwcwadh[gh\cw[.cwTIa �I_ba4Xw|lXscDad�My^[g_zmW�Ea�n%v �OB \(� SUTWa4jD[`[�c½kWady`Vznda4VYX��E[gmWh\cDatk}Vzhqez<Á�ÂjDVbcDe�ZI_ba�>XscuevcDa�v �OB �(� SUTWa�Xw|`XÁcwat�:Xwa�cDXUVbcDXUVYklaoe.[gpºcDTWa4n�mWjDjDadh\c8cDVb�Eae�hIk�kWevcDa$prjD[g�LcwTIa$cDVb�EaUjwaon�[^jDklaok1Vbh�cwTWa�<wXwmWi*adjZW_z[`nu]y>I� lr��pUcwTIa7XÁ|lXÁcwat� TIe^X�Zfatadh�XÁcw[^iWifaok�pr[gje�hËe�iIiWjwaon�VYe�ZW_zaUifatjwVz[lkF��cDTWa�nd[g�EiWmlcDadj³[^ifatjDe�cw[gj�ÂVb_z_FhWatatkBcw[ËjDatXwa�cUcwTIa4n�[gh\cDadh\cDX�[�pM<scDVb�Ea�>W� n( = 43 : � 0����#" ���)Ijw[^�"egh}[gi*adjuevcwVz[ghfe�_�y`Vzad� if[^Vbh\co�c<w��[^mWh\cwVzhW�o>Ëe �f_baXw|lXscDad� yg[^_bmW�Ea4Vzh`yg[^_by^atXÂiW_YegndVbhI�<V{c1Vzh&e7XwmWVbcDe�ZI_ba�e^n¥ÒndatXDXÂklady`VYn�ag�Ijwaoegkl|`VzhW��cDTWa4klaty\VYn�a^�Ie�hfk<cDTWadh�adh\cDadjDVbhW�eEn�[^�E�EeghIk�XÁmInuT}e^XUiIe�jue��Ea�cDadjuXd�

��� � = N � � � ���>N � �>=�� � � � � � � � � ���

cD[&cDTWa <wXwTWad_z_?>I�O�ÂTWVYnuT�pr[gjD]lXEe&iWjD[g�^jDeg� cD[�i*adjwpr[gjD�et<Á�E[gmIh^c >.Xw|lXscDad�:nte�_z_ �lifegXDXÁVzhW��if[^Vbh\cwatjDX8cD[.cDTWa(cs�8[�I_za�hIeg��aoXÂegXUiIegjDeg�Ea�cwatjDXt�( = (� � ��� 0 ��� � '� � '��v Q�� B(� <Á�^a�cD�EkWadyy>�klatnd[lklatX³cwTWa �fjDXÁc8e�jD�gmI��ath\cOcw[4_z[�Ònde�cwa�e�ZW_b[lnu]<[^jwVzadh\cDatk�egndndatXDXUklady`VYn�a�v Q�� v(� <Ámº� m kWVbjDia> VYX�jwaoXÁadc iWjDadiIegjDe�cw[^jw| cD[ nde�_z_zVbhW�

<ÁhIeg�EadV > cw[ klatnd[lkla¿cDTWa XÁaon�[ghfk �I_zaÓhfe��Eag�l¨~�[�cwaÐcwTIe�c=<Ámº� m kWVbjDia> VYX Xwa�c Z`| <scDjDegia>Lcw[<Ám�� m e�jD�O{ �N| >+l �^�^�v�4n�

v��FQ Q(� Í8TWaonu]4cwTfevc³cDTWa �I_za�hIeg��aokEZ`|4cwTIa�XÁaon�[^hIk�iIevÒjDeg�Ea�cwatjÂVzX�Vbh�e<Xwe�cwVYXsp¨e^n¥cD[gjD|7n�[^hIklVbcwVz[gh��fV � ag�ÂhW[[ghWa�ad_YXÁa�VYX�ndmWjDjwath^cD_b|Îegntn�aoXwXwVbhI��cwTIa�I_zag�1e�hfkcwTIe�cGcDTWa �I_za�VYX,hW[�cOe1XÁi*atndVzeg_ �I_baMlrZI_b[lnu]�[gjOnuTIegjÁÒegn�cwadj n�v��FQ B(� �`aoe�junuT cwTIa <Á�E[gmWh\c >Ðcue�ZW_zaÏ_b[`[^]\VzhW��pr[gj�eghad�Eilcs|4ath\cwjD|El�<w��iWÒ �Â� ZImlpri � �(~�x½ÆºÆ�>onG[gj³eghadh\cwjD|Óeg_bjDate^kl|¿�Ëe^klaÏpr[gj cwTWaLklady`VYn�a^� l¨SUTWa

<Á�E[gmIh^c >¿kWe�cDe XÁcwjDmIn¥cDmWjwaLVYXÏkla �IhIatk"evcÏ_bVzhWa�^�\���mn%v��O� ��� <wXw�Eia>�XwTW[gmW_Yk if[^Vbh\c<cD[ e�XwmWV{cue�ZW_zaqath^cDjw|ÑVbhcwTWau<w��[^mWh\c >.cDegZW_za�v��O�yB(� %¢adjwpr[gjD� cDTWaÓegiWiWjD[giWjDVYevcwa <w[gi*adha>?jD[gmWcwVzhWag��ÂV{cDT�cDTWa}klady`VYn�a7hfe��Ea�eghIk e�jDategk �¸�ÂjDV{cDa #fe��egX�e�jD�gmW�Eath^cuXd� l Ô�XE�UegXEXwadadhÑategjw_zVbatjt�¢pr[^j�cwTWaÅ�Ã��^�.klVYXÁ]<cwTWaf<w[gi*adha>�jD[gmlcDVbhWa1VYX�e}<ÁhW[gÒÉ[^ia>on%v��O�yv(� ÅÂaoegk�ZW_z[`nu] �7Ö�prjw[^�McDTWa�klaty\VYn�a^�8SUTWVYX�ZI_b[lnu]VzX�cDTWaf<wXwmWi*adjÂZW_z[lnu]y>

v��y,a7(� Í8[gi`|.cwTWa+<wXwmWi*adj$ZI_b[lnu]y>4Vzh\cw[.e4ZWm��¼adjÂegXDXÁ[lndV{Òe�cwaokB�ÂVbcwT <D~d!(Ä(ÌR]d>W�`prjD[g�McDTWa�ZWm��¼adj(egXDXÁ[lndV{Òe�cwaokB�ÂVbcwT <Dk1>W�8SUTWa4XÁaon�[^hIk�ZWm��¼adj��ÂVz_b_GhW[�c�Z*ajDad_zate^XÁaok7eg�^e�Vzh<mWh\cDVb_¼cDTWa�klady`VYn�a(VzXUmWhI��[^mWh\cwaok�v��FB Q-� <ÁVzia>�i*[gVzh\cDXBcw[ cwTWaW<ÁVzhW[lkla�>�pr[gj�cDTWa�Xwatnd[ghIkhfe��Eatk �I_zag� SUTIVzXz<wVbhI[`kWa�>�VzX<hW[v� #feg�g�^atk egX

<w�sÇt!(x�~½Sj>W�4SUTWaÏa��*aon¥c [gp7cDTWVzX VzX�cD[ pr[gjun�a<wVb�^a�c >@l�����×\�mn4cw[�Vz�ghW[^jwaBcwTWa�hW[^jw�Ëeg_Und[gh\cwath\cDX[gpEcwTWa �I_zag���ÂTWVb_za�cwTIa��I_za XÁ|lXÁcwat�-yg[^_bmI��a�VYX�E[^mWh\cwatk�� l¨��h iWjuegn�cwVYn�ag�,cDTWa�Xwatnd[ghIk �f_baBVzXEe�hat�Eilcs| �I_ba�n�jDate�cwatk1aoXÁi*atndVzeg_b_z|(pr[gjºcwTWVYX,iWmWjDif[\XÁa^� n

( �' � � �� �

� � SUTWa <ÁjDate^k �¸�ÂjDVbcwa�>ÑXscuevcDmIX�[�p�e �E[gmIh^cDatkLklady`VYn�akWadi*adhIkWX4[ghW_z|q[gh�cwTIaËiIe�jue��Ea�cDadjuX�iIjw[vy`VYklatkqcw[<DXÁ�E[^mWh\c >W�E~�[}e�cÁcwat�Eilc4VzX1�Ëe^kla�cw[}XÁathIXwa.cDTWaTfe�jukl��egjwa+<ÁjDate^k �¸�ÂjDVbcwa�>.XscuevcDmIXd�OSUT`mIXUVbp¢eEklVYXw]VYXUjDategkWVbaok<�ÂVbcwT <Á�ÂjDV{cDa½iIjw[gcwatn�c >�[ghº�lZWmlcÂVzXUhI[�c�E[^mWh\cwatk <ÁjDate^kÎ[ghW_z|y>W�ÂcDTWadh�cwTWa�Xw|`XÁcwat� �ÂVb_z_nd[g�EiW_Ye�VzhBy`Vz�g[^jw[^mIXÁ_z|g�

, � SUTWaf<w��[^mWh\c >�iWjD[ln�atkWmWjwa1kl[`atX�hW[�c�ndegjwjD|Ë[gmWc�e�h`|]`VzhIk�[�p$_Ye�Z*ad_³nuTWaonu]`VbhW�B[gh�cwTWar<w��[^mWh\cwaok1> �I_zaXw|lXscDad� y^[g_zmW�Eag� SUTWVYXEVYX.jDate^XÁ[^hIe�ZI_baBVbh e�XwV{cwÒmfevcwVz[ghÎ�ÂTWatjwa �I_za}XÁ|lXÁcwat� yg[^_bmI��aoXEe�jDa�jue�jDad_z|jDategjwjue�hI�gatk��,È�[v�8atygadjUVzhqXÁVbcwmfevcwVz[ghfXU�ÂTWadjDa1yg[g_bÒmI��aoX8egjwaÂ�E[^mWh\cwatk7e�hIkEjDad�E[gmIh^cDatk�prjDa � mWath^cD_b|^�Xw[g�Ea��EateghIXU[�p¢ygatjwVbpr|`VbhI�.cDTIevcÂcDTWa�nd[gjDjwaon¥cUyg[g_bÒmI��a½TIegX³Zfatadh<�E[gmIh^cDatkE��[gmW_YkËXwadad� klaoXÁVzjDegZW_zag�lk)WmWjwcwTIadjo�gVbpFe �I_za�Xw|lXscDad� y^[g_zmW�Ea�n�[gh\cue�VzhIXOXÁathlÒXwVbcwVzyga�Vbhlpr[^jw�Ëe�cwVz[gh��¼Vbc(�Ëe¸|�ZfaËklaoXÁVzjue�ZW_za4cD[7VzhlÒnd_bmfkla�XÁ[^�Ea�pr[^jw�-[�pEiIegXDXÁ��[gjukÏiWjD[�cDatn�cwVz[gh egX��ad_z_É� SUTWatjwaÑVzX�jw[`[^� Vzh cwTIa=<DXÁmWi*adj�ZW_z[`nu]y>lÉ�g�\���mn�pr[^j1cwTWa<XÁcw[^jDeg�ga�[�pÂe�hIe��EaËe�hIk�egh�athlÒndjw|`ilcDatk�iIe^XwXw�8[^jDk�� n

( �� " � � � � ( � ' �

SUTWVYXqiWjD[ln�aoklmWjDa�VzX�nde�_z_zatk Z`| <w�Ëe�Vzha> lsÖo�WÖt�I�bÖo�WÖ�(on¥�<ÁmIhW_bVzhW]y>Sl�#\�lÖo×on¥� <ÁVYe�_z_z[`n�>SlÉ���\�N(4n¼e�hIku<whIe��EatV?>Sl�����#m$I��v�^��$FnF�ÂVbcwT�cs�8[(iIegjDeg��adcwatjDXG�ÂTWVYnuT�cD[g�gadcwTWatj¢mWhWV � mIad_z|VYkladh\cwVbpr|<e �I_za �Oe.klady`VYn�ag�leghIkEcwTIa <wVbhW[lkla�>�h`mW��Z*adj�[�pe �I_zaÂ[gh�cwTIa�klady`VYn�ag�M<wVb�^a�c >(jDa�cDmWjwhfXOe1jwadpradjDadhInda8cD[�e�hadh\cDjw|<Vzh�cwTWa4nd[gjDa <wVbhI[`kWa�>.cDegZW_ba^��ÏTWadh <ÁVz�ga�c >�VzXBndeg_b_zatkF�UcDTWa�nd[gjDa <ÁVzhW[lkla�>�cue�ZW_zaVYX�XwategjDnuTIatk �IjuXÁc8cD[�Xwada(V{p,e�h7ath\cwjD|<e�_zjwaoegkl|Ea�9lVYXscuX8pr[gjcwTIa �f_ba�Vbh.cwTIaUnd[gjDai<wVbhW[lkla�>�cue�ZW_zag�,��pfhI[�ct�¸cDTWadh}<ÁVz�gadc >n�jDate�cwaoX8[^hWag�~ ,a\�g%� �`ategjDnuT7cwTWa4nd[gjDau<ÁVzhW[lkla�>�cDegZW_baË�z�z�~ ,a\ v-� ��p�e�hÐath\cwjD|Ñpr[^j<cDTWa�kWatXwVb�^hIevcDatk �I_za�eg_bjDate^kl|aA9lVzXÁcDX1�z�b�~ ,a\ ~ � SUTWadh�Vbp¢Vbc�VYXU_b[lnu]gaok7�^[�cD[<XÁ_zadati

(\�

Page 91: A Commentary on the Sixth Edition UNIX OS -- Lions

~ , � Q(� SGjw|1e��\e�Vzh�� l¨~�[�cDa³cwTIa$�ÂTW[^_baOcue�ZW_za³hWatatkWXºcw[�ZfaXÁaoe�junuTWatkÑe��\e�Vzh prjD[g� cwTWaqZ*ad�^VbhIhWVbhI�I�UZfaondegmIXÁacwTWa1ath^cDjw|7�Ee¸|7TIe¸yga1yve�hWVYXwTWatk1* n�~ , ��,-� ��p³cDTWa��sÇt!(x½~�S #*e��<VYX([gh��z�b�½cwTIVzX½VzX1eghqVb��Òif[^jÁcue�h\c¢if[\XwXwVbZIVb_zV{cs|�pr[gj¢�ÂTWVYnuTE�8aU�ÂVz_b_IkWad_Ye¸|1cwTWaklVYXwndmIXwXwVz[gh ~ BOQ�,-� ��p�cDTWa <Á�sÇt!(x½~�Sj> #fe���VzXEhI[�cËXÁadct�$VzhIndjwaoegXwacwTWa�<ÁVzhW[lkla�>�jwadpradjDadhInda$n�[^mWh\ct��Xwa�c,cwTWa�<Á�sÆ�!�Í�ÃS>

#fe��Ee�hfkBjDa�cDmWjDh�e�i*[gVzh^cDadjUcD[EcwTWaf<wVbhW[lkla�> ~ BOQ v(� Çqeg]gaBe&hW[�cDaB[gp�cwTIa��IjuXÁc�at��iWcs|�XÁ_z[�c�Vbh cwTWa

<ÁVzhW[lkla�>�cDegZW_za�~ BOQ �(� ��p�cwTWaz<wVbhW[lkla�>BcDe�ZI_baEVYX1prmW_z_ �,XÁathIk�eB�EaoXwXDe��^acw[�cwTIa�[gi*adjuevcw[^jt�leghIk<cue�]^a1eghBatjwjD[gjUaA9`Vbc�~ BZ�F7@� Ô�c�cDTWVzX½i*[gVzh^co�*e<hWad� adh\cDjw|BVzX�cw[<Z*a4�ËegkWa4VbhcwTWau<wVbhW[lkla�>.cDe�ZI_ba�~ BZ���(� ÅÂaoegk&cwTWaEZW_z[lnu]q�ÂTWVYnuT�nd[gh\cDegVbhIX½cDTWa �I_baËXw|lXsÒcwat�Óy^[g_zmW�Eas<ÁVzhW[lkla�>I�,~�[�cwa�cwTWa�mfXÁaÂ[gpq<wZWjDategka>VbhfXscDategk�[gpY<wjwaoegklV >W�ºcwTWaBegXDXÁmW�EilcDVb[^h�cwTIe�c <ÁVzhlÒ[lkla�>�Vzhlpr[gjD�ËevcwVz[gh�Z*ad�gVzhIXÂVzh�ZW_z[`nu] �.�EeghIk7cwTWan�[^h\y^adh\cwVz[gh7cwTIe�c�yve�_zVzk <ÁVzhW[lkla�>.h`mW�.ZfatjDXUZ*ad�^VbhevcÂ[ghIaYl¨hW[�c� tadjD[4n%~ B ,Ov(� ÔLjwaoegk7adjDjw[^j�e�c8cDTWVzXUi*[gVzh\cÂVzXwhZ' cUy^adjD|Ë�8at_b_¼jDa�Òif[^jÁcDatk7cw[�cwTIa�jwaoXsc�[gpºcwTIa4XÁ|lXÁcwad�

~ B ,O\(� Í8[gi`|ÂcDTWa³jDad_zadyve�h\ce<wVbhW[lkla�>�Vbhlpr[^jw�Ëe�cwVz[gh��,SUTWVzXn�[lklaÂ�Ëe�]^atXOVz�EiW_zVzndV{c�mIXÁa�[�p¼cwTWa½n�[gh\cDadh\cDXO[gp¼cwTWa�I_za+<wVbhI[I� Ta> lÉ�`TWata�c����4n¥�l�ÂTWVYnuTBVYXwhZ' cÂjDa�pratjwathIn�aoka�9liW_zVzndV{cD_b|Be�h`|`�ÂTWadjDag�

ƺa�c�mIXUhW[v��jwadcwmWjDhBcw[ËmWh��fhWVzXwTWaokBZImIXÁVzhWaoXwX �~ , ��,-� SUTWa*<w�sÇt!(x�~½Sj> #fe��ÂVYXFpr[^mWhIk(cD[ÂZfa�XÁadct�GSUTIVzX

#fe��E�UegX�Xwa�c�Z`|@<wXw��[^mWh\c >I�W�ÂTWadh}e �I_za�Xw|lXscDad�yg[^_bmW�Ea(��e^XU�E[gmWh\cwaok�~ , � B(� �`aoe�junuTÐcwTIa <Á�E[gmWh\c >�cue�ZW_za�cw[ �IhIk�cwTIa�adhlÒcwjD|��ÂTWVznuT&if[^Vbh\cDX½cD[<cwTIa�ndmWjwath\c <ÁVzhW[lkla�>W�Yl¨Ô�_bÒcwTW[^mW�gTÑXÁaoe�junuTWVbhI�}cwTWVYX.cDegZW_ba�VYX.hI[�cËeqTW[^jwjDadhlÒkl[gmfX�[vy^adjDTWate^kF�¢V{c<kl[`atXEXwadat� if[\XwXwVbZI_baBcwTIe�cEe

<ÁZIe^nu]&i*[gVzh\cwadj >&nd[gmW_Yk�Z*aBnd[gh`ygathWVbath\cw_z|�XÁcw[^jwaokVbhÑVbhÑcwTIa <wVbhI[`kWa�>�ag� �I��Vzh cDTWa <ÁV _ze^XscDj > �Iad_YkF�SUTWVYXU�8[^mW_zk�XDe¸yga(Zf[gcwT�cwVz�Ea4e�hIk�n�[lkla�XwiIegndag��~ B�� v(� ÅÂaoXÁadcb<wklatyF>�eghIk <wVbhI[o>Bcw[�cDTWaË�E[gmWh\cwaok�kla�Òy`VzndaËh\mI��Z*adj�eghIk�cwTWaP<wVbhI[`kWa�>�h`mW��Z*adj�[�p�cwTWajw[`[gc,klVzjwaon¥cD[gjD|�[gh4cDTWaÂ�E[gmWh\cDatk �f_baÂXw|`XÁcwat� yg[^_{ÒmW�Eag�$�\cue�jwc�e��^egVbhº�Í8_zate�jD_z|g�`XÁVzhIn�a <ÁVz�gadc >�VYX8nte�_z_baokEZ`|}<whIe��EatV?>pl����m#�$I����g��$Fn¥�1cDTWVzX&cwaonuTWhWV � mWaÑeg_b_z[v��X�cwTIaÑ�ÂTW[^_baÑklVbjDatn�cw[^jw|XÁcwjDmIn¥cDmWjDa([^h�cwTWa��E[gmIh^cDatk �I_za4XÁ|lXÁcwat�:yg[^_bmI��a(cD[ËZfaVzh\cwad�^jDe�cwaok.Vzh\cw[1cDTWa�iWjDa�Ò�a�9lVYXscDVbhI�1kWVbjDatn�cw[gjD|.XÁcwjDmIn�cwmWjDag���pº��a��E[^��ath\cDe�jDVz_b|EVz�ghW[^jwaÂcDTWa(if[\XwXwVbZI_ba1klady`VYevcDVb[^hIX$[gpklVzjDatn¥cD[gjD|}XscDjwmIn�cwmWjDatX1e¸�Ue¸|7prjD[g� cDjwata�XÁcwjDmIn�cwmWjDatXt�F�8aTIe¸y^a1cwTWa�XÁVbcwmfevcwVz[gh}�ÂTIadjDa4eË_baoevpO[�p¢cDTWa�aA9`VYXÁcwVzhW�ËcwjDadaVYXUZfatVbhI�ËjwatiW_ze^n�aok7Z`|7eghBath^cDVbjDa4XwmWZlcwjDada^�

( �� � � � � � �<� ' � �SUTWatjwa½VzX�_zV{cwcw_za�cDTIevcUhWadaokWX8cw[.Zfa1XwegVzkBe�Z*[gmlc8cwTWVYX�iWjD[�Òn�aoklmWjDa.Vzh�egkWklVbcwVz[gh&cw[BcwTWaËegmlcwTW[^j�' X1n�[^���Eath^co��SUTWVYXiWjD[ln�atkWmWjwa(VYX�ndeg_b_zatkBZ`|

� ���J= ��� �O:�F����8� � �>���0�� �7F0��F��'��>���� � �O: � :8,�� � +0��=�= �7F�,$L�('�+0��=0= �OF������8� � � #��>� N �7F0L�(�L'�~�[gcwaËcDTWaBndmWhWhWVzhW�qmIXwa<[gpp<Áh�Ö�>W�<whf��>��ÂTIVznuT�egjwaklaon�_Ye�jDatk&e^X�nuTIe�juegn�cwatj½i*[gVzh\cwadjuX1VÉ� a^�Ee^X1mWhIXwVb�^hWatk�VzhlÒcwat�gatjDXt�³SUTWVYXÂe�_z_b[v��XU[^hW_b|B[ghWa�XwVzkWatkBcwaoXscuXÂ[gh�cwTIa1cs�8[yve�jDVzegZW_zatXUevcÂ_zVbhWa.�lÖ¸�^�`�

( �� 0 � �= �� � ��( =� �SUTWaÏprmIhIn¥cDVb[^hM[�p}cDTWVzXÑiWjD[ln�atkWmWjwa^�7VzhMVbcDX�ZIjw[\egklaoXsccwatjw�ËXt�`VzX8cw[.adhIXwmWjDa�cDTIevcUVzhlpr[gjD�ËevcwVz[gh7[gh<cDTWa �I_ba1Xw|`XÁÒcwat� yg[g_zmW�EatX�VzX½]gatilc�mWiqcw[BkIevcwa^��SUTWa�n�[g�E�Eadh\c½pr[gjcwTIVzXEiWjD[ln�aoklmWjDa}l¨Zfat�gVzhWhWVzhW��[gh _bVzhWa&�`Öo×g�4n�klaoXwndjwVzZ*atXcwTIa&cDTWjwata&�Ëe�Vzh�XwmWZlÒÉprmWhIn�cwVz[ghIXt��l¨Vbh cwTWa�jDadygatjDXwaq[^jÁÒklatj * n¥�

<ÁmWi¼kWe�cwa�> VzX7cwTIa��ÂTW[^_ba�ZWmIXwVbhIatXDX7[gp4cwTWaW<wXw|`hInA>Xw|`XÁcwat� ndeg_b_Sl�#m$o(^�on¥��SUTIVzX��Ëe¸|�Zfa�Vzh`yg[g]^atk�y`VYeqcDTWa<wXw|`hInA>ÎXwTWad_z_.nd[g�E�Ëe�hIk��AÔ�_{cDadjDhIevcDVby^ad_z| cDTWadjDa�VYX&eXÁcDe�hfkWe�juk�XÁ|lXÁcwad� iWjD[g�^jDeg�:�ÂTWVYnuT}jDmWhIX�nd[gh\cwVzh`mW[gmfXÁ_z|e�hfk��ÂTW[^Xwa4[ghI_b|�prmWhIn�cwVz[ghqVYXÂcD[Bnte�_z_<wXw|`hInA><adygatjw|+#g�Xwatn�[^hIkWXt�jl �`ataf<wx%8Ä�ÔOSÂÌl�]��w�Á� n >�Vzh�cwTWa4x`%$Ç�� n

<ÁmWi¼kWe�cwa�>BVYX½nte�_z_baokqZ`| <wXwmW�E[gmWh\c >tl¨�IÖo���4nÂZ*a�pr[^jwae �f_ba(XÁ|lXÁcwad� y^[g_zmW�Ea�VYX$mWhI��[^mWh\cwaokF�le�hIkËZ`|r<Áife�hWVYnA>l ��$\�g�on,egX¢cDTWa�_YegXÁc8egn�cwVz[ghE[�p¼cDTWa�Xw|`XÁcwat�¿Z*a�pr[^jwa�e^n¥cDVby\ÒVbcs|7n�aoegXwatXt�~ ,aQ ~ � ��p�e�hW[gcwTWatjBaA9latn�mWcwVz[ghÐ[gpb<ÁmWi¼kWevcDa�> VzXBmWhIklatj�Ue¸|g�`cDTWadh 4smIXÁc�jDa�cwmIjwh ~ , �yQ-� �`ategjDnuT7cwTWaf<w�E[gmWh\c >.cue�ZW_za�~ , � �'� )W[^jÂategnuTB�E[gmWh\cwaok�yg[g_zmW�Eag�F�z�z�~ , �yB-� x�hW_zatXDX8cwTWa �I_za�XÁ|lXÁcwat�?TIegX�hW[gc�Z*adathBjDatndadh\cw_z|�E[lklV �Iatk<[gjOcDTWap<wXwmWi*adj³ZI_b[lnu]y>1VzX$_b[lnu]^atk�[gjOcDTWay^[g_zmW�Ea1TIegXUZ*adath��E[^mWh\cwatk <wjwaoegk<[^hW_z|F>��z�b�~ , � ~ � x�i¼kWevcDa�cwTWa <DXÁmIifatj}ZW_b[lnu]y>W�1n�[^i`|ÐV{cqVzh\cw[ÐeZIm��*atj4e�hIk&�ÂjwVbcwa�cDTWaEZWm��¼adj1[gmlc�[^h^cD[7cDTWa�yg[g_bÒmI��a�~ ,O,OB-� �`ategjDnuT7cwTWaf<wVbhI[`kWa�>.cDegZW_ba^�Ie�hfk7pr[^jÂate^nuTBhW[^hlÒh`mW_z_�ath^cDjw|^�$_z[lnu]�cwTWa}ath\cwjD|�e�hIkÎndeg_b_s<wVbmIi*kWe�c >cD[EmWi*kIevcwa1cDTWau<ÁVzhW[lkla�>.adh\cDjw|Ë[^h7cDTWa1yg[g_zmW�Ea1V{pegiWiWjD[giWjDVYevcwa�~ ,O,��-� Ô�_z_b[v�ÓegkWklVbcwVz[ghfe�_Oa�9laon�mlcDVb[^hIX([�p�<wmWi¼kWevcDa�>7cw[nd[g�E�EadhInda�~ ,aB Q-� <ÁZ�#fmIXÁTO> lÉ�g�g�g×onÐpr[gjun�aoX�[^mlc e�h`| <Dklad_Ye¸|gaok�ÂjDVbcwa�>�ZW_z[lnu]lXd�

(m#

Page 92: A Commentary on the Sixth Edition UNIX OS -- Lions

( = �� � 0 ��� 0���� � ' ��383 �SUTWVYX�XÁ|lXÁcwat� nde�_z_�klad_za�cDatX�e�h�adh\cwjD| pr[gj}eÑ��[^mWh\cwaokklaty`Vznda$prjD[g� cDTWaY<Á�E[gmIh^c >�cue�ZW_zag�¢SUTWa�iWmWjDif[\XÁaU[gpWcwTWVYXnte�_z_FVzXUcD[EadhIXwmWjDa½cDTIevcÂcDjDe �<n�cD[<e�hIk7prjD[g�McDTWa4klaty\VYn�aVYX�cwatjw�EVzhIevcDatk�iWjD[gi*adjD_b|^�lZfadpr[gjDa½cDTWa4XÁcw[gjue��^a½klaty`Vznda�VzXiWT`|lXwVznte�_z_b|<jDad�E[vy^atkËprjD[g�McwTWa4e^ndn�aoXwXUklaty`Vzndag�v��yga7@� �`aoe�junuT�cwTWa}<Á�E[gmIh^c >EcDegZW_za�pr[^j�cDTWa.egiWiWjD[giWjDV{ÒevcDa(ath\cwjD|�v��Fv���� �`aoe�junuT½cDTWa*<wVbhW[lkla�>�cDegZW_ba³pr[gjºegh\|½[gmlcuXscue�hIkWVbhW�adh\cwjDVzatX7pr[gj �I_baoX�[ghÐcDTWa�klady`VYn�ag�?��pEe�h`|ÏXÁmfnuTa�9lVYXsco�Gcue�]^a<e�h�atjwjD[gj�aA9`Vbct�³eghIk�kl[qhI[�c�nuTfe�hW�^acwTWau<w��[^mWh\c >.cDegZW_za�adh\cwjD| v��Fv \(� Í8_zate�jUcDTWaf<Á�sÇ}!(x�~�Sj> #feg�I�( = ��8� �� � �'0=��� ��� � � � �#" ���!½mWjUevcwcwath^cDVb[^h<hW[v�ÎcDmWjwhfX³cD[4cwTIa½�Ëe�hfe��gat�Eadh\c8[gpFcwTWajDatXw[gmWjun�aoX¼[�pWe�h�VzhIklVzy`VzkWmIe�_4)¢�y]Il �f_ba�XÁ|lXÁcwad�Lyg[^_bmI��a�n¥��\cD[gjue��ga8ZW_z[`nu]lX¢e�jDa8eg_b_z[lnde�cwatk4prjw[^� cwTWa8prjDada�_bVYXscOZ`|<De�_z_b[lnA>}e�c�cDTWa7jDa � mWaoXsc�[gpp<ÁZW�Ëegia>W���`cw[gjue��^aËZW_z[`nu]lXegjwa½jwadcwmWjDhWatk<cw[�cwTIa½prjDada(_zVzXÁcÂZ\|z<Áprjwata�>.evc�cwTWa1Z*adTWaoXsc[gp`<ÁVbcwjDmWhIn�> l¨�ÂTWVYnuTBVYXÂndeg_b_zatk7Z\|3<wn�[^jwa�>W��<Á[^ifathW_?>�e�hfk<wVbiWmWc >on��̳h\cDjwVzatXÂVzh�cwTIai)O�F] <ÁVzhW[lkla�>�cDe�ZI_baoX�e�jDa1�Ee^kla4Z`|<wVzeg_b_z[lnA>W�^�ÂTWVYnuT7VYX8nte�_z_baokËZ`|z<Á�Ëe�]`hW[lkla�>4e�hIkP<ÁiWVzifa�>W�Ì$h^cDjwVzatX$Vbh7cwTWVYX8cDegZW_ba(e�jDa½nte�hIndad_z_baokËZ`|}<wV{prjDada�>W�\�ÂTWVYnuTVYXÂndeg_b_zatk�Z`|P<ÁVziWmlc >W�SUTWa�<DXÁmIifatjqZW_z[`nu]y> pr[^j}cwTWa@)¢�y] VzX�n�ath^cDjDeg_�cw[cDTWaEjwaoXÁ[^mWjDnda��Ëe�hfe��gat�Eadh\c(iIjw[ln�aoklmWjDatXt��SUTWar<wXwmWi*adjZW_z[lnu]y>+lÉ�g�g�WÖ�n8n�[^h\cDe�VzhIX �

XÁV� da1Vzhlpr[gjD�ËevcDVb[^h}lrcw[�cue�_FjDatXw[gmWjun�aoXUe¸y¸egVb_Ye�ZI_ba�n� _bVYXÁcU[gp,mIiBcD[�Öt�g��e¸yve�Vz_zegZW_za1XÁcw[^jDeg�ga½ZW_b[lnu]lX� _bVYXÁcU[gp,mIiBcD[�Öt�g��e¸yve�Vz_zegZW_za+<wVbhI[`kWa�>�adh\cwjDVzatX� _b[lnu]lX�cw[�n�[gh\cDjw[^_��EeghWVziWmW_YevcwVz[gh [gp�cDTWa egZf[vy^a_bVYXÁcDX� #fe��\X� n�mWjDjDadh\cUkIevcwa�[gpG_YegXÁc�mWi¼kWevcDag���p4cDTWa&_zVzXÁc�Vbh nd[gjDaq[�p�e¸yvegVb_Ye�ZW_za <wVbhW[lkla�>�adh\cDjwVzatXpr[^j$cDTWa �f_ba1XÁ|lXÁcwat�3y^[g_zmW�Ea�atygadj�Z*atn�[^�EatX8a�9lTIe�mfXscDatkF�cDTWadh/cwTWa ath\cwVzjwa�cDegZW_ba [^h:cDTWa )¢�y] VzXÎjDate^k:e�hfkXwategjDnuTWaok.cw[4jDadZWmIVb_YkEcwTIa�_zVzXÁct�$Í8[gh`y^adjuXÁat_b|4VbpFcwTIa½e¸yve�Vz_{ÒegZW_baf<wVbhI[`kWa�>�cDegZW_za�[vygadj #I[v��Xt�legkWklVbcwVz[ghfe�_�ath^cDjwVzatX�e�jDaXwVb�EiW_z|<pr[^jw�^[�cwcwadh7cw[ËZ*a�jwaoklVYXwnd[vygadjDatk<_ze�cwadjo�Ô klV �¼adjDadh\c½XÁcwjuevcwat�g|<VYX�mfXÁaok7pr[^jÂcwTIa4_bVYXÁc�[�p³e¸yve�Vz_{ÒegZW_ba<XÁcw[^jDeg�ga�ZW_z[`nu]lXt�7SUTWaoXÁaËZW_z[lnu]lX�e�jDaEegjwjue�hI�gatk&Vbh�^jw[^mWiIX¢[�p¼mWi�cw[�[^hWaÂT`mWhIkljDatk�ZW_z[lnu]lXd�¢SUTWa �IjuXsc³ZI_b[lnu]VzhEategnuT��gjD[gmIi lraA9Wn�adiWcOcwTWaÂy^adjD| �IjuXsc n,VzX¢mIXwatk.cD[4XscD[gjDacDTWa.e^kWkljDatXDXÁaoXU[�pOcwTIa4ZW_z[`nu]lX�Zfat_b[^hW�gVzhW�Ecw[7cwTWa�iWjwaty`V{Ò[^mIX1�gjD[gmWiº�<Ô�kWkljDatXDXwatX([�pUZW_z[`nu]lX1Vzh�cwTWa<_YegXÁc�Vbhfn�[g��ÒiW_za�cDa��gjD[gmWi�e�jDa�XscD[gjDatkBVbh�cwTIaf<wXwmWifatjUZW_b[lnu]y>W�

SUTWa �IjuXscUadh\cwjD|EVbhBcwTIa �IjuXÁc�_zVzXÁcÂ[�pºZI_b[lnu]Ëh`mW��Z*adjuXVYX datjw[f�G�ÂTIVznuT e^n¥cuX�egX.eqXwadh\cwVzhWad_É���`VzhInda<cwTIa7�ÂTW[^_ba_zVzXÁc4VzX�XÁmWZ 4satn¥c�cD[qe}Æ�� )�!?klVYXwndVbiI_bVzhWag�¢klVYXwnd[vygatjw|}[gpUeZW_z[lnu]�h`mW�.Zfatj.[gp� dadjD[qVzh�cwTIaB_zVzXÁc�XwVz�ghWV �IatX�cwTfevc�cDTWa_zVzXÁc�VzXUVzh�p¨egn�c�ad�Eilcs|g�( �� ( � ��� � � '�� ' � �SUTWVYX(VzX1ndeg_b_zatk&Z`| <ÁZW�Ëegia> l ��$o#\�l�F��$o$o(I�¼�m$^�o(W�¼��$o(^�W���$\×\�mn��ÂTWathWady^adjEe�hIad�:XÁcw[^jDeg�ga7ZI_b[lnu]�VYXEhWadaoklatk�cw[XÁcw[gjDa(iIe�jwcÂ[�pOe �f_ba^�v �Ov��'� Í8[gh`ygatjÁc�]`hW[v�Â_zatkW�ga4[gpOcwTWaEklady`VYn�a.hIe��Ea�Vzh\cw[e�i*[gVzh\cwadj�cw[�cwTWaf<DXÁmIifatjÂZW_b[lnu]y> v �Ov�,%� ��pe<wX #I[lnu]F>4VzX�XÁadct�\cwTIa½_zVzXÁc8[gpºe¸yve�Vz_zegZW_ba�ZW_b[lnu]lXVYX�n�mWjDjDadh\cw_z|ÎZfatVbhW� mWi¼kWevcDatk Z\|ÐeghW[�cDTWadjBiWjD[�ÒndatXDX�v �Ov ~ � !½ZlcDegVbhqcwTWa�ZW_z[`nu]�h`mW�.Zfatj½[gpOcwTWa�hWa�9`c1e¸y¸egVb_bÒegZW_za4XscD[gjue��ga½ZW_z[`nu] v �Ov \-� ��p³cwTIa._YegXÁc½ZW_z[lnu]�h\mI��Z*adj1[gh}cDTWa�_bVYXsc1VYX tadjD[I�cDTWa�adh\cDVbjDa1_bVYXsc�VYXÂhW[v��ad�Eilcs| v � ~ Q-� <ÁZIe^klZW_z[lnu]F> lÉ����$^�4n³VYXUmIXwatk7cw[EnuTWatnu]<cwTIe�c�cDTWaZI_b[lnu]Ðh`mW�.Zfatj�[^ZlcDegVbhIatk prjw[^� cwTWa�_zVzXÁcqXÁatad�ËXjDate^XÁ[^hIe�ZI_ba�v � ~ �'� ��pUcwTWaB_bVYXsc.[�p�e¸yve�Vz_zegZW_za�ZI_b[lnu]lX4Vzh�cwTWa@<wXwmWi*adjZI_b[lnu]y>�VzX1hW[v�Óad�Eilcs|^��cwTIadh�cwTWaËZI_b[lnu] 4smIXÁc4_z[�ÒntevcDatk��ÂVz_z_Und[gh\cDegVbh�cwTWa}egkIkljwaoXwXwatX�[�p�cDTWa�hWa�9`c�^jw[^mWi�[�pv � ~ ,%� �`a�cd<wX #I[lnu]F>�cw[(klad_Ye¸|(egh`|([gcwTWatjGiIjw[ln�aoXwX�prjw[^��^a�cwcwVzhW��eu<ÁhI[4XÁiIe^n�a�>1VbhIkWVzntevcwVz[ghEZ*a�pr[^jwaÂcDTWa�_zVzXÁc[gp½e¸yve�Vz_zegZW_za<ZW_z[`nu]lX.Vbh cwTWa <wXwmWi*adj�ZW_z[`nu]y>�nde�hZ*a�jDadiW_zadhWVYXwTWatk�v � ~ g%� Ä�adcwatjw�EVzhWa�cwTWaUh`mW��Z*adjO[gpfyve�_zVYk�ath^cDjwVzatX,Vzh�cDTWa_zVYXscÂcD[ËZfa4nd[giWVzatk�v � ~ \-� ÅÂatXwa�c�<wX #I[lnu]F>I�\eghIkr<Á�Ue�]^admWiO>�e�h`|g[^hWa��Ue�VbcÁÒVzhW� v �O\�,%� Í8_baoe�j�cwTIaÏZWm��¼adj Xw[LcwTIe�c e�h`| Vzhlpr[gjD�ËevcwVz[ghjDatnd[gjuklatk4Vbh�cwTWa �I_za8Z`|4kladp¨e�mW_bc¢�ÂVb_z_`ZfaÂe�_z_ datjw[\X�v �O\ B-� �`a�cEcDTWa <Á�E[lklV �fatk1>#fe���cw[�adhfXÁmWjDaBcwTIe�c�cDTWa

<DXÁmIifatjGZW_z[lnu]y>��ÂVz_b_\Zfa��ÂjDV{cwcwadh.[gmlc¢Z`|u<ÁmWi¼kWevcDa�>l����WÖ�#on��

( �� , "��2�!0�� � � � 3 �13 �SUTWVYX�iWjD[ln�aoklmWjDa4VzX½ndeg_b_zatk}Z`| <wnd[gjDa�>ul $fÖgÖo�on¥�c<Á[gi*adhI_?>l �m(^�^�mn�eghIkt<ÁVziWmlc >�lÉ��#^�m#on¥�G��h�cDTWa �IjuXsc,cs�8[1nde^XÁaoXd�¸cDTWan�[^h\cwadh\cuX�[gpOcwTWa}< �I_za�>Be�jDa.egZf[^mlc�cD[BZ*a.jDadiI_ze^n�atk��½��hcwTIa1cwTWVzjDk�nde^XÁa^�`cwTWa �f_ba�VYXÂe�Z*[gmlcÂcD[EZfa4egZIe�hIkW[ghWaokF�~ 7�,Z�'� ��p¢cwTWa �f_ba4VYX�eËnuTfe�juegn¥cDadjÂ[^j�ZW_z[`nu]�Xwifaon�VYe�_ �I_zacDTWadh�cDTWadjDa�VzXUhI[�cwTIVbhW�EcD[Ëkl[2

(m$

Page 93: A Commentary on the Sixth Edition UNIX OS -- Lions

~ 7�,OB(� �`aoe�junuT�Zfegnu]`��egjDkIX�cwTWa._bVYXsc([�pOZW_z[lnu]Bh`mW�.ZfatjDXXscD[gjDatk7Vbh�cwTIaf<ÁVzhW[lkla�>2~ 7�, g-� ��p�cwTWa �I_zaËVYX1_zegjw�^ag�FcDTWadh�e�h�VzhIklVzjwaon¥c�pra�cunuT�VzXhWadaoklatk�� l ÔÏkl[gmWZI_baÂVzhIklVzjwaon¥cOpradcDnuTEVzX¢hIadatkWatk.pr[gjZW_z[`nu]lX�h`mW��Z*adjDatk�Xwady^adh�e�hIkBTWVz�gTWatjt� n�~ 7�, ~ � ÅÂadpradjDadhIndaEeg_b_ ,Og ~�ad_zad�Eadh\cuX�[�p8cwTWaËZWm��*atj4VbhjwatygatjDXwa�[^jDkWadjo� l ~�[�cDa�cwTIVzX�XÁatad�ËX�cD[ÐZfa�cwTWa[ghW_z| iI_ze^n�aq�ÂTWatjwa�nuTIe�juegn�cwadjuX ���lÖ¸�l� ���lÖ�#�[gpcwTWa�ZWm��¼adj8egjwaoe1e�jDaÂjwadpradjDadhIndatkF�¢�`Vbhfn�aÂcDTWad|��ÂVb_z_iWjDatXwmW�Ëe�ZW_z|.nd[gh\cDegVbh datjw[f��cDTWad|��ÂVb_z_fnd[gh\cwjDVzZWmlcwahW[�cDTWVzhW��cD[�cwTIa�nte�_Yn�mW_YevcDVb[^h��3È�adhInda�Vbp <u�lÖt�o>�8atjwaÂXwmWZIXÁcwVbcwmlcDatkEpr[^j*<D�WÖo�m>�TWatjwa^�^eghIkEe��^egVbhE[^h_bVzhWa���$o#\�l��e �gadhIadjue�_�Vz�EiWjD[vygad�Eath^c�e�_z_½jD[gmWhfk�8[^mW_Yk7jDatXwmW_bcSl�%�n n�~ 7 B \(� <sprjDada�>ÐjDa�cDmWjwhfX�egh¿VzhIklVzy`Vzklmfe�_ËZW_z[lnu] cw[�cwTWae¸yve�Vz_zegZW_ba(_zVzXÁc�~ 7 B �(� SUTWVYXÂVYXUcwTWa�athIk�[�p,cwTWaf<Ápr[gj >.XÁcDe�cwat��ath\c�n�[g��Ò�EadhIndVbhW� [ghÐ_zVbhIa���$`�^�`� l Æ�Vz]gat�ÂVzXwa}cwTIa�XÁcDevcDa�Ò�Eadh\cÂ�ÂTWVznuT�Z*ad�^VbhIXÂe�c(��$4#^��adhIkWXÂe�c(��$4#^�l� n�~ 7O7�B(� Í8_zate�jUcDTWa�adh\cDjw|<Vzh <ÁV egkWklj�{4| > ~ 7O7 g-� ÅÂaoXÁadc�XwV( ta�Vzhlpr[gjD�ËevcwVz[ghº�\eghIk #feg��cwTWa <ÁVzhW[lkla�>egX�<ÁmIi*kWe�cwaok1>W�( = ��13 � �� � � �� �SUTWVYXEiWjD[ln�atkWmWjwa�VYXËnde�_z_zatk�Z`|�<wV{cDjwmIhInA> lÉ�N$o#^�W�8��$4#m(W��N$m$\�on.cw[ÑjwatVbhIXwadjwcBe�XwVz��iI_ba�XscD[gjue��ga�ZW_z[lnu]ÎVbh\cw[�cwTWae¸yve�Vz_Ye�ZW_za½_zVYXscÂpr[^j�e�kWady`Vzndag�~ QOQ�g-� ��c4VYX1hW[�c�nd_baoe�j��ÂT`|}cwTIaz<wX pr�E[lk1> #feg��VzX4Xwa�cTWadjDa�egXE��ad_z_�egXEevcEcwTIa}adhIkÑ[�p½cwTWa}iWjD[ln�aoklmWjDa

lr_zVbhIa.�v�^�g�on��,Ô�h\|BXÁmW�^�gaoXscDVb[^hIX %~ QOQ v(� !½ZIXwadjDyga½cwTWa�_z[lnu]`VbhW�EiWjD[�cD[ln�[g_ ~ QZ�yQ(� ��p�hW[&prjwata7ZW_z[lnu]lX�iWjDady`Vz[gmIXw_z|�aA9`VYXÁcwatk�pr[gj.cwTWaklady`VYn�a^�GjDatXÁcw[^jwaEcDTWaBXwV{cDmIevcDVb[^h�Z`|�Xwa�cwcwVzhW�qmWi e[ghWa�ad_zad�Eadh\cU_bVYXscUn�[^h^cue�VzhWVzhW��e�h7adh\cwjD|�pr[^j8ZI_b[lnu]

�.�W�ÓSUTIVzX�yve�_zmWa&�ÂVz_z_1XwmWZIXwa � mWath\cw_z|ÑZ*a�Vzh\cwatjÁÒiWjDa�cwaokBe^XÂe�h <ÁathIk�[�pG_zVYXsc >�Xwadh\cDVbhWat_1~ QZ�F7@� ��pÂcwTIaBe¸yve�Vz_zegZW_zaË_bVYXsc�Vbh�cDTWa3<DXÁmIifatj�ZW_z[lnu]F>qVzXe�_zjwaoegkl|�prmW_z_ �`Vbc8VYXOcwVz�Ea�cD[4�ÂjDV{cDa�Vbc8[gmWc$[gh\cw[4cwTWa

)O�F]��f�la�cp<wX #I[lnu]y> ~ QZ�yv(� �(a�c�e�ZWm��*atjt�Ie^XwXw[ln�VYevcDatk<�ÂVbcwT�cDTWa�ZW_z[`nu]7hW[v�ZfatVbhI��ath\cwadjDatkBVzhBcDTWa1prjDada�_zVzXÁc�~ QZ���(� Í8[gi`| cwTWa�n�[gh\cDadh\cDXË[gp1cwTWa�XÁmWi*adjBZW_z[`nu]Ñ_bVYXÁct�iWjDatn�aoklatk�Z\|�e�n�[^mWh\c�[gp�cwTIaBh`mW�.Zfatj�[gp½yve�_zVYkZW_z[`nu]lXt��Vzh^cD[�cwTIa�ZWm��¼adj,`�ÂjwVbcwaÂcDTWa�ZWm��*atj�\mWhIXwa�ccwTWa1_z[lnu]7e�hIk <w��eg]gadmIia>�egh\|`Z*[lkl|<�Ue�VbcwVzhW�I�~ Q , g-� Ô�kIkËcwTIa�jDa�cwmIjwhWaokËZW_z[lnu]�cD[4cwTIa½e¸yve�Vz_zegZW_za�_bVYXÁct�

( �� � "�� 0 � � � , 383 �SUTWVYX³iWjD[ln�aoklmWjDaÂVzX$[ghWa�[gp¼cwTWa½��[\Xsc8if[^iWmW_Ye�j$Vzh<x�~���¾l¨nte�_z_baok�prjw[^� hWategjw_z|}cDTWVbjwcs|�kWV �¼adjDadh\c4iW_YegndatX n½eghIk�V{cuXmIXwa1�ÂVb_z_�TIe¸y^a(eg_bjDate^kl|ËZfatadh�prjDa � mWath^cD_b|7[gZIXwadjDygaokF���h�aoXwXwadhfn�a&VbcqXÁVz�EiW_z| klatndjwat�Eadh\cDX7cwTWa�jDa�pratjwathIn�an�[^mWh\c�pr[gj�cDTWaP<wVbhW[lkla�>�iIegXDXÁaok�egX4e�iIegjDeg�Ea�cwatjt�Ge�hIkcwTIadh�nte�_z_zX+<wiWjwat_ba�> l��N(m(\�mn�cD[�jwaoXÁadc�cwTIa}<wVbhI[`kWa�><_z[lnu]e�hfk<cD[ËifatjÁpr[^jw�:egh`|<hWatndatXDXwegjw|r<w��eg]gadmIia>gXt�

<ÁVziWmlc >7TIe^X1e�h&Vz�Eif[^jÁcue�h\c�XÁVYklaEa �¼atn�ct�4��p8cwTWaEjDa�pÀÒadjDadhfn�a�n�[^mWh\cUVYXÂ�^[gVzhW��cD[ËZfa�jDatkWmIn�aok<cD[ dadjD[I�\cDTWadhqejDad_zategXwa1[�pOjDatXw[gmWjun�aoXUVzXÂVzhIklVYnde�cwaokF�ÂSUTWVzX��Ëe¸|7Z*a.XwVb��ÒiW_z|1cwTWaÂnd[gjDa�<wVbhW[lkla�>W�v[^j,Z*[�cDT�cDTIevc³eghIk�cDTWa �I_baUVbcDXwad_bps�VbpGcDTWa�h`mW��Z*adjÂ[gp,_zVbhI]`XUVYX�eg_zXw[ tadjD[I�( �� ' " � � �� �<� , 3 �SUTWVYXFiWjD[ln�atkWmWjwaOVYXºnte�_z_baok(Z\| <ÁVziWmlc >*lÉ��#^�g�onIcw[ÂjDa�cwmIjwh4e)O�F] <wVbhI[`kWa�>1cD[4cwTIa½e¸yve�Vz_zegZW_zaÂ_bVYXsc��Ëe�Vzh^cue�VzhWatk<VbhËcDTWa<wXwmWi*adj(ZW_z[`nu]y>I����p$cwTIVzX1_zVzXÁc1VzX1e�_zjDategkW|BprmI_b_el egX(hW[�cDatke�Z*[vyga�n�[^j1V{p8cwTWaË_zVzXÁc�VzX1_z[lnu]gaok3lrmfXÁVzhW� <wX Vb_z[lnu]F>4nÂcDTWaVzhlpr[gjD�ËevcwVz[gh�VYXÂXÁVz�EiW_b|�klVYXwnte�juklatkF�( �� � "�0=� � � � � , � 3 �SUTWVYX�iWjD[ln�aoklmWjDa³VzXGndeg_b_zatk1Z`|+<wXÁcDevcD_?>il¨�g�\���4n¥� <ÁmWi¼kWevcDa�>lÉ�g�g�g�onOeghIkr<ÁVziWmlc >ElÉ��#^�\��n,cD[�jDady`VzXwa�e�iIe�jwcwVYn�mW_Ye�j�<ÁVzhlÒ[lkla�>�adh\cDjw|�[^h e})O�F]��³��c<kl[`aoX.hI[�cwTIVbhW��Vbp�cDTWaqn�[^jÁÒjDatXwif[^hIklVzhW��nd[gjDa <wVbhI[`kWa�>.VzXUhW[gc #fe��^�gatktl�<w�sx%$Äd>.[gj<Á�sÔ�ÍÂÍ >4n�SUTWaf<Á�sx`%$Äd> #fe��E�Ëe¸|ËZfa4Xwa�c�Z`|<[^hWa�[�p��� � �Q� � �7L���L�� � 9�8��#2�7:��*���/�O:��>:�F'�� 4�80� �7L���F�� � �$N � ��� � �7F����*('�� 4 #3 � �7L���(�L � 8� � � ��>= �7F���:0�'�� �Q� � � � � ��� � � �$8= � �7F�:�� � �3>� �$N = � �7:���(����O:�L8, ( � # � # = �7F�F���,��

SUTWau<Á�sÔ�ÍÂÍ > #feg�E�Ee¸|7Zfa4Xwa�cÂZ`|7[^hWa1[�p��=��0� � �7:���L�� � 8� � � 0�>=��7F���:�� �3>� �$N = � �7:���(�� � # � # = �7F�F��8,��SUTWa #feg�^XUe�jDa1jwaoXÁadcUZ`|P<wVbiImlc >fl��N#^�g×on��

~ BO\ B-� )W[^jw�^a�c�V{co�GVbpUcwTWap)O�F]:TIegX�Z*adath��E[gmWh\cwaok�egX<wjwaoegk7[ghW_z|y>

~ BO\ v-� ÅÂate^k�cwTIa�egiWiWjD[giWjDVYevcwa7ZW_b[lnu]�n�[^h\cDe�VzhWVzhW�qcDTWa)O�F] <ÁVzhW[lkla�><adh\cwjD|g��Ô½X�[^ZIXÁatjwy^atk�ategjw_zVzadj��ÂVbcwTjDatXwi*atn¥c�cw[}<ÁVz�gadc >I�^hW[gcwa½cwTWa½cwTIa½mIXwa([�p<wZWjwaoegk1>VzhIXÁcwaoegk [�p+<ÁjDategkWV?>I�³cwTIaqegXDXÁmW�EilcDVb[^h cDTIevcËcDTWa<wVbhI[`kWa�>�cDe�ZI_ba�Zfat�gVzhIX¢evc¢ZW_z[`nu] ���½e�hIk4cwTWaÂn�[^hlÒy^adh\cwVz[gh&cwTIe�c(yveg_bVYk <wVbhI[`kWa�><h`mW�.ZfatjDX(Z*ad�^Vbh�evc[^hWa�

~ BO\ �-� Í8[gi`|�cDTWaÂjwat_batyve�h\c³VbhWpr[gjD�Ee�cwVz[gh.prjw[^� cDTWa�n�[^jwa<wVbhI[`kWa�>

(^�

Page 94: A Commentary on the Sixth Edition UNIX OS -- Lions

~ B������ ��p½egiWiWjD[giWjDVze�cwa^�OmWi*kIevcwaBcwTIa7cDVb�Ea�[�p�_YegXÁc�e^n¥Òn�aoXwX�~ B�� v(� ��pºe�iIiWjw[^iWjDVze�cwag�^mWi¼kWevcDa�cwTIa�cwVz�Ea�[gp¼_YegXÁc8�E[lk`ÒV �*ndevcDVb[^h ~ 7 Q Q(� ��jwVbcwa1cDTWa�mWi¼kWevcDatk�ZW_z[`nu]7ZIegnu]ËcD[�cwTWa*)O�F].�

(^�

Page 95: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � ��*}�e

Ô=<ÁiWVzi*a�>�VYX,e`),� )�! nuTfe�juegn¥cDadj�_zVYXsco���ÂTWVYnuT4VzX,�Ëe�hfe��gaokZ`|7x½~���¾¿e^XU|ga�c�eghW[�cDTWadjÂyve�jDVza�cs|Ë[�p��I_zag�!½hWa �gjD[gmIiM[�p�iWjw[lndatXDXÁaoX �Ëe¸| <Á�ÂjDVbcwa�>ÓVzh^cD[3e

<wiWVbi*a�> e�hIk eghW[�cDTWadjq�^jw[^mWi �Ëe¸| <wjwaoegk1>ÑprjD[g� cwTWaXDe��Ea+<ÁiWVzifa�>W�OÈ�athIn�a+<ÁiIVbi*a�>^X8�Ëe¸|ËZ*ag�WeghIk7egjwa(mIXwatkF�iWjDVz�EegjwVz_z|Epr[gj�Vzh\cwadjDiWjD[ln�atXDXUn�[^���.mWhWVYnde�cwVz[gh����| aA9`iI_b[^V{cDVbhW��cDTWa&nd[ghIndadilc<[gp1e < �I_{cDadj >W���ÂTWVYnuTVYX�e�iWjD[g�^jDeg� �ÂTWVYnuT�jwaoegkWX�e�h�VzhWiWmlc �I_baBe�hIk�cDjDeghIXsÒpr[^jw�ËX�Vbc�Vzh^cD[qe�h�[gmWcwiWmlc �I_ba^�,eghIk�Z`|&mIXwVbhI� <ÁiWVzifaoX >cD[�_zVbhW]Ecs��[4[^j8�E[gjDa�iWjD[g�^jDeg�ËXO[�pFcDTWVzX8cs|`i*a�cw[^�gadcwTWatjt�x½~���¾¿[ �*atjDX�V{cuXÂmIXwadjuX�e<XwmWjwiIjwVYXÁVzhW�^_b|7nd[g�EiWjDadTWathIXwVby^aeghIkBXw[giITWVzXÁcwVYnde�cwaokBXwa�c�[gpGp¨e^n�Vz_bVbcwVzatXt�( �8 �� � " � � ��� (8, �Ô <ÁiWVzi*a�><VYX(n�jDatevcDatkqe^X½e7jwaoXÁmI_{c([�p$e�XÁ|lXÁcwad� nte�_z_G[^hcDTWaf<ÁiWVzi*a�>�iWjD[`ndatklmIjwa^�~ ~ ,O\(� Ô�_z_z[`ntevcDa1egh <ÁVzhW[lkla�>�pr[gjÂcDTWa1jw[`[gcÂkWady`Vznda�~ ~ B���� Ô�_z_z[`ntevcDa1er< �I_za�>�cDe�ZI_ba�ath^cDjw| ~ ~ B v(� ÅÂat��at��Z*adjÂcDTWaf< �f_ba�>�cDe�ZI_ba�ath^cDjw|BegXs<wj >Ee�hfke�_z_b[lntevcwa1eEXÁaon�[^hIk3< �I_za�>.cDegZW_ba�ath\cwjD|�~ ~ 7 7@� ÅÂadcwmWjDh4mIXwadj��I_ba$Vzklath\cwV �fnde�cwVz[ghIXºVbh�Å���e�hIk�Å�Ö�~ ~ 7�v(� Í8[g�EiW_za�cDa(cwTWa1adh\cDjwVzatX�Vzh7cDTWau< �I_za�>.e�jDjDe¸|Ëe�hfkcwTWau<wVbhW[lkla�>�adh\cwjD|g�( �8 -( �� � �=� � ��� � ���<wiWVbi*atX >Âe�jDa³klV �*atjwath\c�prjw[^��[gcwTWatj �I_zatXºVbh1cDTIevc�cs��[�XwadilÒegjDe�cwa�[ �FXwa�cDX½Vzh^cD[ËcwTIa��I_za.egjwa4]^adilc��B[ghIa�pr[gj <ÁjDategka>[^ifatjDe�cwVz[ghIX}eghIk [^hWa�pr[gj <w�ÂjwVbcwa�> [gi*adjuevcwVz[ghfXd� SUTWa<w�ÂjwVbcwa�>�[ �¼Xwa�c�VYXÂegn�cwmIeg_b_z|ËcwTIa4Xweg��a�e^X�cwTWa �I_za4XwV( tag�~ ~ v B(� cwTIa8iIegjDeg�Ea�cwatjGifegXDXÁaok1cw[+<ÁjDate^klia>ÂVYXGe½i*[gVzh^cDadjcw[4eu< �I_ba�>�e�jDjDe¸|�ath\cwjD|g��prjD[g�3�ÂTWVYnuTËe�hr<ÁVzhW[lkla�>if[^Vbh\cDadj�ndeghBZ*a�a�9`cDjDe^n¥cwaok�~ ~ v \(� <ÁiI_b[lnu]y>tl��N(^�^�mn�adhfXÁmWjDatX(cDTIevc4[^hW_z|q[ghWaE[^ifatjÁÒevcDVb[^h}cDeg]gatX½iW_Yegnda.evc�eËcDVb�Ea ��adVbcwTIadju<ÁjDate^k1>E[gj

<Á�ÂjDV{cDa�>2~ ~O~ v(� ��pºe�iWjD[ln�aoXwXO�ÂVYXwTWVbhI��cw[4�ÂjDVbcwa�cD[�ef<wiWVbi*a�>4TIegXZfatadh}ZW_z[lnu]gaok�Zfaonde�mfXÁa�cDTWa�iIVbi*a��UegXs<ÁprmW_z_?>bl¨[gjjDe�cwTWatj�ZfaondegmIXÁa<cwTWa<yveg_bVYk�iIe�jwc4[�pUcDTWa �I_za<TIe^kjwaoegnuTWaok�cDTWa �I_baÂ_zVz��Vbc n��^VbcO�ÂVb_z_WTIe¸y^a�XwVz�ghWV �Iatk.VbcDXiWjDatklVYndeg��ath\c¢Z`|�Xwa�cwcwVzhW�1cwTIas<Á���ÐÅÂ�sSÂÌc> #*e��1Vbh

<ÁVzilÒ��ÂV �E[`kWa�> ~ ~ \ v(� ÅÂat_baoegXwa½cDTWa�_z[`nu]7Zfadpr[gjDa(�^[gVzhW�.cw[<Xw_batadi ~ ~ \ ~ � <ÁV n�[^mWh\c ><VYXÂcDTWa�h\mI��Z*adj�[gp �I_za4cDegZW_za�adh\cDjwVzatXif[^Vbh\cDVbhW��evc.cwTWa@<ÁVzhW[lkla�>I�&��p�cDTWVzX�VYX�_zatXDX�cDTIe�hcs�8[f�`cwTWath�cwTWa��gjD[gmWi�[�pM<Á�ÂjDV{cDadjuX >.��mfXsc�Z*a4a�9`ÒcwVzhIn¥c,

~ ~ \ �-� Ô iIjw[ln�aoXwX��Ue�VbcwVzhW��pr[^j�VbhWiImlc}�ÂVb_z_�jDegVzXwaqcDTWa<w�sÅ�Ì$Ô½Ä`> #feg�I� �`VzhIndaqe�iIVbi*aqndeghWhW[�cËZ*a}prmW_z_eghIkBad�Eilcs|BXwVz��mW_bcDeghWad[^mIXÁ_z|g�lhI[��E[^jwa½cwTIegh�[ghWa[gp�cwTIa #*e � X <w���ÐÅÂ�sSÂÌ >&[gj}<Á�sÅ�Ì8Ô�Äd>�XwTW[^mW_zkZ*a4Xwa�c�evc�egh\|7[ghWa(cwVz�Ea�

~ ~ � �-� <ÁiWjDad_za�>�mWhW_z[lnu]`X$cwTIa �f_ba1e�hIk@<Á�Ue�]^atX$mWia>�e�h`|iIjw[ln�aoXwXU�Ue�VbcwVzhW��pr[gjUcDTWa�iWVzifa^�( �� ), � " �� �� � � � ���SUTWa XscDjwmfn¥cwmIjwaL[�p�cwTWVYXÎiWjD[`ndatklmIjwaLatnuTW[`aoX�cDTIevcÏ[�p<ÁjDate^klia>.Vbh��Ëe�h`|<jDatXwifaon¥cuXd�~ \ ,O\-� ~�[gcwa�cDTIevcUef<Á�ÂjDVbcwadj >W�^�ÂTWVYnuT �IhIkWX$cwTfevc$cDTWadjDaegjwaUhW[��E[^jwas<wjwaoegklatjDX >�_za�pÀco�^jDatndadVzygatX¢eu<DXÁVz�ghIeg_?>

4smfXscÂVzh�ntegXwa½TWa1VYX�hW[�cÂ�E[ghWVbcw[^jwVzhW��cwTWa1jDatXwmW_{cU[�pTIVzXs<w�ÂjwVbcwa�>�[^ifatjDe�cwVz[gh��l Ô;<ÁjDategkWadj >ÎVbh¿cwTWaÎe�hIeg_b[^�g[^mIX&XwV{cDmIevcDVb[^h jDa�ÒndadVzygaoX½e tadjD[7nuTIegjDe^n¥cwatj�n�[^mWh\c(e^X�cDTWa�jDatXwmW_bc½[�pcDTWaEjwaoegkF��eghIk&cwTWVYX1VzX(cDTWaËXscue�hIkIe�jukqadhfk`ÒÉ[gpÀÒ �f_baVzhIklVYnde�cwVz[gh�� n

~ \OB�g%� SUTWaz<ÁiIVbi*a�>qXwV� daËVYX4hW[gc�e�_z_b[v��atk�cw[}�^jw[v�ÓZfadÒ|^[ghIk < %³� %8�l� �>EnuTIe�juegn�cwadjuXt�³Ô�XÂ_z[ghW�<e^Xs< %$� %OÒ�l� �>rlÉ�g�lÖo�on�VYX�hW[��gjDate�cwatj½cDTIe�h}$^�^×g�I�¼cwTWa �I_za�ÂVz_z_fhW[gc$Z*a½n�[^h`ygadjwcwaok.cw[�ef<w_zegjw�^a�> �I_zag�OSUTWVYX³VYXTIVb�^TW_b|�klatXwVzjDegZW_ba1prjD[g�:cwTWa�y\Vzad�Âi*[gVzh\c�[�p³egntn�aoXwXa �<n�VzadhInd|g�l ~�[gcwa�cDTIevc�< %³� %��`� �>1_zVb�EVbcDX³cwTWa <Á�ÂjDV{cDa�>1[ �FXwa�ci*[gVzh\cwatj4yve�_zmWag�Ë��p�cwTWaz<wjwaoegk1>B[ �FXwa�c4i*[gVzh^cDadj�VYXhI[�c$p¨egj³Z*adTWVzhIkF�\cwTIa�cwjDmWa�nd[gh\cwath\c$[�p¼cwTIaE<ÁiIVbi*a�>�Ëe¸|<Z*a � mWVbcwa4Xw�Eeg_b_ n¥�

( �� 3 � ��� � � � � � '8(��Æ�[lnu]�cwTWa <ÁVzhW[lkla�>&evpÀcDadj���egV{cDVbhI�&Vbp�hWatndatXDXwegjw|^�&SUTWVYXiWjD[ln�atkWmWjwaÂVYX$nte�_z_baok�Z\|}<ÁjDate^klia>sl��g�v�o(on,e�hfkr<Á�ÂjDV{cDadia>lÉ��(WÖ¸�mn¥�( �� �� � � �� �� � ���8( �x�hI_b[lnu]�cwTIa <wVbhI[`kWa�>�e�hIk=<Á�Ue�]^a�>qegh\|��Ue�VbcwVzhW��iWjD[�Òn�aoXwXwatXt� SUTIVzX}iIjw[ln�aoklmWjDa�VzX&nde�_z_zatkLZ`|LXwady^adjue�_�[�cDTlÒadjuXil¨atXwifaon�VYe�_z_b| <wVbiWmWc >on��¼Vbh�egkWklVbcwVz[ghqcw[3<wjwaoegkliO>Ëe�hIk<Á�ÂjDVbcwadiO>W�

(\�

Page 96: A Commentary on the Sixth Edition UNIX OS -- Lions

�������� �� �&� ���/� �9����� , �$��":�������� ���� " ����� #�3(� ��)� " �����>�:45 ��� � �:��$���)*<���(%C=6� ���C����@�3(���$�3���@'3�� � �*&�����6��" �=��)* �$�$�$��*���$���>�)* �*G� �)���>�(% @)�)*G��@�����* ��"&%�� �)� �(�:��4

� 3$�$�2%'����� ���(���:����*B�����:��1�8�� #�3�� ��*6@)��" � =8��� �$�� �C��������@'3�" ���>�(%A#:� � �0��� �� ��������%���* %A@)* &����%�3�*B�(�(4�6��� �0���7)� �)����* �$���>�)*C�* � ���(�>��% @)�)*G��@'���)*+��" %'����� ���:�

��*B�/�� ����1@'" � , ��%A#��1�����C� �" " �=6���� ������ ��� � � �����(�>��* �$���� ���/�>��* �/���$��" � � � �!@$��@)�)* ����@)��* �(�$%'�)* ��@�3'�$�$�

� � � � " �����.@)*G���(�>��* 4

� � � � � � ��� ��� � � � �A������=� �&*}���=�%���� � �A�e

Í8TIegjDe^n¥cDadjO[gjDVzadh\cwaok.i*adjDVziWTWadjue�_fklady`VYn�atX8e�jDaÂjwat_ze�cwVzygat_b|Xw_b[v� l � Öt�g�^��nuTIe�jue�adcwatjDXËi*adj�Xwatn�[^hIkan7e�hIkÏVzh`yg[^_by^anuTIegjDe^n¥cDadj Z`| nuTIegjDe^n¥cDadjÐcDjDeghIXw��VYXDXÁVz[gh [gp yve�jDVzegZW_za_zadhW�gcwT��ImIXÁmfe�_z_b|7XwTW[^jÁco�ljwaon�[gjukWXt�Ô:kWady`VzndaËTIe�hfkl_batj l egX�VbcDX�hIe��Ea7XwmW�g�^atXÁcDX n½VzX4cwTWaXw[�pÀcs�Ue�jDa�iIegjÁcU[�p�cDTWa(Vbh\cwatjÁp¨e^n�a½Zfadcs�8atadhBe�klaty\VYn�a1e�hfkcDTWa.�^adhWatjDeg_GXw|lXscDad���½��h&�gadhIadjue�_É�IcDTWa�kWady`Vznda�TIeghIkl_zadjVYX,cwTWaU[^hW_b|�iIe�jwc,[gpIcDTWaÂXÁ[gpÀcs��egjwa8�ÂTWVznuT�jDatn�[^�ghWVYXwatXºcwTWaVYklVz[^Xw|\hfn�juegXwVbaoX$[gp¢e�iIegjÁcDVzndmW_zegjÂklady`VYn�ag�Ô�XÂp¨e�j�egXUi*[^XDXwVbZW_za1[gjUjDategXw[ghfe�ZW_zag�leEXÁVzhW�^_ba�klaty\VYn�akljDVzygadj�VzX��ÂjwVbcÁcDadh�cw[�XÁatjwy^a1�Eegh`|�XwadiIegjDe�cwa4klaty`VzndatX�[gpXwVb�EVz_zegjUcs|`ifaoXd�WeghIkF�l�ÂTWatjwa�e�iIiWjw[^iWjDVze�cwag�lXwady^adjue�_FXÁmfnuTklaty`VzndatX�XwVz��mW_bcDeghWad[^mIXÁ_z|g�}SUTWa7�gjD[gmWi�[�ps<wVbh\cwatjDe^n¥cDVby^acDadjD��VzhIeg_zX >Slr�ÂVbcwT�]^ad|`Zf[\e�juk�VzhWiWmWc,e�hfk(e�XÁatjwVYe�_viWjDVzh^cDadj[^j½y`VYXÁmIeg_OklVzXwiW_Ye¸|�[gmlcDiWmlc n(nte�h*4smfXsc1ZfaËnd[\atjDndatk}�ÂVbcwTklV �<n�mW_bcs|&Vzh\cw[}e}XwVbhW�^_baËklaty`VzndaEkWjwVzygatjt�ºe^X(cwTWaËjDate^kladj�Ëe¸|�4smIkW�ga4klmWjDVzhW�ETWVzXUi*adjDmIXDe�_F[gpGcDTWa �I_zaf<scÁcs|^� n�>W�SUTWa1Xscue�hIkIe�juk�x½~���¾ klady`VYn�a½TIe�hIkW_batjDX³pr[gjUnuTIe�juegn�ÒcDadj�klaty`VzndatXÂ�Ëe�]^a�mIXwa�[�p¢cwTWa�iIjw[ln�aoklmWjDatXs<wiWmlcunA>Ëe�hfk<w�ga�cunA>��ÂTIVznuT7XÁcw[^jwa(e�hIk<jwadcwjDVbatyga�nuTIegjDe^n¥cDadjuXOVbh\cD[.e�hfkprjD[g� e4XÁcDe�hfkWe�jukEZWm��¼adj8if[`[g_É�OSUTWVYX³�ÂVz_b_*Zfa(klatXDn�jDVzZfaokVzh���[^jwa�kladcDegVb_FVzh&Í8TIe�ilcDadj�SU��adh\cs|\Ò�SUTIjwatag�SUTWau< %8Ä`%�ÖgÖ%¢atjwVziWTWatjDeg_zX8È�eghIklZ*[\[^]y>.XwTW[gmI_zk7Zfand[ghIXwmW_bcwatk pr[gj���[^jwa n�[^��iI_badcwa Vzhlpr[^jw�ËevcDVb[^h [gh cwTWaklaty`Vznda�nd[gh\cwjD[g_z_zadj�TIe�jukl�Ue�jDaBe�hfk�cwTIaqklady`VYn�atX.cDTWad��ÒXwad_zygaoXd�(8( �� � 5 �8� � " � 5 � " ���� �� . �!" �� ��SUTWVYX�kljDVzygadjÂVYXUcD[ËZfa1pr[^mWhIk�VzhBcDTWa �I_zaf<Á_zi�� nA>ul �lTWadadcDX(o(W�R(g×4n¥��Ç}mInuTÑ[�p�cDTWa�nd[g�EiW_za�9lVbcs|�[gpÂcwTWVYXEkljDVby^adj�VzXnd[gh\cDegVbhWaok<Vzh7cDTWa1iWjD[\atatklmIjwa <Á_zi*nte�hW[^ha>Elk(m(\��×on��¢SUTIVzXiWjD[ln�aoklmWjDa�VYX¢Vzh\y^[g_zygaok�Vzh�cwTWaÂiWjD[gi*adjOTfe�hIkl_zVzhW�1[�pFXÁi*a�ÒndVzeg_*nuTIegjDe^n¥cDadjuX³e�hIkËcwTWVYX�VzX�e�XwadiIegjDe�cwa�VYXDXÁmWa�prjw[^�3cwTWa[^hWa1�8a1�ÂVYXÁT�cw[ËXÁcwmIkW| �IjuXsco���hWVbcwVYe�_z_b| [ghIa��Ëe¸|ÑVb�^hW[gjDa <Á_zi*nte�hW[^ha>�Z\|ÑegXDXÁmW��ÒVzhW�qcDTIevcËe�_z_Ândeg_b_YX�mIif[^h Vbcul¨_bVzhWatXY(o(^��×I��(m(g�\�l��(m(`���onegjwa�XÁVz�EiW_z|�jwatiW_Yegn�aok Z`| XwVz��Vz_Ye�jËndeg_b_YX�mWif[^h�<Á_zif[^mlcÁÒiWmWc >zl�(^×m(^�on¥�3<Á_zi*nte�hW[^ha>�egn¥cuX�egX4e < �IhIeg_ �I_{cDadj >�pr[gjnuTIegjDe^n¥cDadjuXU�g[gVzhW�EcD[ËcwTWa�_bVzhWa�iIjwVzh\cwadj �$Tfe�hIkl_zVzhW�7n�[lkland[gh`ygatjDXwVb[^hIXt�\Xwifaon�VYe�_¼pr[^jw�Ëevc�nuTIegjDe^n¥cDadjuXd�`a�cun��

(8(< )( ��� �8� � � ��� � ��ÏTWath�e�_zVbhIa(iIjwVzh\cwadj �f_ba�VYXU[gi*adhWaokF�lcDTWa�hW[gjD�Ëe�_Fndeg_b_bÒVzhW�ËXÁa � mIadhInda(VYXUpr[^_b_z[v�8aok �

<Á[^ifatha>ElÉ�^�g�N$4n$nde�_z_YXi<w[gi*adh�Ö�>W�\�ÂTWVznuTtl ��(o#^�on³ndeg_b_YX<Á[^ifathWV >W���ÂTWVYnuT l¨�\�lÖt�4n�nte�_z_zXt�ºVzh&cDTWa<nde^XÁaE[gpUe�nuTIegjÁÒegn�cwatj4XÁi*atndVzeg_��I_zag�d<wntkladylXw�*{{�z� |�� k [gi*adha>I�7��h�cwTIa7nde^XÁa[�p�cwTIa<_bVzhWa<iIjwVzh\cwadjo�GcwTWVYX4_Yevcwcwadj4cwjue�hIXw_ze�cwaoXpl $\�\���on�cw[<Á_zi*[gi*adha>I�\ \ gOB-� SGeg]ga�cDTWaÎadjDjw[^jqa�9lVbc�VbpBatV{cDTWadj�e�hI[�cwTIadj�_bVzhWaiIjwVzh\cwadj �I_ba�VzX e�_zjwaoegkl|Ó[gi*adh��B[gj�Vbp}cwTWa _bVzhWaiIjwVzh\cwadj�VzX�hW[�c4jDate^kl|@l¨ag� ��cwTWa<i*[v��adj4VYX�[ �¢�,[gjcDTWadjDa1VzX�hW[�iIegifatjt�l[^j$cDTWa1iWjwVzh\cwatjUkWjwmW�:�^evcDa�VYX[^ifath��º[^j(cwTWaEcDad�EifatjDe�cwmWjDaEVzX(cD[`[�TIVb�^T���[gj1cDTWa[^ifatjDe�cw[^j�TfegXÂXw�ÂV{cunuTWatkBcwTIa�iWjwVzh\cwatj�[ �fÒ�_zVbhWa^� n\ \ g ~ � �`a�c�cDTWaP<w_bi�Ö^Ög� #fe��4>ËcD[}VbhIkWVzntevcwaEcDTIevc�cwTWa �I_zaVYX�[^ifath��ºcDTWa<iWjDVzh^cDadj�TIe^X4e <spr[^jw� pradatka>}nde�ifevÒZIVb_zV{cs| e�hIk _zVbhIatX<egjwa�cw[�Z*aqVzhIkladh\cDatk Z`| adVz�gT\cnuTfe�juegn¥cDadjuXd�(8(< ), � � �� �� / � <w_biºÖgÖ�>�VYX7e XÁatygadhÎ��[gjukÏXscDjwmfn¥cwmIjwaqkla��IhWaokÏZfadÒ�^VbhIhWVbhI��e�c<_bVzhWab(o(^��×I� SUTIa �IjDXÁcEcwTWjDada}��[gjukWX[gpºcDTWa�XscDjwmIn�cwmWjDa1VbhBp¨egn�c�n�[ghfXscDV{cDmlcwa�eEXscDjwmfn¥cwmIjwa[gpGcs|`i*ab<wnd_bVYXÁc >ulÉ��×g�m(4n¥� !½hI_b|7cwTWa �IjuXÁc�ad_zad�Eadh\cVYX�aA9liW_bVYn�Vbcw_z|��Ëe�hWVziWmW_YevcDatk�Vzh <Á_zi�� nA>W�ÂSUTWa�hWa�9`ccs��[�egjwaÂmIXwatkEVz�EiW_zVzndV{cD_b|EZ`|t<wiWmlcunA>4eghIkr<Á�^a�cDn�>W�� � < #feg�o>qVYX.cwTWa�pr[^mWjÁcDT at_bat��ath\c�[gp�cwTWa}XÁcwjDmIn¥cDmWjDag�SUTIa�jwat�EegVbhIVbhW��cDTWjwata1ad_zad�Eadh\cDXÂegjwa

<w�ËndnA> �Ee�9lVb�.mW�:nuTIegjDe^n¥cwatjÂn�[gmIh^c<DndntnA> n�mWjDjwath\cUnuTIegjDe^n¥cDadjÂn�[^mWh\c<w�E_zn�> �Ee�9lVb�.mW�M_zVbhWa4nd[gmWh\c

� � � SUTWa½_zVzhWa½iIjwVzh\cwadjUn�[^h\cwjD[g_z_batj8TIe^X³cs��[�jDad�^VzXÁcwatjDX8[ghcDTWa4x�~��s�Ux½�¼�� " � 5 �!" ��� �/$��2 �#0���� �'" � �� �� � � � � � � � �

�� �+�yg �`adcÎ�ÂTIadh e�h/adjDjw[^j nd[ghIklVbcwVz[gh"a�9lVYXscuX l¨XwadaegZf[vy^a�n%�� � ~ H �uV � �`K �la�c8�ÂTIadhËcDTWa�iWjDVzh^cDadj�n�[gh\cDjw[^_b_zadjOVYXjDate^kl|ËcD[�jDatndadVzyga(cwTIa�hWa�9`c�nuTIe�juegn�cwatj��� �svIHm � � T � � �`K �`a�c,cw[(e�_z_b[v� <wÄS!(~�Ìc>Â[gj`<wÌ$jÁÒjD[gj >�cw[ËndegmIXÁa�egh�Vzh\cwatjwjDmWilc,

� " � 57�!" ���� ���. �2 � 0 � ���� �'" � �� �� � � ������ 0 � � ���V{cuXÂ�4cDTWjw[^mW�gT���TI[g_YkËcwTIa1Xwady^adhBZWV{c�Ô(�IÍ8�Á��n�[lklapr[gjBcwTIa�nuTIegjDe^n¥cDadj<cD[ÑZ*a�iWjwVzh\cwaokF�MSUTWVYXBjDad�^VzXÁcwatj7VYX<Á�ÂjDVbcwa1[ghW_z|y>W�\ \ gO\-� �`a�cËcDTWa <ÁathIe�ZI_ba�Vzh^cDadjDjwmIilcDX >�ZWV{cBVbh cwTIa}_bVzhWaiIjwVzh\cwadj�XÁcDe�cwmIX�jwat�gVYXscDadj,

(o(

Page 97: A Commentary on the Sixth Edition UNIX OS -- Lions

\ \ g��(� �`athIk7e <spr[gjD�Ópradatka> l¨[gji<whWad�Ïife��ga�>on$nuTIe�juegn�Òcwatj4cw[�cwTIa7iWjDVbh\cDadjo�¢cw[&athIXwmWjwa<cwTIe�cEnuTIegjDe^n¥cDadjuX�ÂTWVYnuTEpr[g_z_b[v� �ÂVb_z_¼Xscue�jwc$[gh<e�hIad�ÏiIeg�gag� l¨Ô½X8eg_{Òjwaoegkl|�hW[�cDatkËe�Z*[vyga^�gevcOcDTWVYX$XÁcDe��^aU�8a�egjwaUVz�ghW[^jÁÒVbhI� <Á_zi*nte�hW[^ha>�e�hIk�e^XwXwmW�EVbhI�}_bVzhWaE(o(^��×BcD[}ZfaXÁVz�EiW_z| <Á_zif[^mlcwiImlcEl�)�!(Å�Ç n >I�e<Á_zi¼nde�hI[gha>�kl[`atXcwTWVzhW�\XU_bVz]ga1XÁmIiWiWjDatXDXÁVzhW�Ee�_z_FZWmlcÂcwTIa �fjDXÁcs<spr[gjD�pradaok1>�VzhÐe�XscDjwVzhW��[gpb<spr[gjD� pratatk1>^X7eghIk�<ÁhWat�_bVzhWa�>gXt�`cw[Ëe¸yg[^Vzk7��e^XscDVbhW�EiIegifatjt� n�(8( 43 ��� � 0 �2� 0 � � ����� '��SUTWVYX�iWjw[lndatklmWjDa�VYX�nte�_z_baok �ÂVbcwTÓe�nuTIe�juegn�cwatj}cw[�ZfaiWjDVzh^cDatkF�fegXUeEiIe�jue��Eadcwadjo�\ �O\ \(� <Á_zi�Ö^Ög� ndnA><VzX1e7nd[gmWh\c1[�pOcDTWaEh\mI��Z*adj([�p8nuTIegjÁÒegn�cwadjuX(��egV{cDVbhI�BcD[}Zfa<Xwadh\c�cD[�cwTWaË_zVbhIaËiWjwVzh\cwatjt���p$cDTWVzX(VYX�e�_zjwaoegkl|�_Ye�jD�ga.adhW[^mW�gT l�<wÆ�%$È��&ÔOSj>W�

(m(IÖt×on��R<wXw_zadadiO>Epr[gj1eË�ÂTWVz_ba+l¨Xw[Be^X�hW[gc�cw[�#I[`[lkcwTWa�nuTIegjDe^n¥cDadjUZWm��¼adj�i*[`[g_ n�\ ��� Q(� Í�e�_z_b<wiWmlcDn�> l¨�^×g�\�mn7cw[ÐXÁcw[gjDa�cwTIa nuTIe�juegn�cwatjVbhMe XDevpra iW_ze^n�a^�Ul SUTWaÏprmWhfn¥cwVz[gh:[�p <ÁiWmWcDnA>e�hIkBVbcDX�nd[g�EiIeghWVb[^h@<w�gadcDnA>.VYX�eE�Ëe�4s[gjUcD[giWVYn(cw[Zfa}klVYXDn�mIXDXÁaok�VzhÏÍ8Tfe�ilcDadj<SU��adh\cs|�SUTWjDadag� n ��cXÁTI[gmW_Yk�ZfaBhW[�cDatk�cwTfevc�hW[�nuTWatnu]�VzX��Ee^klaËcDTIevc

<ÁiWmWcDnA>&��e^X�XwmIndndatXDXsprmI_8VzhÑXÁcw[^jwVzhW�qcDTWa�nuTIe�juegn�Òcwatjt� l¨SUTIadjDaB�Ëe¸|�TIe¸y^a<Zfatadh hW[�XÁiIe^n�aBVbh cwTWanuTIe�juegn�cwatj8ZWm��*atjDXt� n���h�iWjuegn¥cDVznda�cDTWadjDa�XÁatad�ËX�cw[Zfa½hW[4jDateg_IiWjD[gZW_zad�3TWatjwa^�^ZWmWc�[^hWa�ndegh<��[ghIklatjt�\ ������� Å�egVzXwaqcDTWa�iIjw[ln�aoXwXw[gj7iWjwVz[gjDVbcs| Xwm2�<n�Vzadh\cw_z|Îcw[VbhITWVbZIV{cBcwTWa�Vbh\cwatjwjDmWilcuXËprjD[g� cwTWa�_bVzhWa�iWjwVzh\cwatjt�ndeg_b_W<Á_ziIXÁcDe�jwc >/e�hIk cwTWath�kWjw[^i cwTWa iWjDVz[gjDV{cs|e��\e�Vzh��(8( (� ��� � �2 ��� � ��� ' � ��ÏTWVz_za1cwTWa1_zVbhWa�iIjwVzh\cwadjUVYXUjwaoegkl|^�le�hIkB�ÂTWVz_ba1cDTWadjDa�e�jDaXÁcwVz_b_lnuTIegjDe^n¥cDadjuX�XscD[gjDatk�e¸�Ue¸|½Vzh4cDTWai<DXwe�pra$iW_Yegnda�>I�o]^adatiXwadhIkWVbhW�ËnuTIegjDe^n¥cDadjuX³cD[EcwTWa�iWjDVzh^cDadj�nd[gh\cwjD[g_z_batjt�SUTWa.iWjwaoXÁmI��iWcwVz[ghqVYX�cDTIevc(�ÂTWVz_ba�cwTWaEn�[^h^cDjw[^_b_zadj�VzXZWmIVb_YklVzhW�<mWiqe<Xwa�c½[�p³nuTIe�juegn�cwatjDX8pr[gj(eËn�[^��iI_badcwa4_zVbhIag�cDTWa <DÄM!(~½Ì >ËZWVbc1�ÂVb_z_GjDatXwa�c½p¨egXÁcwatj�cDTIe�h}cDTWaEÍ %�ndeghpratatk�nuTIe�juegn�cwatjDX$cw[EcDTWa4n�[^h^cDjw[^_b_zadjo�È�[v��ady^adj�[^hIn�a<e}iIjwVzh\c�n�|ln�_za<TIe^X�Zfatadh�VzhWVbcwVYevcwaokF�cDTWas<wÄS!(~�Ìc>�ZWVbc³�ÂVz_b_WhI[�cOZfaÂjDatXwa�c³eg�^e�Vzh4pr[^j³e(ifatjwVz[lk[gpOcwTWa.[gjukladj�[gp�Öt�^�E��Vz_z_bVYXÁaon�[^hIkWXil kladi*adhfklVbhI�B[^h�cwTWaXwifatatk�[�pGcwTWa�iIjwVzh\cwadj n¥�~�[gcwa�cDTIevc7klmIjwVzhW��cwTWVYX<XwadjDVbaoXE[�p�kWevcue�cwjue�hIXÁpradjuXd�Vzh\cwadjDjDmWilcDX��ÂVb_z_,Zfa.VbhWTIVbZW_bcwaok&eghIk}XÁ[3<Á_ziWVbh\c ><�ÂVz_b_,hW[�cZ*aE�ga�cwcwVzhW��Vbh\cw[�cDTWaËegn¥c1�ÂTWathWady^adj(cwTWar<DÄM!(~½Ì ><ZIV{cVYX�Xwa�co�Oa�9Wn�atilc�i*[^XDXÁVzZW_z|�[^hIn�aBevc4cDTWa7y^adjD|�athIk��ÂTWadhcDTWa�iWjD[`ndatXDXÁ[^j8iIjwVz[gjDV{cs|7VzXUjDatklmfn�atk�e��\e�Vzh��(8( (' ��� " � " � � ��� � '��SUTWVYX(iWjD[`ndatklmIjwa.VzX1ndeg_b_zatkqcw[�TIe�hfkl_ba�Vzh^cDadjDjwmIilcDX½prjD[g�cDTWa�_zVbhIa4iWjDVbh\cwatjt�ÂÔ½X��Eadh\cwVz[ghIatk}e�Z*[vyga^�I�E[^XÁc�i*[�cDadhlÒ

cwVYe�_ºVbh\cwatjwjDmWilcuXÂe�jDa1Vb�^hW[gjDatkBZ`|<cwTIa�iWjw[lndatXDXÁ[^jt�OSUTW[\XÁaVzh^cDadjDjwmIilcDX7�ÂTWVznuTÐegjwaqe^ndndadilcDatkÎZ`| cwTWa�Í %M�ÂVb_z_½Z*aegXDXw[`ndVze�cwaok<�ÂVbcwT�adVbcwTWatj� / � nd[g�EiW_za�cDVb[^hB[gp¢e�iWjDVbh\c�n�|lnd_ba�W[gj� � cwTWaBiWjwVzh\cwatj��g[^VbhI�}jwaoegkl|�evpÀcwatj.e}i*adjDVz[`k�kWmWjwVzhW��ÂTIVznuT�cwTIaf<w̳jDjD[gj >�ZWVbc���e^XÂXÁadc�l[gj� � � cwTWa._ze^Xsc½cwjue�hIXÁpradj�Vzh�e7XÁatjwVzatX�[�p$nuTIegjDe^n¥cwatjUcwjue�hIXÁÒpratjDX�\ �O\ Q-� �\cDegjÁcGcwjue�hIXÁpradjDjDVbhW�(nuTIe�juegn�cwatjDXFVzh\cw[½cwTWa�iWjDVbh\cDadjZIm��*atj�e��\e�Vzh \ �O\��'� ��eg]gatmWi�cwTWa�iWjD[ln�aoXwXÂ�Ue�VbcwVzhW��cw[<pradatk�nuTIegjDe^n¥ÒcDadjuXOcD[1cwTWa½iWjwVzh\cwatj³V{p¼cDTWa�h`mW��Z*adj8[�p�nuTIegjDe^n¥cwatjDX�Ue�VbcwVzhW� cw[ Z*a�Xwadh\c�VzXBadVbcwTWatj tadjD[�[gjBa�9Wegn�cw_z|

<DÆ�%8Æg�&ÔOSj>+l�(o(WÖ�(on¥�SUTWVYX<_YevcÁcDadj�n�[ghfklV{cDVb[^hÏVzXBXÁ[^�Ead�ÂTIe�c7iWm � d_zVbhW� VbhcwTfevc8VbcU�ÂVb_z_¼[ghW_z| �Z�m�o/16��k�O��/15k5 � Z*a(XDevcDVzX �Iatk��¢SUTIa�VzhlÒcwath\cwVz[gh<XwmWjwat_b|.VzXi<ÁVbp¼cwTWa�h`mW�.Zfatj$[gpFnuTfe�juegn¥cDadjuX¢VbhEcDTWa_zVzXÁc�VzX1�^a�cÁcDVbhI�B_z[v���ºXÁcDe�jwc1jwa��I_b_zVzhW�o>I�.È�[v��ady^adj½V{pY<Á_zilÒXÁcDe�jwc >(ndegjwjDVzatX,[gmlc³e1XwadjDVbaoX¢[�pIcDjDeghIXÁpradjuXG�ÂVbcwTI[gmlc³Vzh\cwadjwÒjDmWilcwVz[gh}l¨e�cU_zate^XscUZ`|z<Á_ziWVzh^c >on$cwTIa(h`mW�.ZfatjU[�pGnuTIegjDe^n¥ÒcwatjDX$n�[gmI_zk��g[1prjD[g�3e1yve�_zmWaÂ�gjDate�cwadj¢cDTIe�hz<DÆ�%8Æg�&ÔOSj>cw[�[ghIa7_zatXDX�cDTIe�h cwTWVYX��ÂV{cDTW[gmWc�cDTWVYX�cDatXÁc�atygatj.Z*adVzhW��Ëegkla^��Ô½ndnd[gjuklVbhI�g_z|<cwTIa��Ue�VbcwVzhW�ËiWjD[`ndatXDXÂ�ÂVz_b_GhW[�c�Z*ae¸�Ue�]gathWatk�mWh\cDVb_8cwTWa�_zVzXÁc.VYX.nd[g�EiW_za�cDad_z|�at�Eilcs|g��SUTWajDatXwmW_{c�nd[gmW_Yk7Z*a(prjwa � mWadh\cw_z|ËcD[EkWad_Ye¸|EcwTWa�VzhWVbcwVYevcwVz[gh�[�pcwTIa�hWaA9\cUiWjDVbh\cUn�|ln�_zag�le�hfkËTWadhfn�a½cw[.eg_b_z[v� cwTWa(iWjDVbh\cDadjcw[EjDmWh�Zfat_b[v��V{cuXÂjuevcwaokBnte�iIe^n�Vbcs|g�!½hWa�XÁ[^_bmlcDVb[^h cD[&cDTWVYXEiWjw[^ZW_zad� VYX�cw[�nuTIe�hW�^aBathlÒcwVzjDad_z|ÎcwTWa�ZWm��¼adjDVzhW� XÁcwjuevcDad�^|Ñpr[^j�_bVzhWa�iWjDVbh\cwatjDXt�MÔ_zatXDX�kljuegXÁcwVYn<nuTIeghW�gaË��[gmW_Yk�Vzh\y^[g_zygaËVzh`ygadh\cDVbhW��e}hWad�

#feg�I��<Á_zi�ÖgÖ^� � #feg�o>1XDe¸|g�\jwatiW_ze^n�VzhW�4_zVbhIatX (g×m(IÖg�4(g×m(\�1Z`|Xw[g�Ea�cDTWVbhI��_zVz]ga� +2�7�J#(,�, � ��� �-� �0M � ��K � � �<�J#(,�, � 3�+��0�-,��� 3 � � = � #!� � �J#-,�,��5&

�J#(,�, � 3�+��0�#,2�E��

e�hfk7jDadiW_YegndVbhI�._zVbhIa*(g×m(^×�Z`|� �J#(,�, � 3�+��0�#,>*�* &

���0=�=J#�� � �J#-,�,%� �0M�P8H�� &�

(8(< �� ���� �!" �� �� ��� � �SUTWVYX1VzX(cDTWaËiWjD[ln�atkWmWjwa��ÂTWVYnuT�VzX1Vzh`yg[g]^atk�egX�e�jwaoXÁmI_{c[�pGcwTWa��ÂjDVbcwa4Xw|`XÁcwat�:ndeg_b_ �

<Á�ÂjDV{cDa�>tl �^�g�g�on�ndeg_b_YX <Ájukl�Âj >I�f�ÂTIVznuT l �^�g�g�on�ndeg_b_YX<Á�ÂjDVbcwadV >W�1�ÂTWVYnuT l¨�\��(`��n�ndeg_b_YX <wntkladylXw�*{{�z� |É� kL�ÂjwVbcwa�>W��ÂTWVYnuT7cDjDeghIXw_ze�cwatXSl�$^�`���mn³cw[r<w_bi`�ÂjDV{cDa�>W�

<Á_zi`�ÂjwVbcwa�>1cDeg]gatXOcwTWa½hW[ghlÒ�h`mW_z_*nuTIegjDe^n¥cDadjuX¢[�pºe�h`mW_z_cwatjw�EVzhIevcDatkÐXÁcwjDVzhW� jDatnd[gjuklatk VzhÐcwTIa�mIXwadj�e�jDateI��e�hIk(g×

Page 98: A Commentary on the Sixth Edition UNIX OS -- Lions

iIe^XwXwatX½cDTWad� cD[ <Á_zif[^mlcwiWmWc >rlry`VYe@<w_bi¼ndeghW[ghO>on�[ghWaËevce.cwVz�Eag�SUTWa}_zVzXÁc<[�p1iWjD[ln�atkWmWjwa}nte�_z_zXE�ÂTWVYnuT _baoegkWXEcD[�cwTWaVzh`yg[lnde�cwVz[gh�[�pÂcDTWVYX.iIjw[ln�aoklmWjDa<VYX�XwVz��Vz_Ye�j4cD[qcDTIevc�pr[gj<w_bi*[gi*adha>I�MÔ <Ápr[gjD� pradatka>ÑnuTIegjDe^n¥cDadj7VYX�[gmlcDiWmlc�cw[nd_baoe�jOcDTWa½ndmWjwjDadh\c$ife��ga^�^eghIkEcwTIap<Á[^ifatha> #feg�4VzX$jwaoXÁadct�(8( � . " � �10�� � "����<w_bi`�ÂjDV{cDa�>�VzXGndeg_b_zatk([ghIaO[gj��E[gjDa,cwVz�EatXFcD[�XwadhIk1eÂXÁcwjDVbhW�[gp(nuTIegjDe^n¥cwatjDX�cw[�cDTWa}iWjDVbh\cwatjt� ��hÑcwmWjDhÎV{c<ndeg_b_YXr<Á_zilÒnte�hW[^ha>��ÂTWVznuT}nte�_z_zXY<w_bi*[gmlcDiWmlc >W�³��p³evc�egh\|Bif[^Vbh\cÂcD[\[�Ëe�h`|ÎnuTIe�juegn�cwatjDXËegjwaqXÁcw[^jwaok e¸�Ue¸|g�8cwTIa&iWjD[lndXDXË�ÂVb_z_<DXÁ_zadatia><VzhI<w_bi*[gmWcwiWmlc >W�E�`[`[ghWatj½[^j(_YevcDadj+<Á_zif[^mlcwiImlc >�ÂVz_b_½n�[gh\cDVbh`mWa^���ÂVz_z_½XÁcw[gjDa�cwTWa�nuTIe�juegn�cwadjEVzhÏe�ZWm��¼adjegjwaoeW�¼e�hIk&�ÂVb_z_,cwTWath�nte�_z_`<w_biIXÁcDegjÁc >ËcD[�XwadhIk��FV{p$i*[^XDXwV{ÒZW_zag�fe�XÁcwjDVzhW�E[�p,nuTfe�juegn¥cDadjuX8cw[�cwTWa�iIjwVzh\cwadj�nd[gh\cwjD[g_z_zadjo�

<Á_ziIXÁcDegjÁc >�VYXËndeg_b_zatkÑZ*[�cwTÎ�ÂTWathÎ��[^jwa}nuTIegjDe^n¥cDadjuXegjwa$e¸yvegVb_Ye�ZW_zaOcD[½Z*a8Xwadh\ct��eghIk��ÂTWath.egh4Vbh\cDadjDjwmWiWcºprjD[g�cDTWa�iWjDVbh\cwatjÂVzX�cue�]^adh��SUTWa��Ëe�4s[^jwVbcs|�[�p(nte�_z_zX�[^h&<Á_ziIXÁcDegjÁc >&�ÂVz_b_ÂVzh�p¨e^n¥ce^nuTWVbatygaqhI[�cwTIVbhW�f�"!(ndntegXwVb[^hIe�_z_z|IlrmfXÁmIeg_b_z|Î�ÂTWadhÐcwTWaiWjDVzh^cDadj(TIegX 4smIXÁc4n�[g�EiW_za�cDatk�e<iWjDVbh\c�n�|ln�_za�nE<Á_ziIXÁcDegjÁc >�ÂVz_b_ºZfa4egZW_ba1cD[ËXÁathIk�eE�ÂTW[g_za�XscDjwVzhW�E[�pOnuTIe�juegn�cwatjDX8cw[cDTWa�iWjDVbh\cwatj�n�[^h^cDjw[^_b_zadjo�(8( � ��� � � ��� � ��� � ���SUTWVYX1iWjD[ln�atkWmWjwa.Vbh\cDadjDiWjwadcDX1nuTIegjDe^n¥cwatjDX�ZfatVbhI��Xwadh\c1cw[cDTWa�_zVbhWa�iWjwVzh\cwatj8e�hfk.�Ëeg]ga�yve�jDVz[gmIX¢�E[lklV �fnde�cwVz[ghIXt�^VzhlÒXwadjwcwVz[ghIXÂeghIk�klad_za�cDVb[^hIXd�O��cÂcDT`mIX�prmWhIn�cwVz[ghIX�e^XÂe �I_{cDadjo�\ \O\O7@� SUTWa7Xwatn�cwVz[gh�[�p�nd[`kWaEprjw[^� TWatjwaEcD[}_bVzhWaE(^×WÖ�#VzX�n�[ghfn�adjDhWaok7�ÂVbcwT}nuTIegjDe^n¥cwatj�cwjue�hIXw_ze�cwVz[gh��ÂTWadhcwTWa4prmW_b_¢×g�7nuTIe�juegn�cwadj�Xwa�c½VzX½hW[�c(e¸y¸egVb_Ye�ZI_ba^�fe�hfkeE��$EnuTIe�juegn�cwadjÂXwa�c�VYXUVbh�mIXwag�

�`VzhIn�a½cwTWa1ndegiIe�ZIVb_zV{cDVbaoX$[gpGe.iWjwVzh\cwatj�kl[�hW[gc�mIXwmlÒe�_z_b|ÐnuTfe�hW�^a&�ÂVbcwT�cwVz��a^�(cwTWa�kla��IhWatk�yve�jDVzegZW_za<uÍ�Ô`% >3lk(m(m$^�on���mfXscËZ*a�Xwa�cË[^hIn�a�e�hIk pr[gjËeg_b_l¨e�cÂe�iIegjÁcDVzndmW_Ye�jÂVzhIXscue�_z_ze�cwVz[ghOn��SUTWa�jwmWhWÒ cDVb�Ea8cwatXÁcO[gh+lr_zi�ÖgÖ^� #feg� ��Í�Ô`%cn,n�[^mW_YkZfa1jDadiW_Yegndatk7Z\|Be.nd[g�EiWVz_badÒ cDVb�Ea(cwaoXscÂ[ghrlÉÍ�Ô`%cne�hIk.VbpfcDTWa�n�[^��iIVb_zadj¢TIe^X¢V{cuXS<wkljDmlcDTWadjuX >I�vV{pºÍ�Ô%cwmWjDhIX,[gmWcGcD[½Z*a tadjD[I�¸cDTWa8�ÂTI[g_za�Xwatn�cwVz[gh�[gpfn�[lklacw[._bVzhWaM(g×WÖ�#�n�[^mW_zk7Zfa1n�[^�EiWVb_zatk7kl[v�ÂhËcw[�hW[gcwTlÒVbhI�I�SUTWa�iIjwaoXÁath^c�n�[lkla½nd[gmW_YkËZ*a(XDe�VYk�cw[.iW_Ye�h7egTWate^kpr[gjOe(XÁVbcwmIe�cwVz[gh��ÂTWadjDaUe�h�VzhIXÁcDeg_b_YevcDVb[^h.�Ëe¸|�TIe¸y^acs�8[E[^jÂ��[^jwa�iIjwVzh\cwadjuXU[�pOklV �*atjwath\c�cs|`ifaoXd�$Ì$ygathXÁ[qcwTWatjwaBVzX�eqZIe^XÁVYn<VzhInd[ghIXwVzXÁcwathIn�|�TWatjwaBVbh�cwTWamIXwaË[�pY<uÍ�Ô%c>W�j<w�s~�Äd>}e�hIkW<wÌ8Ê^ÌUÍ�Sj>7[^h�cwTWa[ghWa}Tfe�hIkF��eghIk <DÌ$Ê\Æ��s~�Ìc>�e�hIk�<DÇqÔ�¾½Íj!(Æ�>[gh}cDTWa�[�cwTIadjo����hqp¨egn�c1XwVzhIn�a�pr[gjD�EX([gp$klV �¼adjDadh\cXÁV� daoX7egjwa�hW[�c�mWhIn�[^�E��[^hW_z| mfXÁaokÐ[gh�e XwVbhW�^_baiWjDVbh\cwatjt�IcwTWa._ze^Xsc½cs�8[BXÁTW[^mW_Yk}hW[�c½ZfaEn�[^hIXscue�h\cDXevc�e�_z_É�lZWmlc½XwTW[gmI_zkBZfa4kW|\hfe��EVznte�_z_b|BXÁadcÁcDegZW_zag�

\ \O\�g%� Æ�[v��adj,ndegXwaUe�_ziWTIe�Z*a�cDVzntX¢e�jDa$cDjDeghIXÁ_YevcDatk�Z\|1cDTWae^kWklVbcwVz[ghq[gp$e7nd[ghIXÁcDegh^co�f�ÂTIVznuTqVYX(n�[gh`y^adhWVzadh\cw_z|kWa �IhWaok�egXY<A' Ô*' �f' em>a'(\ \O\ ~ � Í8adjwcDegVbhE[�p¼cDTWa�jDad�Ëe�VzhWVzhW�4nuTIegjDe^n¥cwatjDX¢egjwa�XwifadÒndVzeg_ºnuTIegjDe^n¥cwatjDXU�ÂTIVznuT}e�jDa�iWjDVbh\cDatk�egX�eËXwVz��Vz_Ye�jnuTfe�juegn¥cDadj,�ÂV{cDTËe�h�[vygadjDiWjDVbh\cDatk��EVzh\mfXOXÁVz�gh��gag� �I�

<��>+l�(o(m(g×4n8VzXUiWjDVzh^cDatk�egXY<�dÒ > \ �OQ �-� SUTWab<DXÁVz�EVb_zVzegj >ËnuTfe�juegn¥cDadj�VYX�[^mlcwiImlc½y`VYe<eËjDa�ÒndmWjuXÁVzyga&nte�_z_�[^h <Á_zi*nte�hW[^ha>W�Â�ÂTWVYnuTÏ�ÂVz_b_(Vbhfn�jDa�Ò�Eath^cp<w_biºÖgÖg� ndntnA>.Z`|<[ghWa�e^XÂe�XwVYkla�a �¼atn�c�\ �Z�yQ-� Ä�aon�jDad�Eadh\c½cwTWa�n�mWjDjwath\c(nuTIegjDe^n¥cwatj�n�[^mWh\c�lrpr[gjcDTWaËXweg�Ea.a��*aon¥c4egX1e@<ÁZIe^nu]qXÁiIe^n�a�>7nuTIegjDe^n¥cwatj neghIk��b�z�\ �Z� �'� %³jDadiIegjwa�cw[Ë[^mlcwiWmWc�e.�EVzh`mIX�XwVb�^h \ �Z�1g%� SUTWa}<wXw�ÂV{cunuTa>7XÁcDe�cwad�Eath^c�Z*ad�^VbhWhIVbhW��TWatjwa�a�9`ÒcDadhIkIXqcD[ _zVbhWa (g×^�m#W� Í8atjÁcue�Vzh nuTIe�juegn�cwadjuX�VzhlÒy^[g_zygaokqVzh�y^adjwcwVYnde�_OeghIk&TI[gjDV( t[gh\cDeg_,XwiIegndVbhI��egjwa�^Vby^adh�XÁi*atndVzeg_*Vzh\cwatjwiWjDa�cuevcDVb[^hIX$�ÂVbcwT�klat_ze¸|^atk<e^n¥ÒcDVb[^hIX�\ �Z� ~ � )W[^j�eÑTW[^jwV� d[^h^cue�_�cDe�Z nuTIegjDe^n¥cwatjt��jw[^mWhIkÏcDTWandmWjDjwath^cUnuTIe�juegn�cwatj$n�[^mWh\c8mWi7cw[.cwTWa½hWa�9`cU��mW_bcwVbÒiI_baË[gp8adVz�gT\co�<Ä�[�hW[gc4[gmlcDiWmlc�e�h`|qZI_zeghW]&nuTIegjÁÒe^n¥cDadjuXUVb�E�EatklVYevcDad_z| \ � ,Z�'� )W[^j�e <spr[^jw� pradatka>}[gjf<whWad� _zVbhWa�>}nuTIe�juegn�cwatjt�Vbp �

l eon,cDTWaÂiWjDVbh\cDadj$kl[`aoXOhW[�c³Tfe¸ygaÂeu<ÁiIeg�gaUjDatXÁcw[gjDa�>nte�iIegZWVz_bVbcs| l[gjl¨ZOn�cDTWa4n�mWjDjDadh\c�_zVzhWa�VzX�hW[�cÂad�Eilcs| W[^jl n�nÂXw[g�Ea�_zVbhIatXÂTIe¸y^a1Zfatadhqn�[^�EiW_badcwaok}XÁVzhIn�a1cDTWa_YegXÁcp<spr[^jw� pratatk1>ËnuTfe�juegn¥cDadjo�gcDTWadh��z�b�

\ � , g%� jwaoXÁadcs<Á_zi�ÖgÖ^� �Ëndn�>4cD[ dadjD[2\ � ,Ov-� ��hIn�jDad�Eath^cUcDTWa4n�[^��iI_badcwatk�_zVbhIa1nd[gmWh\c,\ � , ~ � Í8[gh`ygatjÁc4e <whWad�3_zVbhWa�>qnuTIegjDe^n¥cwatj1cw[&e <Ápr[gjD�pratatk1>�Vbp½XÁm#�ËndVbath\c�_zVbhIatX�TIe¸ygaBZfatadh n�[g�EiW_za�cDatk[^hÏcwTIa�n�mIjwjDadh\c7iIeg�ga^��e�hIkÏcwTWa�iWjwVzh\cwatj7TIe^XBe

<Ápr[gjD�?pradaok1>EndegiIe�ZWVz_zV{cs| \ � ,��-� !½mlcwiImlc<cwTIa�nuTIegjDe^n¥cwatjt�Ue�hfkÎV{p��UegX<e <Ápr[gjD�pratatk1>I�WjDatXwa�cÂh`mW��Z*adjÂ[gp¢nd[g�EiW_za�cwaok7_zVzhWatX tadjD[2Ì�9Weg��VzhIe�cwVz[gh7[gpGcDTWVYX�n�[lkla1�ÂVz_b_ºXwTW[v�ÏcDTIevc �� / � Ô�h`|(XÁcwjDVbhI�Â[�pR<spr[^jw� pradaok1>gXº[gje<whWad��_zVbhWa�>gXF�ÂTIVznuTZ*ad�^VbhfXq�ÂVbcwT¿e <Ápr[gjD� pratatk1>I���ÂVz_b_É��Vbp<XÁath^c&cw[e�iIjwVzh\cwadj��ÂVbcwT <Ápr[gjD� pratatk1>}nte�iIegZWVb_zVbcs|g�ºZ*aËjDa�ÒkWmIn�aok7cD[<eEXÁVzhW�g_zau<spr[^jw�?pratatk1>2� � Ô <spr[^jw� pratatk1>�nuTIegjDe^n¥cDadjOXÁath\c,cD[4e(iWjwVzh\cwatjO�ÂV{cDTlÒ[^mlcËcwTIa <spr[gjD� pratatk1>�ndegiIe�ZIVb_zV{cs|^�8�ÂVz_z_�ndegmIXÁa}ehIad�¿_zVzhWa�cw[�ZfaËXÁcDegjÁcDatkqZImlc��ÂVb_z_OZfaËifegXDXÁaokq[gh[gcwTWatjw�ÂVYXwa(�ÂVbcwTI[gmlc�nd[g�E�Eadh\ct�

×^�

Page 99: A Commentary on the Sixth Edition UNIX OS -- Lions

\ �OBO7@� )W[^jI<DndegjwjDVzeg�ga�jDa�cDmWjDha>gXt� /1��� �ËhW[�cDag�}<spr[gjD�pradaok1>gXGe�hIkf<whWad��_zVbhIa�>gXt�¸jwaoXÁadc�cwTIa8n�mIjwjDadh\cGnuTIegjÁÒegn�cwadj}nd[gmWh\c�cw[ datjw[ [gj�atVb�^T^co�(kWadi*adhIklVzhW�Ï[^h<Á�s~½Ä`>I�We�hIkBjwadcwmWjDh

\ �a7 �(� )W[^j�e�_z_F[�cDTWadj�nuTIegjDe^n¥cDadjuX½�z�z�\ � gOQ(� ��pqe XÁcwjDVbhW� [gp <ÁZIe^nu]`XwiIe^n�a�>^X lrjDate�_7[gj nd[ghlÒcwjDVby^atkanºe�hIk �¸[gjd<wnte�jDjwVYe��^aOjwadcwmWjDhIX >ÂTIe^XGZ*adath�jDa�Òn�atVby^atkF�W[^mlcwiImlc½eËXwVbhW�^_baf<DndegjwjDVzeg�ga½jwadcwmWjDha>Ëe�hfkjwaoXÁadcUcwTWa��ËeN9lVz��mW�/nuTIe�juegn�cwadjUn�[^mWh\cÂcw[ datjw[ \ � ga7@� %³jD[vy`VzkWatk cDTWa n�[gmIh^cÐkl[`aoXÑhI[�cÏa�9Wn�atatkMcwTWa�ËeN9lVb�.mW� _zVbhIa}_bathW��cDT��8[^mlcwiImlc<ZW_Ye�hW] nuTIe�juegn�ÒcwatjDXGcw[(ZWjDVbhI�½cDTWaU�ËeN9lVb�.mW� nuTIegjDe^n¥cwatj,nd[gmWh\c¢cw[cwTWaBn�mWjDjwath\c�nuTIe�juegn�cwadj4nd[gmWh\co�rlk%¢adjDTIe�ifX1cwTWaoXÁacs�8[½yve�jDVzegZW_baoX,�8[^mW_zk�ZfaU�E[gjDaUegndndmWjuevcwat_b|�nte�_z_baokcwTWa+<we^n¥cDmIe�_FnuTIegjDe^n¥cwatj8nd[gmWh\c >.e�hIk7cwTIa <w_b[^�gVYnde�_nuTIe�juegn�cwatj�nd[gmWh\c >I� n%\ � g��(� !½mlcDiWmlcÂcwTIa4egn¥cDmIe�_�nuTfe�juegn¥cDadjo�(8( �� � �8�/" ��� �� � �� ������ � � 0�� � � �#"����

��cE�ÂVb_z_UZfa�[gZfXÁatjwy^atk�cDTIevcEZIegnu]lXwiIegndatX4pr[gj�[vygadjDiWjDVbh\cwÒVzhW��[gjEmWhIkWadjuXwnd[gjDVbhW��nuTIe�juegn�cwatjDX.Vbh\cDjw[lklmInda}XÁatiIe�juevcDaiWjDVzh^c�nd|ln�_zatXt�Ie�hIk��ÂTWatjwa(cDTWatXwa1prate�cwmWjDatX�egjwa1Vzh}TWate¸y`|mIXwag�`cDTWa1a �¼atn�cwVzyga([gmlcDiWmlc�juevcwa([�pºcwTWa1iWjDVbh\cDadjU�Ëe¸|ËZfakljuegXÁcwVYndeg_b_z|}jDatklmIndatkF�7��p8cDTWVzX4VzX4nd[ghIXwVYkladjDatk�e}XÁatjwVz[gmIXiWjD[gZI_bat���s<w_bi¼ndeghW[ghO>�n�[gmI_zkÏZ*a&jDad�ÂjDVbcÁcwathÎcw[�athIXwmWjwacDTIevc7hI[���[^jwa�cDTIe�hÎcs��[�iWjDVbh\c7nd|`nd_baoX<e�jDa}mIXwatkÎi*adj_zVbhIa�Vbh}XwmInuT�ntegXwatXt�(8( ��8� 5 ) � �8� 5 � �� � � � � � ���� 570 ��� �

. �!" �� ��

SUTWVYXºkWjwVzygatj�VzX�cw[�Z*aOpr[^mWhIk1Vzh�cwTWa��I_bai<Ái¼n�� nA>Â[^h��lTWadadcDX(^�W�q(\�`� ��c7VzX7XÁVz�EiW_batjËcwTfe�h cwTWa&_bVzhWa}iWjDVbh\cDadj7kljDVzygadjVzh�cwTIe�c�cwTIadjDa�VzXÂjD[ËjD[gmlcDVbhWa4eghIe�_z[g�^[gmIX8cD[P<Á_zi*nte�hW[^ha>W�È�[v�8atygadjºV{c,VzXG�E[gjDa$n�[^��iI_bVYnde�cwatk4Vbh�cDTIevcGcwTWatjwa8VzXGZ*[�cwTegh<VbhIiWmlc�e�hIkBe�h<[^mlcwiImlcUkWady`Vznda½�ÂTIVznuT7nte�hBZfa1XÁVz��mI_{Òcue�hWat[gmIXw_b|Be�hIkBVbhfkladi*adhIkWadh\cw_z|Be^n¥cwVzyga^�Ô klatXDn�jDVzilcwVz[gh�[�p³cDTWaE[gi*adjuevcwVz[gh&[�p$cDTWVYX(kWady`VzndaEVzXVzhIn�VzmIklaok�Vbh�cwTIa�kl[ln�mW�Eadh\c*<DSUTWaÂx�~���¾Ï� �o!Ð�`|lXÁcwat�Y>Z`| Ä��(ÅÂV{cunuTWVzag� Í8adjwcDegVbh Xwifaon�VYe�_�pratevcDmWjDatXq�Ëe¸|�ZfahW[gcwaok �� �� !½hW_z|�[^hWa�iIjw[ln�aoXwX$�Ëe¸|.[^ifathËcwTWa �I_za�pr[^j8jDate^klVbhI�evc�e.cwVz�Eag�IZImlcÂcwTWatjwa�VYXUhW[Ë_zVb�EVbc�[gh�cwTIa�hW��Z*adj[�p,�ÂjwVbcwatjDX�� ,�� SUTWVYX8jD[gmWcwVzhWa�iIe¸|lX8e4_zV{cwcw_za½�E[gjDa½e�cÁcDadh\cwVz[ghËcD[�atjÁÒjw[^jºn�[^hIklVbcwVz[ghIX�cwTIegh�cwTIa8_zVbhIa$iWjDVbh\cDadjGkWjwVzygatjt�oZWmlccwTWa(cDjwaoevcw�Eath^c�VYXÂXÁcwVz_b_�hI[�c�a�9lTIegmIXÁcwVzyga�� B � <ÁiIe^XwXDnA>�l�(^�g×^�on�]`hW[v��X,TW[v� �Eegh`|4nuTIe�juegn�cwadjuX,e�jDajwa � mWVbjDatk e�hIk�jwadcwmWjDhIX�e hWad�\evcwVzyga�yve�_zVba��ÂTWadh

<ÁathW[gmW�^Ta>4VYXÂjDate^nuTWatk�

� 7 � <Ái¼ndn�_z[^Xwa�>�VzXÂnte�jDa�prmW_*cD[ #fmIXÁT�[gmWcUegh\|ËjDad�ËegVbhWVzhW�nuTfe�juegn¥cDadjuX³Vzh7cDTWa1VbhIiWmlc � mWadmWa1Vbp,eghIk<[^hW_b|ËVbpGVbcZ*ad_zVzadygaoX�cwTWa4kWady`Vznda���e^X�[gi*adhWaok7pr[^jÂVbhIiWmlct�

×WÖ

Page 100: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � � � � ��� ��� � ) �*� � � �A�����m��¼adjDVbhI�}pr[gj�nuTIe�juegn�cwadj4Xwi*atn�VYe�_�klady`VYn�aoX�VzX.iWjD[vy`Vzklaoky`VYe½e(XÁadc,[gpIpr[^mWj¢�8[^jDk�ZI_b[lnu]lXd�vaoegnuT.[�pf�ÂTIVznuT.iWjw[vy`VYklatXXÁcw[^jDeg�gaËpr[^j�XwV:9�nuTIegjDe^n¥cDadjuXd�&SUTIaBiWjD[�cD[�cs|`i*a7XscD[gjue��^aZW_z[lnu]EVzX�<wndZW_b[lnu]y>plk(WÖA$\�on¢�ÂTIVznuT<VzhInd[gjDif[^jDe�cwatX8e4��[gjuki*[gVzh\cwadjplrcw[qe�XwVb�EVz_zegj1XÁcwjDmIn�cwmWjDa�n1eg_b[^hW�B�ÂVbcwT�cDTWa<XÁV 9nuTIegjDe^n¥cDadjuXd��\cDjwmIn�cwmWjDatX½[�pOcs|`i*a <Dn�_zVzXÁc >tlÉ�v×^�m(4n��ÂTWVznuT�n�[gh\cue�VzheÑnuTIe�juegn�cwadjBn�[gmIh^cDadj�iW_zmIXBe TWate^kÐe�hfkÏcDegVb_(i*[gVzh^cDadjegjwa�mIXwatkLegX <ÁTWaoegklatjDX >�pr[^j}_bVYXÁcDX�[�p�ZW_z[`nu]lX�[�p.cs|`ifa<Dn�ZW_z[lnu]F>I�

<wndZW_z[`nu]y>^XF�ÂTWVYnuT�e�jDa³hW[gcGVzh�n�mWjDjDadh\cºmIXwa8egjwa³_zVzhW]gaoky`VYe1cwTWatVbj�TWaoegkËi*[gVzh\cwadjuX³Vzh\cw[�e�_bVYXÁc8�ÂTW[\XÁa�TIategkEVYX$cwTWai*[gVzh\cwadj�<wn�prjwatad_zVzXÁc >slk#WÖA$\×on��GSUTWa�TIategkEi*[gVzh\cwatj³pr[gj³cwTWa_YegXÁcÂad_zad�Eadh\c�[�pGcwTWa�_zVYXsc�TIe^X�cwTWa�yveg_bmWaf<D~�x½ÆºÆ�>I�Ô _zVzXÁc�[gpd<Dn�ZW_z[lnu]F>^X�iWjw[vy`VYklatXÂXÁcw[^jDeg�ga½pr[gj�eE_zVYXsc�[gpnuTIegjDe^n¥cDadjuXd�1SUTWa�iWjw[lndatklmWjDa <wiWmlcunA><�Ëe¸|�Z*a�mfXÁaok}cw[e^kWk�e½nuTIe�juegn�cwadjºcw[½cwTWa�cue�Vz_\[gpfXwmInuT.e�_bVYXsco�ge�hfkb<Á�^a�cunA>W�cD[�jDad�E[vy^a(eEnuTIegjDe^n¥cwatj�prjw[^�?cwTWa�TIategk�[gp,XwmInuT�eE_zVYXsco�),Vb�^mWjDatXO��#I�bÖ8cwTWjD[gmI�gT��m#W� $�Vz_b_zmIXÁcwjuevcDa8cDTWaÂklady^ad_z[gilÒ�Eadh\c�[gp,eE_zVzXÁc�egXÂnuTIegjDe^n¥cwatjDXUegjwa1klad_za�cDatk�e�hfk�e^kWklaokF�

������

���

� �

����������� � � �

��

� "��'0=� (8,< ��

������

���

� � � ���

� �

�������� � � � �

���

� "��'0=� (8,< )(

��hWVbcwVYe�_z_b|7cwTWa1_zVzXÁcÂVzXÂe^XwXwmW�Eatk7cw[Ënd[gh\cDegVbh7cwTWa(pr[gmIjÁÒcDadadh�nuTIe�juegn�cwadjuX}<Áadpr�gTWV 4s]`_b�EhW[^i � j >W� ~�[gcwaqcDTIevc7cwTWaTWaoegk}eghIk�cDegVb_Gif[^Vbh\cwatjDX�if[^Vbh\c�cD[ � ��/y�N/1�m��24�N6 �½��p¢cwTWa�IjuXÁc�nuTIe�juegn�cwadjo�j<Áa�>W��VYX�jDad�E[vygaokqZ`| <w�gadcDnA>I�¼cwTWaBXÁVbcÁÒmIe�cwVz[gh}i*[gjwcwjue¸|gaokBVzh ),Vz�gmWjDa.��#I�bÖ4nuTfe�hW�^atXUcD[<cwTfevc½[gp

),Vb�^mWjDaË�m#W� �l�7SUTIa<nuTIe�juegn�cwadj�nd[gmWh\c4TIe^X�Zfatadh�klaon�jDa�Ò�Eadh\cwaokEe�hIk�cDTWa�TWaoegk�if[^Vbh\cDadj³TIe^XOZ*adadh<e^klyve�hIndatk�Z`|[ghIa1nuTfe�juegn¥cDadj�if[\XÁVbcwVz[ghº���p³eEprmWjwcwTWatj�nuTIe�juegn�cwatjt�R<Áp >W�fVzX�jwat��[vy^atk7prjw[^�:cDTWaTWaoegk<[gpºcDTWa1_bVYXsco�`cwTWa�XwV{cDmIevcDVb[^hBZ*atnd[g�EatXUe^X8Vzhu)GVz�gmIjwa��#I� #I��SUTIa7nuTIe�juegn�cwatj4n�[gmIh^c.TIegX�Z*adath klaon�jDad�Eadh\cwaok�cwTIa �IjuXscp<Dn�ZW_z[lnu]F>�hW[Ë_z[ghI�gadj�nd[gh\cDegVbhfX�e�h`|<mIXwa�prmI_ºVzhlÒpr[gjD�ËevcDVb[^h�eghIk�TIegXOZ*adathEjwadcwmWjDhWatk.cD[f<wn¥prjDadat_bVYXÁc > ^e�hIkcwTIaËTWate^k&i*[gVzh\cwadj�hW[v�¿i*[gVzh\cDX1cD[�cwTWa �IjuXÁc�nuTfe�juegn¥cDadjVzhBcDTWa4Xwatn�[^hIk@<wn�ZI_b[lnu]y>W�

������

���

��

�������� � � �

���

� "�� 0 � (8,< -,

SUTWa � mIatXÁcwVz[ghqhW[v� i*[^XwatX½VbcDXwad_bp �E<ÁTI[v�LVYX½cwTWaEklVbpÀÒpradjDadhfn�a�Z*a�cs��adadh�cDTWa �IjuXÁc½e�hIk}Xwatnd[ghIk�XwV{cDmIevcDVb[^hIX�kWa�Òcwaon¥cDatk}Xw[EcwTIe�cÂcwTWa�e^n¥cDVb[^hBcue�]^adh�VzX�e�_z��e¸|lXÂe�iIiWjw[^iWjDV{ÒevcDa %�> �SUTWaqe�hfXÁ��adjflrVbp1|g[gm TIe¸y^aBhW[gc7e�_zjwaoegkl|��^mWatXDXwatkanVzh\y^[g_zygaoX³_z[\[^]`_bhW��evc�cwTWa1yve�_zmWa([�p�cDTWa1if[^Vbh\cDadjÂegkWkWjwaoXwX�E[lklmW_z[ (I�"�`VzhIn�a�klVzy`VzXwVz[gh Z`|ÐatVb�^T\c�VYX�ate^XÁVz_b|Ïi*adjwÒpr[gjD�EatkÑ[ghÎe�ZWVbhfe�jD| n�[^��iImlcwatjt�$cwTWa}jDate^XÁ[^h�pr[gjEcDTWanuTW[^Vzndaq[�p4XwV:9ÐnuTIegjDe^n¥cwatjDXEi*adj <wndZW_z[`nu]y>�XwTW[gmI_zkÏhI[v�e�_YXw[.Z*a4e�iWife�jDadh\ct�SUTWa7e^kWklVbcwVz[gh�[�pÂe}nuTIe�juegn�cwatj½cD[�cwTWa7_bVYXsc4VYX�Vz_b_zmIXÁÒcwjuevcDatk�Vzh�cwTWa�nuTIe�hI�ga�Z*a�cs��adadhb),Vz�gmWjDa.�m#W� #Ëe�hIkf),Vz��ÒmWjDa4��#W� $I�

������

���

��

��

�������� � � �

���

� "�� 0 � (8,< 43

�`VzhIn�a.cwTWaE_YegXÁc+<Dn�ZW_z[lnu]y>Ë_bh}),Vb�^mWjwaË��#I� #<��e^X�prmI_b_É�e�hWad� [^hWaETIegX�Z*adath�[gZlcue�VzhWatk�prjD[g� <Dn¥prjDadat_bVYXsc >�e�hIk×\�

Page 101: A Commentary on the Sixth Edition UNIX OS -- Lions

_zVbhI]gatkLVzh\cw[ÏcDTWa�_zVzXÁcq[�pz<wndZW_z[`nu]y>^Xd� SUTIa nuTIe�juegn�cwatjnd[gmWh\cËe�hIk�cDe�Vz_Âi*[gVzh^cDadj�TIe¸yga�Z*adadh egk#4smfXscDatk e�iWiWjD[�ÒiWjDVYevcwat_b|^�(8, �� �1" � "�� � � (8, 3 �SUTWVYXqiIjw[ln�aoklmWjDag�4�ÂTIVznuT VYX&nte�_z_baok [ghInda�Z`| <w�EegVbhO>lÁÖt�WÖ�#on��$_zVbhW]lX�cDTWaqXÁadcË[�p(nuTfe�juegn¥cDadjEZWm��¼adjuXEVzh^cD[�cwTWaprjDadaU_zVzXÁct��<wn¥prjDadat_bVYXÁc >W�^e�hIkEn�[^mWh\cDX,cDTWaÂh`mW��Z*adjO[gp¼nuTIegjÁÒe^n¥cwatj�klady`VYn�a(cs|`ifaoXd�\�,aB �(� <wntn�ia>�VYXUcwTIa4egkWkljDatXDXU[�p,cwTIa �IjDXÁc���[gjuk7Vzh�cwTWae�jDjDe¸|r<Dn¥prjDada�>+l�(IÖA$\�on�\�,17�Q(� ÅÂ[^mWhIk�<wntn�ia>�mWiÏcw[�cwTWa�hWa�9`c7TWVz�gTIatXÁcB��mI_{ÒcwVziW_zaq[�p�adVz�gT\co��e�hIkÎ�Ëe�jD] [gmlc3<Dn�ZW_z[lnu]y>�XÁV� daokiWVzatn�aoXd�*cue�]`VbhI��nte�jDa�hW[gc(cD[BaA9Wn�adaok}cDTWa.Z*[gmIhIk`Òe�jD|Ë[�pM<wn�prjwata�>W�

~�[gcwag�¢��h��gathWadjue�_*cDTWadjDa1�ÂVb_z_�Z*a+<D~(Í�ƺ�Á�lS��qÖ�>lrjuevcDTWadj�cwTfe�h <w~1Í�Æ��Á�lSj>4n$ZI_b[lnu]lXÂXÁ[Ëkla��IhWaok�

\�,17���� �`adc�cwTIa �IjuXsc���[gjuk�[�pUcDTWaP<wndZW_z[`nu]y>�cD[qif[^Vbh\ccw[�cwTIa4n�mWjDjwath\cUTIategkB[�p,cwTIa1prjwata(_zVYXsco�~�[gcwaqcDTIevc <wn hIa�9`c > VzX�kla �fhWatkÏ[^hÐ_zVbhWa}(WÖ�$IÖg�e�hIk3cDTIevcÑcwTWa�VbhIV{cDVzeg_�yveg_bmWa [�p <wn�prjwatad_zVzXÁc > VzX<w~½x�ƺÆ�>W�

\�,17 ,-� x�i¼kWe�cwau<wn�prjwatad_zVzXÁc >�cw[�if[^Vbh\cUcw[�cDTWa1hWad��TWate^k[�pGcwTWa�_zVzXÁc�\�,17 7@� Í8[gmIh^c,cwTIa�h`mW�.Zfatj¢[�p*nuTfe�juegn¥cDadj,klady`VYn�a�cs|`ifaoXd�x�i*[ghÑjwadpradjDadhInda<cw[W<wntkladylXw�e>q[^hÑ�`TWata�cs$^�I�OV{c�ÂVb_z_FZ*a�XÁatadhBcwTIe�cp<ÁhInuTIjDklatyy>��ÂVz_b_ºZfa4Xwa�cÂcD[�Öo�W��ÂTWadjDate^X.e��E[gjDa�egiWiWjD[giWjDVYevcwaByve�_zmWaB��[gmI_zk ZfaÖt�I�(8, -( �� � ��� �8, �SUTWVYXÂiWjD[ln�aoklmWjDa½VYX�ndeg_b_zatkBZ`|

+�� � � 4 N�N ) � (0����(/��(��$� � � (���:������� � � � (0� � �'� #8� �>=��0� � (0:�(�('�N�N � N ��� N � ($�����'� #8��� N ��� N � (0F8,��8�N�N ��=���� � ($�����8� �J#8� N ��� N � ( � F8,��#8�����0���= � (0:�F�L'�

�ÂVbcwTÏe�XÁVzhW�g_za}e�jD�gmW�Eath^cE�ÂTWVYnuTÑVYX�cwTIa�e^kWkljDatXDX�[�p(e<Dn�_zVzXÁc >EXÁcwjDmIn¥cDmWjwa^�Q �OB���� Í8[gi`|�cwTWa³ife�jue��Ea�cDadj¼cw[�jtÖ³eghIk1Xwe¸y^aGcDTWa³VzhWVbcwVYe�_iWjD[`ndatXDXÁ[^j�XscuevcDmIX���[gjuk}e�hfk�y¸eg_bmIa�[�p³j¥�E[^h�cwTWaXscuegnu] Q �OBO7@� �`adc�cwTWaÏiWjD[ln�aoXwXw[gj�iWjDVb[^jwVbcs| cD[ �fyga�lrTIVb�^TWadjcwTIegh�cwTWa4Vzh\cwatjwjDmWilc�iIjwVz[gjDV{cs|7[�p³eËnuTIe�juegn�cwatj�kla�Òy`Vznda�n�Q �OB v(� joÖ�if[^Vbh\cuX$cD[4cDTWa �fjDXÁc8��[gjukE[�pGe <wnd_bVYXsc >4XÁcwjDmIn¥ÒcwmWjDablrVÉ� ag�7e}nuTIegjDe^n¥cDadj�n�[^mWh\c n¥��Ç}[vyga�cDTWa<XÁaon¥Ò[ghIk���[gjuk&[gp$cwTIVzX4XÁcwjDmIn�cwmWjDaflrVÉ� a^�7e�if[^Vbh\cwatj�cw[cwTWa1TWaoegk�nuTIegjDe^n¥cwatj n³cw[Ej¥�&

Q �OB ~ � ��plcwTWa8_bVYXÁcGVYXºat��iWcs|Yl¨TWate^k�i*[gVzh^cDadjGVzX`<w~½x�ƺÆ�>on�^[�cw[E_bVzhWa4�^×g�WÖ�Q �OB \-� Ç}[vyga,cDTWa³TWaoegk1nuTIe�juegn�cwatjfcD[�ju��eghIk1VzhIn�jDad�Eadh\cj¥��egXÂeEXwVzkla�a��*aon¥c,Q �OB �-� ÇqegXw]EjD�4cw[��gadc8jDVzk7[�pGegh\|EaA9\cDadhIkWatk<hIad�^e�cwVzygaXwVz�gh Q �a7�Q-� �\cw[^jwa1cDTWa4mWi¼kWe�cwatk�TIategk�i*[gVzh\cwatj�ZIegnu]BVbh�cDTWa

<Dn�_zVzXÁc >�XÁcwjDmIn¥cDmWjDag� l¨SUTWVYXË�Ëe¸|�TIe¸y^a7cD[�Z*aqe�_bÒcDadjDatk�_Yevcwatjt� n�Q �a7��'� Ä�aon�jDad�Eadh\c³cDTWa½nuTfe�juegn¥cDadj³nd[gmWh\c8eghIkËVbpFcwTWVYX³VYXXÁcwVz_z_�if[\XÁVbcwVzyga^�l�g[�cw[Ë_zVzhWa��g×�$l� Q �a7 ,%� SUTWa�_zVzXÁc8VYX³hI[v� at�Eilcs|g�`XÁ[�jwaoXÁadc³cwTWa�TWate^kËe�hIkcue�Vz_*nuTfe�juegn¥cDadjOi*[gVzh\cwadjuXOcD[b<w~½x�ÆGÆ�>W�`�([�cw[�_bVzhWa�^×^�^�&Q �a7 ~ � Æ�[`[g]�evc8cwTWa�cwTWjDada�_zate^Xsc�XÁVz�ghWV �fnte�h\c$ZWVbcDX8[�pFj¥�l���pfcwTWaoXÁaUe�jDa³hW[^hlÒ dadjD[I�¸ZWjue�hfnuT�cw[(_bVzhWaU�g×\�^�Ml e�hIkjDa�cDmWjDh7cD[EcwTWa4nte�_z_bVzhW�Ejw[^mlcwVzhWa(pr[gjwcwT`�ÂVbcwTOn%Q �a7 �-� Ô�cºcDTWVzX,i*[gVzh\ct�vj¥�UVzXGi*[gVzh^cDVbhI�(e�cºcwTIa$hWaA9\cOnuTIegjÁÒe^n¥cDadjOi*[^XwV{cDVb[^h.Z*ad|^[ghIk�cwTWaY<Dn�ZW_z[lnu]F>I�GÇ}[vy^a$cDTWayveg_bmWa4XÁcw[^jwaok�Vbh�cwTIa �IjuXsc���[gjuk7[gpGcDTWab<Dn�ZW_z[lnu]F>

l¨V � ag��evc�ju� �r(on��O�ÂTWVYnuT�VzX�cwTIa�e^kWkljDatXDX4[�pÂcDTWahIa�9`cf<wn�ZI_b[lnu]y>ËVzh&cDTWa._zVYXsc1cw[BcwTIa�TIategk&if[^Vbh\cDadjVzh<cDTWau<wnd_bVYXsc >W�ql¨~�[�cwa½cwTfevcÂjtÖ½��e^X³VzhIn�jDad�Eath^cDatke^XÂeEXÁVYkla�a �¼atn�c�evcÂ_zVbhWa4�^×�$fÖ�n �Q � gOQ-� SUTWa�_ze^Xsc1yve�_zmWa�XÁcw[^jwaokqhWatatkWX½cD[BVzhIn�jDad�Eath^cDatkZ`|7cs�8[ulÉÍ8[^hIXÁmI_{c),Vz�gmWjDatX��m#W� ��eghIk}��#W� #on%Q � g ,%� Ô�cGcDTWVYXGi*[gVzh\ct��e <wndZW_b[lnu]y>�kladcwatjw�EVzhWatk�Z\|1j¥�ÂVYXcD[�Z*a�jDa�cDmWjwhIatk�cw[ <wn¥prjDadat_bVYXÁc >W�¢Ì³VbcwTIadj$j¥�(i*[gVzh^cuXVzh\cw[�cwTIa <Dn�ZW_z[lnu]y>q[gj 4smIXÁcËZfat|g[ghfk Vbct� Ä�aon�jDa�Ò�Eath^cGju�UXw[UcwTIe�cºj¥���ÂVb_z_gi*[gVzh\cºVbh\cD[ÂcwTWai<wn�ZI_b[lnu]y> Q � gOB-� ÅÂatXwa�c�cwTIa7cDTWjwataB_zate^XscEXÁVz�ghIV �fnte�h\c.ZIV{cuX.[gp�j¥�l�_zate¸y`VzhW�Ëe�if[^Vbh\cwatjUcw[�cwTIaf<wn�ZI_b[lnu]y> Q � ga7(� Æ�VzhW]ËcDTWaf<wndZW_b[lnu]y>.Vbh\cw[z<Dn¥prjDadat_bVYXsc > Q � g ~ � ÅÂatXÁcw[^jwa�cDTWaqyve�_zmWaoX<[�p�j¥��e�hIk %��Ñprjw[^� cDTWaXÁcDe^nu]7e�hfk7jDa�cDmWjwh Q �Ov��'� Ô�c�cwTIVzX½if[^Vbh\c½cwTWa4_zVYXsc(VzX�]\hI[v�Âh�cw[<Z*a�at��iWcs|Z*atnte�mIXwa1et<D~�x½ÆºÆ�>.TWaoegk<i*[gVzh\cwatj��UegX�athIn�[^mWhlÒcDadjDatkF� Çqeg]gaÏXwmWjwa cDTIevc�cwTIaÎcDe�Vz_Ëi*[gVzh^cDadj�VYX

<D~�x½ÆºÆ�>Eeg_zXw[2Q �Ov�,%� Ç}[vyga �*Ö�cD[}jD��egX�cwTWaËjDatXwmW_bc�cw[�Zfa7jwadcwmWjDhWatk�ÂTIadh�cwTWa�_zVYXsc�VYXUad�Eilcs|^�(8,< ), � 0 � ��� � ' � �SUTWVYXUiWjD[`ndatklmIjwa1VYXÂnde�_z_zatk�Z`|

×m#

Page 102: A Commentary on the Sixth Edition UNIX OS -- Lions

��� � � � (�L���L'�N�N ) �Q� # �>N � (�L����/��(0L���('�N�N )� ��N # �>N � (��-,�����(���F�('�#8� � �Q��N � (�F�L��'�#8�� �>N # �>N � (�F���:'��J# �>N # �>N � ( ��� �'�

�ÂVbcwT�cs��[&egjw�^mW�Eadh\cDX �.eqnuTfe�juegn¥cDadj�eghIk�cwTIaBegkIkljwaoXwX[gp,er<wnd_bVYXÁc >�XscDjwmIn�cwmWjDag�<Á�^a�cunA>�e�hfk=<wiWmlcunA>�TIe¸y^a}jwat_ze�cwatkÑprmWhfn¥cwVz[ghfX7e�hfkcDTWa$n�[lklaoXFpr[^j�cwTIaOcs�8[ÂiIjw[ln�aoklmWjDatX�egjwa³XwVz��Vz_Ye�jºVzh��Ëe�h`|jDatXwifaon¥cuXd�+)W[gj�cwTWVYX�jDate^XÁ[^h�cDTWa7nd[`kWaEpr[gjb<wiWmlcDn�>��ÂVb_z_hW[gc³Zfa�a�9We��EVzhWatk�Vzh<kla�cue�Vz_ �\ZWmlc$VYXO_za�pÀc³pr[^jOcwTIa�jwaoegklatjt���c�XÁTI[gmW_Yk<Z*a1hW[�cDatk7cwTIe�c�<wiWmlcDn�>.nte�h7p¨e�Vz_FV{p¢e4hWat�

<Dn�ZW_z[lnu]F>�VzX�hWatatklaok7eghIk3<Dn¥prjDadat_bVYXsc >4VYX�ad�Eilcs|g�O��h7cwTWVYXntegXwa½e.hW[ghlÒ datjw[.yve�_zmWa�l¨_bVzhWa�Öt�^�^�mn³VzX�jDa�cDmWjwhIatk<juevcDTWadjcDTIe�h}e datjw[�yve�_zmWaplr_zVbhIa4�g×g×^�on��� �O��2 � SUTWaEiWjw[lndatklmWjDatXu<w�gadcDnA>�e�hfkI<wiWmlcunA>�klVYXsÒndmIXwXwatkETIadjDa�e�jDa � Vsh klVbjDatn�cw_z|.jDad_YevcDatk�cD[4cwTIa�iWjD[ln�a�ÒklmIjwaoX�kFÖtXDn�mIXDXwatk�Vbh�cDTWa7�`atn�cwVz[ghIXb<D�1Ì$S�Ídl¨�Á�w� n >}e�hfk

< %$x�S�Ídl¨�Á�w� n >�[�p,cwTWa4x`%$Ç��

(8, 43 ) � �# � �� ���$ � �

x½~���¾ �Ëe�]^atX�mIXwa�[gp�cDTWa�prmW_z_�Ô½�IÍ8�w�.nuTIegjDe^n¥cDadjEXÁadct��ÂTWVYnuT VYX�klVYXÁiW_Ye¸|gaokÏVzhL�`aon¥cwVz[gh <wÔ(�IÍ8�Á��l�]dn >Ñ[�p�cwTWax`%$Ç��^�lVbhIndaÂ]`hW[v�Â_baokl�gaU[gpfcDTWVzX8nuTIe�juegn�cwatj¢Xwa�c³VYXO[gpÀcwadhe^XwXwmW�Eatk��ÂVbcwTW[^mlc.n�[^�E��ath\ct�ºhI[�c.eg_b�Ue¸|lX 4smfXscDV �fegZW_z|g�Xw[g�Ea�n�[^���Eath^cÂTWatjwa���[gmI_zk�XÁatad�?cD[ËZfa�Vzh�[gjukladjo�<wÔ(�IÍ8�Á� >(VYX¢e�hEegn�jD[gh`|`��pr[gjS<wÔ��EadjDVznte�h.�\cue�hIkIe�jukÍ8[lkla(pr[gjÂ��hWpr[gjD�Ee�cwVz[gh���h\cwadjunuTIeghW�ga�>W�

(8, (� ) ����� ����� ) � �# � �� ����

SUTWa �fjDXÁc*#^�B[�p�cwTWa}Ö¸��(�Ô½�IÍ8�w��nuTIe�juegn�cwadjuX(e�jDa�hI[ghlÒ�^jDegiWTWVYn�eghIkÎe�jDa�Vbh\cwathIklaok pr[^jËcwTIaqn�[gh\cDjw[^_Â[�p�XÁ[^��ae^XÁi*atn�c¢[gpfcDjDeghIXw��VYXDXÁVz[gh�[gjOklVYXÁiI_ze¸|^�,SUTWa�nd[gh\cwjD[g_lnuTIegjÁÒe^n¥cwatjDX�aA9`iI_bVYn�Vbcw_z|7mIXwatk�[^jÂjwaon�[g�^hWVYXÁaokËZ`|Bx�~���¾ e�jDa� ��0P24�N��� � 2F6����N� �����k�O� � � ���S/15k��2 � /10P2�^��$ ad[gc adhfkB[gpºcDjDeghIXÁ�EVYXwXwVz[gh �g�m$[gj*l n�[^h^cDjw[^_{Ò�ÄMn�IÖt� ZIX ZIe^nu]7XÁifegn�a �WÖo��IÖgÖ T\c lrTI[gjDV( t[gh\cDeg_ n$cDegZ ' � c�'�IÖo� hW_ hWat��_zVbhIa�[gjU_bVzhWa1pratatk )�!(Å�Ç�IÖA$ hWi hWat��iIeg�ga([gjUpr[^jw�?pratatk ' � j�'�IÖo� n�j ndegjwjDVYe��ga½jwadcwmWjDh ' � hZ'�o#�$ p¨X �I_za4XÁatiIe�juevcD[gj�[gj � mWVbc Í �(x��sS�m$^� Xwi pr[gjD�Ue�juk7XwiIegnda([^jUZW_zeghW] ' '�IÖ¸�g� klat_ klat_badcwa Í8�s~�SÂÅ��c³�ÂVz_b_lZ*aÂhW[�cDatk�cwTIe�cOcwTWaU_YegXÁc¢cs�8[1[�pfcwTWaoXÁaUZ*ad_z[ghW�cD[ËcwTWa�_ze^Xsc�×^�ËnuTIe�juegn�cwadjuXU[gj�cwTWa4�^jDegiWTWVYn1if[^jÁcDVb[^h��I[gpcDTWa4n�[lkla^�

(8,< �' � �# � � " � ) � �# � �� ����

SUTWatjwa1e�jDa�×g�.�gjue�iWTWVYn(nuTIe�juegn�cwadjuXt�,SU��[.[gpºcDTWatXwag�lcDTWaXwiIegnda�e�hIkËcwTWa(klad_za�cDag�le�jDa�hW[gc�<Áy`VYXÁVzZW_za�>I�\eghIkË�Ëe¸|.Z*an�VYegXDXwV �Iaok7�ÂVbcwT�cDTWa4n�[^h^cDjw[^_FnuTIe�juegn�cwadjuXt�SUTWa �^jDegiWTWVYnÏnuTIe�juegn�cwatjDX��Ëe¸|¿Z*a�kWVby`VYklatk?Vzh\cw[cwTIjwata³�gjD[gmWifX¼[�p1#^�UnuTIegjDe^n¥cDadjuXd�t�ÂTWVznuT��Ëe¸|½Zfa8jw[^mW�gTW_z|nuTIegjDe^n¥cwatjwVYXwatk<e^X h`mW�EatjwVYn1e�hIk�Xwifaon�VYe�_�nuTIegjDe^n¥cwatjDX mIiWifatj�nde^XÁa�eg_biWTfe�Z*a�cwVYn1nuTIe�juegn�cwatjDX _z[v��adjÂnde^XÁa�e�_ziWTIegZfadcwVYn�nuTIe�juegn�cwatjDXt�!�p�nd[gmWjuXÁa^��XwVbhInda&cDTWadjDa�e�jDa&[^hW_b| �g� eg_biWTfe�Z*a�cwVYnnuTIegjDe^n¥cwatjDXt��cDTWa(_ze�cÁcwatj�cs�8[��gjD[gmWifX³VzhIn�_zmIkla�Xw[g�Ea½XwifadÒn�VYe�_fnuTIe�juegn�cwadjuXOegX³�8at_b_É�¢��hËiIe�jwcwVYn�mW_Ye�jo�vcDTWa�_YegXÁc³�gjD[gmWiVzhIn�_zmIklaoX,cwTWaUpr[^_b_z[v�ÂVbhI�1XwV 9�hW[ghfe�_ziWTIe�Z*a�cDVznÂnuTfe�juegn¥cDadjuX��ÖA$\� _ jDady^adjuXÁa1e�i*[^XÁcwjD[giWTIaÖ¸��# � _za�pÀc�ZIjDe^n�aÖ¸�N$ � y^adjwcwVYnde�_FZfe�jÖ¸�g� jDVb�^T\cUZIjDe^n�aÖ¸��� cDVb_YklaÖ¸�^� klat_badcwa

(8,< �� � �# � � " � ) � �# � �� ���$ � �

Ľady`VzndatX�XwmInuT4e^XF_bVzhWa³iIjwVzh\cwadjuXF[^jFcwatjw�EVzhIe�_YX��ÂTWVYnuT4XwmWilÒi*[gjwc /15�5 cwTWa�Ô½�IÍ8�w�F�gjue�iWTWVYnOXw|\�.Zf[^_zXºe�jDa³[�pÀcDadh�XDe�VYk½cw[XwmWiWi*[gjwc(cDTWaË×g��Ô½�fÍ8�Á�1nuTIe�juegn�cwadj1Xwa�cplÀcDTW[gmW�^T&cDTWadjDae�jDa([ghW_z|7×�$E�^jDegiWTWVYndXUegn�cwmIeg_b_z|<Vzh\y^[g_zygaokan¥�Ä�aty`VzndatX��ÂTWVYnuTLXwmWiWi*[gjwcqe�_z_1cwTWa�Ô(�IÍ8�Á�B�gjue�iWTIVznXw|\�.Zf[^_zX.a�9Wndadilc�cwTW[\XÁaBVbh cwTWa�_YegXÁc��^jw[^mWi�[�p`#\�l�³egjwaXDe�VYkqcD[qXÁmWiIif[^jÁc�cDTWa<��$}Ô½�fÍ8�Á��nuTIe�juegn�cwatj(Xwa�co�B�`mInuTklaty\VYn�aoX�_Yegnu]½cwTWa8_b[v��adjGndegXwa$eg_biWTfe�Z*a�cwVYndX,e�hfk1cwTWa�XÁ|`��ÒZ*[g_YX1_bVYXscDatk�e�Z*[vyga^�FhIe��Ead_z| < �>I�q<���>I�j< � >�e�hIkI< �

�>W�~�[gcwa�cDTIevc <wklat_badcwa�>I�IXwVbhInda4Vbc�VzX�hW[�c(eËy`VzXwVbZI_ba4nuTIegjDe^n¥Òcwatjt�Wnte�h�XscDVb_z_�Z*a4XÁmIiWif[^jÁcDatkF�Ä�aty`VzndatX½Vbh&cwTWVYX(_ze�cÁcwatj½�^jw[^mWi}�Ëe¸|BZ*a�jwadpradjDjwaok�cw[egXY<wmWiWi*adj�ntegXwa([^hW_z|F>I��`[g�EadcwVz��aoX8Xw[g�Ea�[gpFcwTWa½�gjue�iWTIVznÂXw|`��Z*[g_YX³�Ëe¸|.Z*ahW[^hlÒ�XÁcDeghIkWegjDkF�*ag� �I��� VzhIXÁcwaoegkq[gp eghIk}cDTWVzX1nte�h&Z*aVzhIn�[^h\y^adhWVzadh\co�^cDTW[gmI�gT�hW[�cÂmIXwmIeg_b_z|Ëp¨evcue�_É�x�~���¾ iWjDa�pratjDXt��egX<cwTWa�jDategkWadj<VYX7hI[ kl[gmIZlc���ad_z_e¸�Ue�jDag�tcw[(y\Vzad��cDTWa��8[^jw_Yk1cwTIjw[^mW�gTb<w_b[v��adj,nde^XÁa�>�Xwifaon¥ÒcDe^n�_zatXt�GÔ�_biWTfe�Z*a�cwVYnUnuTIe�juegn�cwatjDXGjwaon�atVby^atk1prjD[g� eght<wmWilÒi*adjUndegXwa�[^hW_z|F>4cwatjw�EVzhIe�_¼e�jDa�cDjDeghIXÁ_YevcDatkËVz�E�EatklVYevcDad_z|mWi*[gh jDatndadVzilc}prjw[^� mIiWifatj�ntegXwa�cw[Ï_z[v�8atjqndegXwag�AÔ_z[v�8atj.nde^XÁa�e�_ziWTIegZfadcwVYn<�Ëe¸|�XÁmWZfXÁa � mIadh\cw_z|�ZfaBcwjue�hIXÁÒ_Yevcwaok ZIe^nu]�cD[�mIiWifatj�ntegXwa Vbp7Vbc�VYX�iWjwaon�aoklatk Z`| eXwVbhW�^_ba}Zfegnu]lXÁ_YegXwT�� )W[^j<[gmlcDiWmlc<cD[ XwmInuTÐe�cwatjw�EVzhIe�_É�Z*[�cwT�mWiWi*adj¢e�hIk1_z[v�8atjºnde^XÁa8e�_ziWTIe�Z*a�cDVzn8nuTIe�juegn�cwatjDXFegjwa�Ëe�iWi*atkBcD[�mIiWifatjDntegXwag�SUTWa�nd[gh`ygath^cDVb[^hIXUpr[^j�_bVzhWa.iWjwVzh\cwatjDX�eghIk�cwatjw�EVzhIe�_YXe�jDa1klV �¼adjDadh\c�Z*atnte�mIXwa �

×m$

Page 103: A Commentary on the Sixth Edition UNIX OS -- Lions

� /�� pr[gjE_bVzhWa�iWjDVbh\cwatjDXt�³TW[^jwV� d[^h\cDe�_Ue�_zVz�ghW�Eadh\cEVzX�mIXwmlÒe�_z_b|LVz��i*[gjwcDegh\ct��eghIk Vbc�VYX&i*[^XDXÁVzZW_za lr�ÂVbcwTI[gmlccw[`[��.mInuTBkWV �<n�mI_{cs|1n$cw[�iWjDVbh\cÂn�[g�Ei*[^XwV{cDag�l[vy^adjwÒXscDjwmfnu](nuTIegjDe^n¥cDadjuX lrmfXÁVzhW�½cwTWa��EVbh`mIX¢XwVb�^h4Vbh�cwTWVYXnde^XÁa�n�We�hfk� �� pr[gjUcDadjD�EVbhIeg_zXt�lTW[^jwV� d[^h^cue�_Fe�_zVz�ghW�Eadh\cÂVYXÂhW[�c�nd[ghlÒXÁVYklatjwaokÎcw[ÑZfa�Xw[ Vz��i*[gjwcDegh\c��ZIe^nu]`XwiIe^n�VzhW��cw[iWjD[vy\VYklaË[vy^adjuXscDjwmInu]qnuTfe�juegn¥cDadjuX4kl[`atX�hW[�c.�8[^jw][gh��E[^XÁcM](Ľx½X�OeghIkF�GXwVzhIn�a�cwTIa<Xweg��aE�^jDegiWTWVYnn�[^h\y^adh\cwVz[ghfX�egjwa�mfXÁaok7pr[^j�Z*[�cwT�VzhWiWmlc1e�hIk�[^mlcÁÒiWmlco��cwTIa<XÁ|`��Z*[g_YX�XwTW[gmW_Yk�Zfa<e^X�n�[^h\y^adhWVzadh\c1cw[cs|`ifa�egXUi*[^XDXwVbZW_zag�(8, � � � �2 � � � �8� � �SUTWVYXOe�jDjue¸|½VYX¢mIXwatk.Vbh.cwTWa�cDjDeghIXÁ_YevcDVb[^h�[gp*nuTIegjDe^n¥cwatjGVzhlÒiWmWc³prjw[^�Óe(cDadjD��VzhIeg_WiWjDatn�aoklatk�Z`|.e1XwVbhI�g_zaÂZIegnu]lXw_ze^XÁT��< � >I�SUTWatjwa�e�jDaEcwTWjDada�nuTIe�juegn�cwadjuXt�G�g�m$3lrat[�c n¥�q_ �p'¢e�hfk_ ��'b�¼�ÂTWVYnuT�eg_b�Ue¸|lX�TIe¸y^a.Xwifaon�VYe�_¢�EateghWVbhI�^X(e�hIk}hIadatkcD[.Z*a�egXDXÁatjÁcDatk<Z`|<e.ZIegnu]lXw_ze^XÁT7�ÂTWadhWatygatj$cDTWad|7egjwa½cw[Z*a�Vzh\cwadjDiWjDa�cDatk�_bVbcwatjDeg_b_z|g��SUTIatXwa�cwTWjDada.nuTIe�juegn�cwadjuXU[ln¥ÒndmWjEVbh=<Á�Ëe�ilcue�Za>&Vbh cwTWatVbjr<whIevcDmWjDeg_?>q_b[lnde�cwVz[ghIX+lrVÉ� ag�cDTWadVzj³_z[`ntevcDVb[^hIXOVzh.cDTWa�Ô(�IÍ8�Á�,cDegZW_za�n¥�OSUT`mIX¢pr[^jOa�9We���ÒiW_zaY_ �p'ITIegXÂnd[`kWa1�m$o#�e�hIk

8��# N �J9 )����L�� ��� ����L �SUTWa�[�cDTWadj½hW[ghlÒ�h`mW_z_,nuTIegjDe^n¥cDadjuXUVbhI<Á�Ëe�ilcue�Za>7e�jDaVzh`yg[g_zygaok�VbhEcDTWa�cDjDeghIXÁ_YevcDVb[^hE[�p�VzhWiWmlcUnuTIe�juegn�cwadjuX,prjD[g�

<wmWiWi*adj ntegXwa [^hW_z|F>Lklaty\VYn�aoX�e�hfk3kW[LhI[�c�[lndndmWj�VbhcDTWadVzjM<ÁhIe�cwmWjue�_ >Â_z[`ntevcDVb[^hIX,ZWmlc¢Vbh.cwTWa�_z[`ntevcDVb[^h�[�pIcwTWatVbja � mIVbyve�_zadh\c½nuTfe�juegn¥cDadjo�Wag� �I�Y< � ��>�[`ntn�mWjuX�Vzh�cwTIa�hIe�cwmlÒjue�_,_b[lntevcwVz[gh&pr[gju<���>W�FXwVbhIndat< � ��><�ÂVz_z_,Z*aEVbh\cDadjDiWjwadcwaoke^XY<���>I�`a�cDng�~�[gcwa(cwTIa1XwVbcwmIe�cwVz[gh7jDad�\e�juklVzhW��e�_ziWTIegZfadcwVYn1nuTIe�juegn�ÒcDadjuXd�OSUTWVYX$VYX³[^hW_z|�aA9liW_bVYndegZW_za��ÂTWath<V{c�VzX8jDad�Ead�.ZfatjwaokcDTIevcÂcDTWa4e�_ziWTIegZfadcwVYn�nuTIe�juegn�cwadjuX�e�jDa1eg_b_¼cDjDeghIXw_ze�cwatk7cw[_z[v�8atjÂndegXwa1Zfadpr[gjDa�e�h`|<ZIe^nu]`Xw_YegXwT7VYXUjwaon�[g�^hWVYXÁaokF�(8, � � ���2 � � � � 3 � �SUTWVYX�egjwjue¸|�n�[^hIXÁVYXÁcDXF[gpl�^���UnuTIe�juegn�cwatjDXt��_zVb]^aS<Á�Ëe�ilcue�Za>I�x�hlpr[gjwcwmWhfevcwat_b|¿cwTWa VbhWVbcwVYe�_zVYXwe�cwVz[gh [�p <Áife�jwcDe�ZO>��UegX[^��VbcÁcDatk&prjw[^� cwTIaEx½~���¾ !½i*adjuevcDVbhW�}�`|lXÁcwad���`[gmWjun�aÍ8[lkla�Zf[`[^]\_za�co�º��c¢VzX¢ndadjwcDe�VzhW_z|1hWadaoklatkF�^e�hIk4Xw[(VzXG�gVzygathhW[v� �

� 4 ����# ��� N ��9 � ������8,8�O�����8,8�O�����8,8�O�0���',%�O������,%���0���',%�O�0�0��,%��������,8����������O�������.�O������L��O�0���-�/�O�����$�/���0����:/�O�0�0��,%��������,8������8,8�O�����8,8�O�����8,8�O�0���',%�O������,%���0���',%�O�0�0��,%��������,8������8,8�O�����8,8�O�����8,8�O�0���',%�O������,%���0���',%�O�0�0��,%��������,8������������0���/�O���0���/�O���0���/�O�����0�/���0�����/�O�0�0�0�/�������0��������������0���/�O���0���4�����0�/�O�����0�/�O�����0�/�O�0�0�0�/�������0������������O���������O������� �����0�/�O�����0�/�O�����0�/�O�0�0�0�/�������0���

�����0�/�O�����0�/�O�����0�/�����0�0�/�������0�����������/���0�0���/�����0�0�/������0�/�O�����0�/�O�����0�/�����0�0�/�������0�����������/���0�0���/�����0�0�/������0�/�O�����0�/�O�����0�/�����0�0�/�������0�����������/���0�0���/�����0�0�/������0�/�O�����0�/�O�����0�/�����0�0�/�������0�����������/���0�0���/�����0�0�/������0� �0�����/�O�0�����R�0�����/�O�0�����/�O�0�����/�O�0�0���/�����0�0�/������0� �0�����/�O�0�����R�0�����/�O�0�����/�O�0�����/�O�0�0���/�����0�0�/������0�/�O�����0�/�O�����0�/�����0�0�/�������0�����������/���0�0���/�����0�0�/������0�/�O�����0�/�O�����0�/�����0�0�/�������0�����������/���0�0���/�����0�0�/������0�/�O�����0�/�O�����0�/�����0�0�/�������0�����������/���0�0���/�����0��,�

&Ì$e^nuT�at_bat��ath\c4[�pY<ÁiIegjÁcue�Za>�VYX4e�h�adVz�gT\c4ZWVbc.nuTIegjÁÒegn�cwatjt�W�ÂTIVznuT��*�ÂVbcwT}cDTWa4mIXwa4[�p³egiWiWjD[giWjDVze�cwa�ZWVbcw�Ëe^XÁ]lX

l¨�\���^�<e�hIk��WÖv�g��n��Fnde�h�Zfa�Vzh^cDadjDiWjDa�cwaok&e^X(e<cs�8[�iIegjÁcXÁcwjDmIn¥cDmWjwa �ZWVbc(� iIegjwVbcs|<ZWVbc�ZWVbcDXe#�Ò�� hW[gc�mIXwatkF�³Ô�_b�Ue¸|lX tadjD[2ZWVbcDX���Ò�� nd[`kWa�h\mI��Z*adjo�SUTWa iIe�jDV{cs| ZWVbc�VzX�e�iIifathIklatk¿cw[ cwTWaÏXwady^adh ZWVbcÔ½�fÍ8�Á�³n�[lkla½�ÂTWadhBe4nuTIe�juegn�cwatj³VzX$cwjue�hfXÁ�EVbcÁcwaokEZ`|.cDTWan�[^�EiWmlcwatjt�\cD[4pr[gjD�Me�hBadVz�gT\c8ZIV{c�n�[lkla½�ÂV{cDTBatygath<iIe�jwÒVbcs|g� SUTWa�nd[`kWa�h`mW��Z*adj8VzX$mIXÁaokEZ`|t<ÁcÁcs|g[^mlcwiImlc >plk(�$`���oncw[�nd_ze^XwXwV{pr|1cDTWaÂnuTIe�juegn�cwatjGVzh\cw[1[ghWaU[gp*Xwadygath.ntevcwat�g[^jwVzatXpr[gj,kla�cDadjD�EVbhWVzhW��cwTWa�klad_Ye¸|½�ÂTIVznuT4XwTW[gmI_zk�athIXwmWa$Z*a�pr[^jwacwTIa³cwjue�hfXÁ�EVYXwXwVb[^h�[�plcDTWa8hIa�9`c,nuTIegjDe^n¥cDadjo� l¨SUTWVYXGVzXGiIe�jwÒcwVYn�mI_zegjw_z|�Vz��i*[gjwcDegh\c�pr[^jE��aonuTIe�hIVznte�_ÂiWjDVbh\cDadjuX.�ÂTIVznuTjDa � mWVzjwa�cwVz�Ea�pr[^jOcwTWa½nde�jDjDVzeg�ga8cw[4jDa�cDmWjwh�prjD[g�ÓcwTWa�adhIk[�p¢e�_bVzhWag�Ia�cDng� n

×^�

Page 104: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � ����� � ��� � � ��� E � � � �A� ���A

!½mWjEjDad�Ëe�VzhWVzhW��cDe^XÁ]¼�³cD[�Zfa}n�[^�EiW_badcwaokÑVzhÑcwTWVYX<e�hfkcDTWa�pr[^_b_z[v�ÂVbhI�4nuTIe�ilcDadjo�gVYX³cD[�n�[^hIXwVzklatj³cDTWa�n�[lkla½�ÂTWVYnuTnd[gh\cwjD[g_YX�Vbh\cwatjDe^n¥cDVby^a7cDadjD��VzhIeg_zXfl¨[gjz<scDadjD�EVbhIeg_zX >W�$pr[gjXwTW[gjwc n��ÔÐ�ÂVYkla�yvegjwVza�cs|�[�p¼cwatjw�EVzhIe�_YXOVYX$e¸yve�Vz_Ye�ZW_za�e�hIkËXwady\ÒatjDeg_`kWV �¼adjDadh\c¢cs|`ifaoX¢�Ee¸|�Z*aÂXÁVz��mI_{cue�hWat[gmIXw_b|4e�cÁcuegnuTWaokcD[�e�XwVzhW�g_zaqn�[^��iImlcwatjt�ÐĽVzXÁcwVzhW�^mWVzXwTWVzhW��nuTIegjDe^n¥cwatjwVYXÁÒcDVzntX}pr[gj�klV �¼adjDadh\c�nd_ze^XwXwatX�[gpEcwadjD�EVbhfe�_4VzhIn�_zmIklaIlrZ*a�ÒXwVzkWatX�XwmInuT�hW[ghlÒ�atXDXwadh\cwVYe�_¼praoevcwmIjwaoXÂegXÂXwTIe�i*ag�IXwV� da4e�hfknd[g_z[gmWj n �� /�� cwjue�hIXw�EVzXDXÁVz[gh XwifatatkF��ag� �I� Ö^Öt�3ZIegmIk/pr[gj eghÔ½�lÅ#m#�cwat_badcs|`ifa^��#^�g��ZIegmIk�pr[gj�e}ĽÌUÍ8�ÂjwVbcwatjt��N$\�g�.ZIe�mIk�[^j�×g�^�g�.ZIe�mIk�pr[^j�eY]�VYXwmIe�_ºÄ½VYXÁiW_Ye¸|mWhWVbcil�< ]½Äd>on�� �� �gjue�iITWVznËnuTfe�juegn¥cDadj4Xwa�co�,hI[�cDegZW_z|&cDTWa<prmW_z_UÔ½�IÍ8�w��gjue�iWTIVzn(XÁadc�e�hIk7cwTIa4��$E�gjue�iWTIVzn(XÁmIZIXÁadc�� ��� cwjue�hIXw�EVzXDXwVb[^h�iIegjwVbcs| ��[lkWkF�,adygath��,hW[ghWaË[^j�VbhI[gilÒadjuevcD_by^a�� �� [gmWcwiWmlc�cDatnuTWhIV � mWa �1XwadjDVYe�_OiWjDVbh\cDadj1[gj�y`VYXÁmIeg_³klVYXsÒiW_Ye¸|�� 2� �EVzXDn�at_b_Ye�hIad[gmfX���nd[g��ZIVbhWaokÐndegjwjDVYe��ga�jDa�cDmWjwh �¸_zVbhWapradaok nuTIe�juegn�cwadjo�(TIe�_bp<klmWiW_za�9Lcwatjw�EVzhIe�_El¨VbhIiWmlcnuTIe�juegn�cwatjDX(kl[}hW[gc1hIadatk�aonuTW[gVzhW�4n%GjDatnd[g�^hWV{cDVb[^h[�pGcDe�Z}nuTIegjDe^n¥cDadjuX�� ��� nuTIegjDe^n¥cwatjwVYXÁcwVYn}klad_Ye¸|lXËpr[gj�n�atjÁcue�VzhÐn�[^h^cDjw[^_�prmWhfn¥ÒcwVz[ghIXt�¼ag� �I��ndegjwjDVYe��ga�jwadcwmWjDhIX½�Ee¸|�hW[gc(Z*aEn�[g��ÒiW_za�cwaok}�ÂVbcwTWVzh&e7XwVzhW�g_za�nuTIegjDe^n¥cwatjÂcwjue�hfXÁ�EVYXwXwVb[^hcwVz�Eag�WadcDn��Ô�X��8at_b_8egX(cwTIa<�ÂVzkWaËy¸egjwVza�cs|&[�p�cwadjD�EVbhfe�_YX��ÂTWVYnuTegjwa<e¸yve�Vz_Ye�ZW_zaËe�hIk�Vzh�mIXwag�,cwTWatjwa7VzX4eg_zXw[qe}yve�jDVza�cs|&[gpTIegjDkW��egjwa(klady`VYn�atXU�ÂTIVznuT��Ëe¸|ËZfa1mIXwatkBcw[EVzh\cwadjwp¨egnda(ecDadjD��VzhIeg_¼cw[<eY%$Äd%LÖgÖ�n�[^��iImlcwatjt��)W[^jÂa�9We��EiW_za �

Ä(ƳÖ^Ö �vÃ�Æ$ÖgÖ XwVbhW�^_ba1_zVbhIag�Ie^XÁ|`hInuTWjD[ghI[gmIXVzh^cDadjwp¨egnda�FÖ�#�XÁcDe�hfkWe�jukcwjue�hfXÁ�EVYXwXwVb[^h7juevcDatXUZ*a�cs��adadh$^��e�hfk�×^�g�^��ZIegmIk�

Ä(ÊIÖ^Ö Öt�._zVbhWa^�IegXw|`hInuTWjD[ghW[^mIXt�^ZWm��*atjwaokXwadjDVzeg_*_zVzhWa���mW_bcwVziW_za�9ladj,FÖgÖXwifatatkWXUZ*a�cs��adathq�g��eghIk�×g�^�g�.ZIe�mIk��Xwad_zatn¥cue�ZW_za1Vbh�pr[^mWjÂ_bVzhWa��^jw[^mWiIX�Ä(È4Ö^Ö Öt�._zVbhWa^�IegXw|`hInuTWjD[ghW[^mIXt�^ZWm��*atjwaokF�XwadjDVzeg_*_zVzhWa���mW_bcwVziW_za�9ladj,FÖA$ËXwifatatkWXt�VzhIklVzy\VYklmIeg_b_z|7Xwad_zatn�cDe�ZI_ba�WĽÇqÔcwjue�hfXÁ�EVYXwXwVb[^hÌ$e^nuT7[gpºcwTIa1egZf[vy^a½Vzh\cwatjÁp¨e^n�atX8�ÂVz_b_F��[gjD]ËVbhBprmW_z_F[gjTIeg_{pÂklmWiI_baA9��E[lkla�¢TIeghIkl_za7�l�,�W�¢�B[^j*(�_batygat_$n�[lklaoX��^adhWatjDe�cwaO[lkWkF�vatygadh�[^jºhW[½iIe�jDVbcs|�veghIk��gathWadjuevcDa³e�XÁcw[^ind[`kWa([gp�Ö^�FÖg� �.[gj��.ZWVbcDXt�

��h egkWkWV{cDVb[^h cw[ÏcDTWa e�Z*[vyga�e^XÁ|`hInuTIjw[^hW[gmIX�Vzh\cwadjwÒp¨egndatXt�vcwTIadjDaUegjwaUe(h`mW��Z*adjO[gp¼Xw|`hInuTWjD[ghW[^mIXºVzh\cwatjÁp¨e^n�atXt�ag� �I�OÄ �.ÖgÖ^�Ì$e^nuT�Vzh\cwatjÁp¨e^n�a<TIe^X4VbcDX�[v�Âh�n�[gh\cDjw[^_$nuTIe�juegn�cwatjwVYXsÒcwVYndX�e�hfkEV{cUjwa � mWVbjDatX$e�XwadiIegjDe�cwaÂ[gi*adjuevcDVbhI��XÁ|lXÁcwat� kWa�Òy`Vznda�kljDVby^adjo�GSUTWa�nd[g�E�E[ghËn�[lklaÂ�ÂTWVYnuT<ndeghEZfa�XwTIe�jDatkZ*a�cs��adadh�cDTWatXwa�VYX½�^evcDTWadjDatk�Vzh\cw[Be7XÁVzhW�g_za �I_za <ÁcÁcs|^� n�>W�cw[�Z*a�pr[^mWhIk�[gh��lTWadadcDXM(WÖ.cw[u(^�W�4ÔÓXwa�c�[�p�n�[g�E�E[ghkla��IhWVbcwVz[ghIX�VzX��\evcDTWadjDatk�Vzh�cwTWa �f_baP<ÁcÁcs|^� Ta>�[^h �`TWata�c�v×I� ��|��Ue¸|�[�p�aA9leg�EiW_ba^�$�`TWata�cs(g�&nd[gh\cDegVbhfX�cwTIa��I_za<Á]`_É� n�>W�\�ÂTWVYnuT�nd[ghIXÁcwVbcwmlcDatX8cwTIa1kWady`Vznda(kWjwVzygatj$pr[^jUe�Xwa�c[�pIÄ(ƳÖ^Ö ��Ã�ƳÖgÖ¢Vzh\cwadjwp¨egndatXt�GSUTWVYX,klady`VYn�a$kljDVzygadj,e�_z��e¸|lXhWatatkWX8cw[�Z*a(iIjwaoXÁath^co�lXÁVzhIn�a([ghIa(Ã�Æ$ÖgÖ�Vzh\cwatjÁp¨e^n�a(VzX�VzhlÒyve�jDVzegZW_z|�VzhIn�_zmIklaokËVbhBe4XÁ|lXÁcwat�¿pr[^j³cwTIaÂcwTWa½[gi*adjuevcD[gj�' Xn�[^hIXw[g_za�cDadjD��VzhIeg_ �( 3= �� ��� 9 � � & 9 $��2�!0�� �#0 � � � �8( '��Ô�h VbhIXÁcDeghIn�a7[�ps<scwcs|F>qVzX.egXDXÁ[ln�VYevcDatk��ÂVbcwT�atygatjw|&cwadjwÒ�EVbhfe�_,if[^jÁc(cw[BcwTWaEXw|`XÁcwat� lrhW[��ËevcÁcDadj1�ÂTIe�c�cs|`ifa�[�pTIegjDkl�Ue�jDa4Vzh\cwadjwp¨egnda.VYX(mIXwatkan��.Ô <Ái*[gjwc >7Vbh�cwTWVYX�n�[^hlÒcwaA9`c4VzX.eBiI_ze^n�aEcw[qe�cÁcuegnuT�e�cwatjw�EVzhIe�_³_zVzhWag��È�adhfn�a7eÄ(ƳÖgÖ4XwmWiWiI_bVzatXÂ[^hW_z|B[^hWa�if[^jÁco�I�ÂTWatjwaoegXÂe<Ä(ÊfÖgÖ4XwmWilÒiW_zVbaoXUmWi�cw[<XwV:9`cDadadh�i*[gjwcDXt�SUTWa <scwcs|F> XÁcwjDmIn¥cDmWjwa�n�[^hIXwVzXÁcDX�[�p�XÁV 9`cwadath���[gjukWXe�hfk7VzhIn�_zmIklaoX��Ô4� c klady �19laok7pr[^j�e�iIe�jwcwVYn�mW_Ye�jc egkWklj cDadjD��VzhIeg_�if[^jÁc,�(� c XÁi*adaokWX �19laok7pr[^j�e�iIe�jwcwVYn�mW_Ye�jc adjuegXwa cDadjD��VzhIeg_ �³SUTWaoXÁa1yve�_zmWaoXU�Ee¸|c ]\Vz_z_ Z*a4XÁadc�Z`|P<wXÁcÁcs|y>Ee�hIkc #fe��\X Vzh\cwadjDjD[g�^e�cwaok<Z`|P<Á�gcÁcs|y> ͽ� c jDe¸� � _zVzXÁc�TWaoegkWX�pr[^j � ����2F2c nde�h � nuTIegjDe^n¥cDadj � mWadmWaoX��,cDTWac [gmlc � Xw[�Ò�ndeg_b_zatk3<Ájue¸�e>�VzhWiWmlco�

<Dn�[`[g]^atk1>.VbhIiWmlc�e�hfk7cDTWa[^mlcwiWmWc � mIadmWaoX�Ä�� c Xscuevcwa XÁcDe�cwmIXÂVzhlpr[^jw�ËevcDVb[^hB�ÂTIVznuTc klad_Yn¥c nuTIeghW�gaoX8prjwa � mIadh\cw_z|BklmIjwVzhW�c n�[g_ hW[^jw�Ëeg_FiWjw[lndatXDXÁVzhW�2c nuTIe�j

� � �� ( 3= ��

( 3= )( � ���� ��# � �#" �� � ��� " �= � �SUTWa.jwaoegklatj½XwTW[gmW_YkqXÁcwmIkW|BcDTWa�Vbhlpr[^jw�Ëe�cwVz[ghq[^h��`TWata�c�v×�nde�jDa�prmI_b_z|g�³Í8adjwcDegVbh<Vbcwat�ËX$_zVzXÁcwaok<Z*ad_z[v�Ïe�jDa�hW[gc8jDa�pÀÒadjDadhfn�atk.Vzh�egh\|�atXDXÁath^cDVzeg_l��e¸|�Vzh�cwTWa�Xwad_zatn�cwVz[gh�[�p¼n�[lklaa�9Weg��VzhWaok7TWatjwa^�

N ;�� 4 ��� �7F � �>�'� � �$"�� ��K � �OF � F��8�N ;��Q# =�=0�'� �7F � �%,�� � �*"�� ��K � �OF � F��'�

×^�

Page 105: A Commentary on the Sixth Edition UNIX OS -- Lions

����M ��� �OF � :�:'� ��P�"�� �0K � �7F � F�:'� #"�"�M �OF � F��'� �! �M���� �7F � (��'���%�����M �OF � F�L'� K>I��$����M �7F ��� L'�

( 3 -, � � "��2"� ��" � �#"������hWVbcwVYe�_zVYXwe�cwVz[ghq[gpOcwTWa}<scwcs|F>BXscDjwmfn¥cwmIjwaoX�VYX�cDTWa�jwaoXÁi*[ghlÒXwVbZIVb_zV{cs|E[gp�cwTWa½yve�jDVb[^mIX*<w[gi*adha>�jw[^mlcwVzhWatX$Vbh7cwTWa1klaty\VYn�akljDVzygadjuXt�^pr[^jÂa�9We��EiW_zag��<w]`_b[^ifatha>ul�(g�\��#4n¥�SUTWa�V{cDad�ËX�VzhL�(jD[gmWi � [gp.S,e�ZW_za���$I�zÖ&�Ëe¸|ÎZfanuTIeghW�gaok�Z`|�ep<wXÁcÁcs|y>½XÁ|lXÁcwad� nte�_z_ �,SUTWa�ndmWjDjwath^c,yve�_zmWatX�Ëe¸|<Z*a�Vbh\cDadjDjw[^�^evcDatkËZ`|�et<w��cwcs|F>�Xw|`XÁcwat�/nte�_z_ �Ô"klatXDn�jDVbiWcwVz[gh�[gpÂcwTWaoXÁa�VzX�n�[^h\cDe�VzhWaok�Vbh�cwTWa�XÁaon¥ÒcDVb[^hIXd�S<u�lSÂS �l¨�Á� n >�eghIk <D�1SÂS Ylr�w� n >q[gp�cwTIa�x`%$Ç��SUTWaoXÁa�ndeg_b_YXBegjwa�Vbh`y^[g]gaokÎZ`|ÑcDTWaW<wXÁcÁcs|y> XwTWad_z_1n�[g��Ò�Ëe�hfkE�ÂTWVznuT7VzX8klatXDn�jDVbZ*atkEVzhËcDTWa½Xwatn�cwVz[ghz<D�WSÂS �lr� n >W��`VzhIn�a�cwTWa <wXÁcÁcs|y>�e�hfkr<Á��cwcs|y>�XÁ|lXÁcwad� ndeg_b_YX³jDa � mWVzjDae �I_za<klaoXwndjwVzilcw[^j�egX�e�ife�jue��Ea�cDadjo��cwTIad|�nte�h�[ghI_b|�ZfaegiWiW_zVbaok7cD[Ëe�h <Á[gi*adhO>�nuTfe�juegn¥cDadjUXÁi*atndVzeg_ �I_zag�SUTWa1cs��[�Xw|lXscDad�:nte�_z_zXUXwTIe�jDa1e.�^[`[`kBklateg_F[�p¢n�[g��Ò�E[ghÎn�[lkla^�Ñ��a}�ÂVz_b_UcDjDe^n�aBcwTWa}iWjD[g�^jwaoXwX�[�p1e�h a�9la�ÒndmlcwVz[gh [�pE<DXscwcs|y>&Z*ad_z[v�:e�hfk _zate¸y^a<cwTIa�cwjuegn�VzhW��[�p(eXwVb�EVz_zegjÂa�9latndmlcwVz[gh�[�pM<Á�gcÁcs|y>�cw[�cwTWa�jDate^kladjo�( 3 43 � � � & � � � �8,��SUTWVYX�iIjw[ln�aoklmWjDa4Vz��iI_bat��ath\cDX�cwTWab<DXscwcs|y><XÁ|lXÁcwat�"nte�_z_ ���c$nd[giWVzatX,cDTWjwataÂ�8[^jDkIX¢[�p¼mIXÁatjOiIe�jue��Eadcwadj¢Vzhlpr[gjD�ËevcDVb[^hVzh\cw[ <Ámº� m egjw� {{�z� | >ÓmIXÁVzhW��cDTWaËiIe�jue��Eadcwadj�XwmWiWiW_zVzatk�egXe�i*[gVzh^cDadjo�We�hIkBcDTWadh}ndeg_b_YXY<wXw��cwcs|y>W�( 3 (� � � � � & � � ( =� �\�,aQ v(� �(a�c�e.yve�_zVzkWe�cwaok7i*[gVzh\cwadj�cD[Eet< �f_ba�>.egjwjue¸|EadhlÒcwjD| \�,aQ �(� Í8TWaonu]ËcwTIe�cÂcwTWa �f_ba�VYXÂe}<wnuTIegjDe^n¥cwatj�Xwi*atn�VYe�_ > \�, �yB(� Í�e�_z_½cwTWa�e�iWiIjw[^iWjwVYevcDa <wk Xw��cwcs|y>�jD[gmlcDVbhWa&pr[gjcwTWa�klaty`Vznda1cs|\i*ag�elÉ�`ada��lTWadadce$^�W� n~�[gcwaEcDTIevc1cwTIa}<Dk Xw��cÁcs|y>Bjw[^mlcwVzhWa�VzXu<whW[lkladyy>7pr[gjcDTWa�_bVzhWa�iWjDVzh^cDadj�eghIk7ife�i*adjUcDegifa�jDate^kladj��¸iImWhInuT��

( 3 (' � � � � � ��& � �� � �SUTWVYX½VzX1e�h&a�9We��EiW_za�[gp8eP<Dk XÁ�gcÁcs|y><jD[gmlcDVbhIag�(��c1nte�_z_zX<ÁcÁcs|lXscwcs|y>�iIe^XwXwVzhW�½e(i*[gVzh^cDadj,cw[½cwTIaUegiWiWjD[giWjDVYevcwa�<scwcs|F>XÁcwjDmIn¥cDmWjDa1e^XÂe�iIe�jue��Ea�cDadjo�( 3 � ��& � � & � � � ��� �Ô ndeg_b_Â[^jwVz�gVzhIe�cwVzhW�&prjD[g� <wXÁcÁcs|y>&�ÂVz_z_ÂTIe¸yga�e�XÁaon�[ghfkiIegjDeg�Ea�cwatjU[�p dadjD[I�\�ga\ �(� ̳�Eilcs|Ðeg_b_(cDTWa � mWatmWatX�e^XwXw[ln�VYevcwaokÏ�ÂVbcwT�cwTWacwatjw�EVzhIe�_*pr[gjwcwT`�ÂVbcwT��³SUTIad| � mWVbcwa1_zVb]^ad_z|<n�[gh\cue�VzhhW[ghfXÁathIXÁa�

\�g ���'� ÅÂatXwa�c�cwTIa�Xwi*adatk VbhWpr[gjD�Ee�cwVz[gh l¨mIXwa�prmW_ÂVzh cDTWantegXwa�[gpºe�Ä(È4ÖgÖ(Vzh^cDadjwp¨egndag�\ZWmlcU[�p�_zV{cwcw_za(Vzh\cwatjwaoXscpr[^jUcwTWa�iIjwaoXÁath^c�Xwad_zatn�cwVz[gh�[�pOn�[lkla�n%Å�atXwa�c�cwTWa�<ÁatjDe^XÁa�>ÏnuTIe�juegn�cwatj�e�hfk cwTIa=<w]\Vz_z_?>nuTfe�juegn¥cDadjo�tlA<Á]`Vb_z_ >}TWadjDa<klathW[�cDatXb<ÁcwTWjD[v�Óe¸�Ue¸|cDTWa}n�mWjDjDadh\c.VzhWiWmlcË_zVbhIa�>W� n ~�[gcwaBcwTIe�cËV{p�cDTWatXwanuTfe�juegn¥cDadjuX1e�jDa�nuTIeghW�gaok�e¸�Ue¸|�prjw[^� cDTWadVzj�hW[gjwÒ�Ëeg_�yveg_bmWaoX�[gpE<���>�e�hIk <��d>qjDatXwifaon¥cDVby^ad_z|g�OhW[nd[gjDjwaoXÁi*[ghfklVbhI�UnuTfe�hW�^atXFe�jDa¢�Ëegkla¢cD[s<Á�Ëe�ilcue�Za>I�~�[gj�XwTW[gmI_zkBcwTIad| * n��

\�g � B-� ÅÂatXwa�cOcDTWap< #fe��\X >1kla��IhWVzhW�4XÁ[^�EaÂjwat_baty¸egh\cOcwadjwÒ�EVzhIe�_GnuTIe�juegn�cwadjDVYXscDVzntX`l XÁata��`TWadadc(�v×4n ���/1G �� � �"�e6�24� � � �

¾(SGÔ½�Â� Ö cwTWa1cDadjD��VzhIeg_F�ÂVb_z_�hW[gc�Vbh\cwatjwiIjwadcTW[gjDV( t[gh\cDeg_*cDe�Z}nuTIegjDe^n¥cDadjuXn�[gjDjDatn¥cD_b| Æ¢Í�Ô½�lÌ � cwTWa1cDadjD��VzhIeg_�XÁmWiIif[^jÁcuXÂ[ghW_z|ËcDTWa��$ËnuTIe�juegn�cwatj�Ô(�IÍ8�Á�ÂXwmWZIXwa�c�ÌUÍ�Èd! # cwTWa1cDadjD��VzhIeg_FVzXÂ[^ifatjDe�cwVzhW��VbhprmW_b_GklmWiW_za�9���[lkla^�Ie�hfk7VzhWiWmlcnuTIe�juegn�cwadjuX8��mIXÁc�Zfa�aonuTW[`atkZIegnu] Í�Å�Çt!(Ä $ mWif[^h�VbhWiImlct�Ier<DndegjwjDVzeg�gajwadcwmWjDha>�VzXUjDadiI_ze^n�atkBZ`|7e

<Á_zVbhWa(pratatk1>2WmWi*[gh�[gmlcDiWmlco�Ie<Á_zVbhWa(pratatk1>EVYXUjwatiW_Yegn�aok7Z`|7e<wndegjwjDVYe��ga½jwadcwmWjDha>�e�hIk�e}<Á_zVzhWapradatka>

Å�Ôº� � VbhWiImlc½nuTIegjDe^n¥cwatjDX�e�jDa½cw[ËZ*aXÁath^cÂcD[�cwTWa�iWjD[g�^jDeg�?a�9Wegn�cw_z|egXUjDatn�atVby^atkF�l�ÂVbcwTI[gmlcp<wadjuegXwa�>[gj4<Á]`Vb_z_ >�iWjD[ln�aoXwXwVbhI�I�`[gjegk#4smIXÁcw�Eath^cÂpr[^jÂZIegnu]lXw_ze^XÁTnuTIe�juegn�cwadjuXt���h egkIklV{cDVb[^h��.cwTWa pr[g_z_z[v�ÂVbhW��ZWVbcDX�e�jDa Vzh\cwatjwjD[�Ò�\evcDatk�Z\| <scÁcs|^[gmlcDiWmlc >tlk(m#\��#on�Vbh�nuTW[`[^XwVzhW�7cDTWakWad_Ye¸|Ð�ÂTWVYnuT XwTW[^mW_zk�adhfXÁmWa�e�pÀcwatj�cwTWa�nuTIegjDe^n¥ÒcDadj(VbhfklVzntevcDatk�VYX½Xwadh\ct�*Z*a�pr[gjDa�XwadhIkWVbhW�<cwTWa.hWa�9`cnuTfe�juegn¥cDadj �(I� × _zVbhIa1pradatk Öo�W�zÖgÖ TW[^jwV� d[^h\cDe�_*cue�Z Ö¸�l�zÖ�# nte�jDjwVYe��^a�jDa�cwmIjwh Ö�$ y^adjwcwVYnde�_*cue�Z�[gjUpr[^jw�?pratatkF�

( 3= �� ��� . � � � � � � �8� � ���� " � � .� ��=" � , � ��� ��

SUTWa�I_baI<Á]`_É� n�>�n�[^hIXscDV{cDmlcwaoX<cDTWa�kWady`VzndaqTIeghIkl_zadjBpr[gjcwatjw�EVzhIe�_YXUn�[^hWhWatn�cwaokËcw[�cDTWa�XÁ|lXÁcwad�:y\VYe�ĽÆ$ÖgÖ ��Ã�ƳÖ^Ö×\�

Page 106: A Commentary on the Sixth Edition UNIX OS -- Lions

Vzh\cwadjwp¨egndatXt�GSUTWVYX,�gjD[gmWi4eg_b�Ue¸|lX�TIe^X¢evcG_zate^Xsc¢[ghIa8�Ead��ÒZ*adj �&cwTWaB[gi*adjuevcD[gj�' X4nd[ghIXw[g_zaEcwatjw�EVzhIe�_É�&È�adhIndaËcwTWVYXklaty`Vznda(Tfe�hIkl_zadjÂ�ÂVz_z_ºe�_z��e¸|lX�Z*a�iWjwaoXÁath\ct�Ì$e^nuTqĽÆ$ÖgÖ��vÃ�ƳÖ^Ö�TIe�jukl�Ue�jDa4n�[^h^cDjw[^_b_zadj�iWjw[vy`_YklatXegh.egXw|`hInuTWjD[ghW[^mIXt�oXwadjDVzeg_`Vbh\cwatjÁp¨e^n�a$cw[�n�[^hWhWatn�c¢e(XwVbhW�^_bacDadjD��VzhIeg_GcD[�e+%$Äd%ÓÖgÖ.Xw|lXscDad���i)I[gj1�E[gjDa�nd[g�EiW_za�cwakladcDegVb_YX7jDad�\e�juklVzhW��cwTIVzX�Vzh^cDadjwp¨egndaqcwTIa�jDate^kladj�XÁTW[^mW_Yknd[ghIXwmW_bc�cDTWaf< %8Ä`%�ÖgÖM%¢adjDVbiITWadjue�_YX8Ƚe�hIkWZf[`[g]y>I�( 3 � . ��=" � �� � " � �� ����Ì8egnuTËĽÆ$ÖgÖ��vÅ�Æ$ÖgÖÂmWhWVbc8TfegX$e4�gjD[gmWiË[gp*pr[^mWj$jDad�^VzXÁcwatjDX[lndndmWi`|`VbhW��pr[^mWj7n�[^hIXwatn�mWcwVzyga��8[^jDkWXE[^h cwTWaqx½~��s�Â�¼�x½~���¾ �ËegiIXGe�XscDjwmIn�cwmWjDa³[gp\cs|`i*ai<w]\_zjDad�^X >Ml�(^�WÖt�4n*[gh\cw[aoegnuT�jwat�gVYXscDadjU�gjD[gmWiº�C 24�o2F� XO24� xZ��/y����6ECE2FGO�k6A��24� � �Z5 �N�m6�� �ZWVbc(� C 24�o2F� XO24���+� ��2 � l¨Ô nuTIegjDe^n¥cwatjUTIegXZ*adathBcDjDeghIXÁpradjDjwaok<Vzh^cD[EcwTWaÅÂaon�atVby^adj�Ä(evcDeE��m��¼adj�ÅÂat�gVYXscDadjo� n%ZWVbc�� C 24�o2F� XO24�E A����24��������� �`��/��5�2 �

l¨�ÏTWadh}Xwa�ct�fe�h�Vbh\cwatjwjDmWilc�VYXnte�mIXwatkBady^adjD|EcwVz��a�ZIV{c1��VYXÂXÁadct� n�ZWVbc4Ö �+/y��/}��2o�N0P�k��/a5R�N2F/1�����

ZWVbc�� C 24/a��24� �d��/��5k2 � � �N� ��2b� ��5"���l¨�ÏTWadh}Xwa�ct�IZWV{c(��VYX�n�_zategjwaokF� n¥�

C 24�o2F� XO24� �+/y��/ ����!c2o� CE2FGO�k6A��24� � �Z5 � ���� �ZWVbc4Öo� ̳jDjw[^j8VzhIklVYnde�cwVz[gh��W�ÂTIadh�XÁadct�ZWVbcDX(�oÒ�� ÅÂatndadVzygatk�nuTIegjDe^n¥cwatjt�lÅÂaoegk[ghW_z|g�hc�N/1��6�0P���A��24� xZ��/y����6sC 2FGO�k6A��2o� � �Z5 ���o6A� �ZWVbc(� hc�N/1��6�0P���A��24�s�N2F/1����� SUTWVYXUVzXnd_baoe�jDatkB�ÂTWadh�kWevcueEVzXU_z[^e^klatkVzh\cw[�cwTWa4SGjue�hIXw�EV{cwcwadj�Ä(evcue��m��¼adjo�Ie�hfk7VYXÂXÁadc��ÂTWadh�cDTWa_YevcwcwadjÂVYXÂjDate^kl|Ecw[ËjDatndadVzygaeghW[�cDTWadj�nuTIe�cDe^n¥cwatj�ZWVbc�� hc�N/1��6�0P���A��24�p �����24���N����� �d��/��5k2 �

l¨�ÂTWadh}Xwa�ct�fnde�mfXÁaoX�eghVzh\cwadjDjDmWilcUcw[ËZ*a��gathWadjuevcDatk�ÂTWathWady^adjÂZWVbc(��VzXÂXwa�co� nhc�N/1��6�0P���A��24� �+/y��/ ����!c2o�pC 2FGO�k6A��2o� � �Z5 � ������ZWVbcDX(�oÒ�� Sºjue�hIXw�EV{cwcwaokBkWe�cDeI�O��jDV{cDa�[ghW_z|g�( 3 �� ��� � � � $ ����� � � � �SUTWa4Å�atn�atVby^adj��\cuevcDmIX�ÅÂat�gVYXscDadj�eg_b�Ue¸|lX8TfegXUVbcDX�_z[v��atXÁce^kWkljDatXDXGXÁcDegjÁcDVbhW�([gh�e�pr[^mWjO��[gjuk�Zf[^mWhIkWegjw|^�cl SUTWaÂegk`ÒkljDatXDXwatX��ÂTWVYnuT<pr[g_z_z[v� e�jDa(eg_b_OÖ�(�ZIV{cÂ[ln¥cue�_�egkIkljwaoXwXwatXt� n

C 2F�m2F� X 2o� hc�N/1��6�0P���A��24�xZ��/1����6 xZ��/y����6

!½ifatjDe�cw[^j�' XUn�[ghfXÁ[^_ba �^�g�g���g��� �^�g���g�g��(jw[^mWi}SU�8[ �^�v�\���g��� �^�v�^�g�g��^�v�\�lÖt��� �^�v�^�g��^�v�^�\�v��� �^�v�g�`�v��(jw[^mWi}SUTWjDada �^���g�WÖt��� �^�����IÖt��^���g�^����� �^�����\����^�v�IÖ¸�v��� �^�v�WÖv�v�Ô�iIegjÁcFprjD[g� cwTWa$[gi*adjuevcw[^j�' XFn�[^hIXw[g_za,Vzh\cwatjÁp¨e^n�aO�ÂTWVYnuTTIe^X&VbcDX�[v�Âh¿XÁcDeghIkWe�juk x�~��s�Ux½�¿_b[lnde�cwVz[gh���cwTWa VzhlÒcwatjÁp¨e^n�aoX4e�jDaE�^evcDTWadjDatk�Vzh\cw[�cs��[}�gjD[gmWiIXElÀpr[gj�jwaoegXw[ghIX�ÂTWVYnuT�egjwa�VbjDjDad_zadyve�h\c½TIadjDa�n¥���ÏV{cDTWVbh�aoegnuTq�^jw[^mWi��FZ`|n�[^h`ygadh\cDVb[^h��tjDad�^VzXÁcwatjDXºe�jDa$e�_z_b[lntevcwaok�Vzh�n�[^hIXÁaon�mlcDVby^a³_z[�Ònde�cwVz[ghIXUXÁcDegjÁcDVbhW�Ëe�cÂcwTWa�_z[v�8aoXscÂegkIkljwaoXwXt�( 3= ��8� $���� � �� ) ����� " �� ��# �#"���� �

<w~½Ã�ƳÖ^Ö�>}l�(g�IÖgÖ�n��.mIXÁc�ZfaBXÁadc�cw[&kla��IhWa^�ºpr[^j�e�iIe�jwÒcwVYn�mI_zegjÂVbhIXÁcDeg_b_YevcDVb[^h��`cwTIa�h\mI��Z*adj�[gpGVzh^cDadjwp¨egndatXUVzhBcDTWa�IjuXsc1cs��[B�^jw[^mWiIXt��e�hIkI<w~½Ä½Æ$ÖgÖ�>tlk(g�WÖ¸�mn��FcwTWaEhW�.ZfatjVzh�cDTWaUcwTWVzjuk��^jw[^mWi��GÔ�h`|4TIe�jukl�Ue�jDa�eg_{cDadjuevcDVb[^hIXº�ÂTIVznuTnuTIeghW�gaok1cwTWaÂe^n¥cwmfe�_`h`mW��Z*adj¢[�p*Vbh\cDadjwp¨egn�aoXº��[gmI_zk�TIe¸ygacw[ËZ*a4jDa #Iaon¥cDatk�Vbh�cDTWa�Xw[�pÀcs�Ue�jDa½Z`|�nuTIe�hI�gVzhW�Ëe�hIk�jDa�Òn�[^�EVb_zVbhI� <Á]`_É� n�>W�le�hfk<jDad_zVbhW]`VzhW�4cDTWa1[gi*adjue�VzhW��Xw|lXscDad�����cÂ�ÂVb_z_¼Zfa1XÁatadh7cwTIe�c�<w]\_z[gi*adhO>�ndeg_zndmW_YevcwaoX³cDTWa�n�[^jÁÒjDatn¥cÂ]^adjDhWad_¼�E[lkla4egkWkWjwaoXwXMlsÖo��ZWV{cuX n8pr[^jUcwTWa�ÅÂaon�atVby^adj�\cuevcwmfXOÅÂad�^VzXÁcwatjGpr[^j¢ategnuT�Vzh^cDadjwp¨egndag��e�hfk4cDTWVzX¢VYXOXÁcw[gjDatkl�(^��$o$4n8Vbh\cD[ËcwTWa4cwTWat<sc e^kWklj >�ad_zad�Eadh\c�[gp,cDTWa.egiWiWjD[�ÒiWjDVze�cwau<scwcs|y>�XÁcwjDmIn�cwmWjDag�( 3= �� ( � ��� �#�!0=��� � � ���8������� � � � �

SUTWa4y^atn�cw[gj½egkWkljDatXDXwatXUpr[^j�cwTIa��IjuXsc½Vbh\cwatjÁp¨e^n�a�egjwa.�g�g�e�hfk��g�m$�lrpr[gj¢jwaon�atVby^adj¢e�hIk4cwjue�hIXw�EV{cwcwadj¢Vzh\cwadjDjDmWilcDXt�vjDa�ÒXwifaon¥cwVzygat_b|1n��,Ô½kWklVbcwVz[ghIeg_WĽÆ$ÖgÖ ��Ã�ƳÖ^Ö³Vbh\cDadjwp¨egn�aoX,TIe¸ygaygaon¥cD[gjºe^kWkljDatXDXÁaoXF�ÂTWVYnuT�e�jDa$e�_z�Ue¸|`XºevcG_zate^Xsc,�m#g�^�W�oe�hIk�ÂTWVYnuTÏe�jDa�e^XwXwVz�ghWaokÑe^ndn�[^jDkWVbhW��cw[�jDmW_zatXË�ÂTIVznuT cDeg]gaVzh^cD[Ñnd[ghIXwVzkWadjuevcwVz[ghÏ[gcwTWatj7Vzh\cwadjwp¨egndatXB�ÂTWVYnuTÐ�Ëe¸| Z*aiWjDatXwadh\ct�SUTWa�Xwatnd[ghIk���[gjuk�[�p³e�h}Vzh\cwadjDjDmWilc½kl[^mWZWVza�c�VYXÂcDTWa<ÁhIad�MiWjD[ln�aoXwXw[gj�XscuevcwmfX >��8[^jDk���SUTWa �Iyga�_b[v�:[gjukladjZWVbcDX�[�p�cwTWVYX��8[^jDkÏ�Ëe¸|ÎZ*a�nuTI[^Xwadh egjwZWVbcwjue�jDVz_b|^��e�hIke�jDa1Vbh�p¨e^n¥c�mIXwatkBcw[<kWa �IhWa1cDTWa��EVbhI[gj�klaty`Vznda�h\mI��Z*adjl¨n�ps�}e}XÁVz�EVb_Ye�j4mfXÁaEcD[&klVYXscDVbhW�^mWVYXÁT�cDTWa<yve�jDVb[^mIX1]`VbhfkWX[�pu<scDjDegiIX > � Xwada&�`TWata�c7�\�mn¥�ÐÔ �Ëe^XÁ]^atkÑygadjuXwVb[^h [�pcwTIa�hIad�:iIjw[ln�aoXwXw[gj�XscuevcDmIXE�8[^jDk�VzXEiWjD[vy`VzkWatk�cD[�cDTWaVzh^cDadjDjwmIilc³TIe�hfkl_bVzhW�4jD[gmWcwVzhWatX³e^X¢cwTIa�iIe�jue��EadcwadjS<Dkladyy>l¨Xwada1a^� �f�O_bVzhWaS(g�`�v�on��( 3= �� , $�� 0=� � ) ���� ��a(nte�h<hW[v�ÎcDmWjDh<cw[�e�kladcDegVb_zatkBXscDmIkl|Ë[�pºcwTWa1n�[lkla½VbhcwTIa �I_zatX�<w]\_É� nA>+l �`TWata�cj(g�4n$eghIkP<ÁcÁcs|g� nA> l �`TIada�cuXj(WÖ�cw[

×o(

Page 107: A Commentary on the Sixth Edition UNIX OS -- Lions

(\�mn¥�¢��a�XÁTIeg_b_¼_z[`[g] �IjuXsc�e�c�<w[gi*adhWVzhW�o>�e�hfk3<Dn�_z[^XwVbhW�4>cDadjD��VzhIeg_zX¢egX¢nuTIegjDe^n¥cDadj¢XÁi*atndVzeg_ �f_baoX,eghIk�cwTWaUTIeghIkl_zVbhW�[gp½Vzh^cDadjDjwmIilcDXt�ÐSUTWadh VzhÑcDTWa}hWaA9\c7nuTfe�ilcDadjË��a�XwTIeg_b__z[`[g]}evc1cwTIa.jDatndadVzilc([gp8kWe�cDe7prjw[^� cwTWa�cwatjw�EVzhIe�_É��e�hfk�Ihfe�_z_b|ËcDjDeghIXw��VYXDXÁVz[gh�[�p¢kWevcue�cD[EcwTWa1cDadjD�EVbhIeg_ �

<Á]`_zjwaoegk1>El�(g�^�^�on¥��<Á]`_b�ÂjDVbcwa�>El�(g�^�g�4nOe�hIkP<Á]`_zXw��cwcs|y>lk(g�g×^�on$TIe¸yga�eg_bjDate^kl|ËZfatadh}klVYXwndmIXDXÁaokBegZf[vy^ag�( 3 ��13 ��� �8� � � � ( ,��SUTWVYX½iWjw[lndatklmWjDa�VYX½nte�_z_baok�cw[3<w[gi*adha>Ëe<cwatjw�EVzhIe�_,egX�enuTIegjDe^n¥cDadj�Xwifaon�VYe�_��I_zag�½SUTIVzX1ndeg_b_GVzX½mIXwmIe�_z_z|��Ëe^kla�Z`|cDTWa�iWjD[g�gjue�� < �¸adcDn �vVbhIV{c >�pr[^j�ate^nuT7cDadjD�EVbhIeg_��ÂTWVYnuT�VzXcD[4Zfa½egn¥cDVby^aÂVbh�cDTWa½Xw|lXscDad���¢�lVbhInda�nuTWVz_zk�iWjD[ln�aoXwXwatXOVzhlÒTWatjwVbcOcwTIaÂ[gi*adh �I_zatXO[gpIcwTIadVzj³iIe�jDadh\cuXd��Vbc³VYXOhW[�c³mfXÁmIeg_b_z|hWaon�aoXwXDe�jD|7pr[^j�[gcwTWatj½iWjD[ln�aoXwXwatX�cw[3<w[gi*adha><cwTWaEklaty\VYn�aeg�^e�Vzh��,��c8�ÂVz_b_*Z*a�hW[gcwatkËcwTIe�c$cwTIa�cwTIadjDa�VYX³hW[�evcÁcDad�EilccD[1XÁcw[^i4cs��[1mWhWjDad_Yevcwaok4iWjD[ln�aoXwXwatX,TIe¸y`VzhW��cDTWaUcwatjw�EVzhIe�_e^XÂe�h�[gi*adh �I_za4XÁVz��mW_bcDeghWad[^mIXw_b|^�\ Q ,Ov(� Í8TWaonu]ËcwTWa��EVzhW[gj�kWady`Vznda1h\mI��Z*adj,\ QOB Q(� Æ�[lntevcwa(cDTWa4e�iWiIjw[^iWjwVYevcDa <ÁcÁcs|y>EXscDjwmfn¥cwmIjwa�\ QOB���� ��p�cwTWaËiWjD[ln�aoXwX1[^ifathWVbhI�BcDTWa �I_zaËTIegX1hI[�e^XwXw[�Òn�VYevcDatk7nd[gh\cwjD[g_z_zVbhW��cwatjw�EVzhIe�_FklaoXÁVz�ghIe�cwa�cwTWa�n�mIjÁÒjwath\c,cDadjD�EVbhIeg_lpr[gj³cwTWVYX³jD[g_zag� l¨~�[gcwaÂcDTIevcOcDTWa�jDa�pÀÒadjDadhInda�XÁcw[gjDatk�VYX�cwTWa�egkWkljDatXDX�[gp$eP<ÁcÁcs|y><XÁcwjDmIn¥ÒcwmWjDag� n �\ QOB B(� �\cD[gjDaÎcwTWaÏcDadjD�EVbhIeg_7klaty\VYn�aÏh`mW�.Zfatj�Vzh cwTWa

<scwcs|F>�XÁcwjDmIn¥cDmWjwa\ QOB �(� Í�e�_Yn�mI_ze�cwa�cDTWa1egkWkljDatXDX³[gp�cwTIa(egiWiWjD[giWjDVze�cwa�Xwa�c[�p¢klady`VYn�a1jwat�gVYXscDadjuX8pr[gjUcwTIa1cwadjD�EVbhfe�_ºeghIkBXÁcw[^jwa\ Qa7 g-� ��p�cwTWa�cwatjw�EVzhIe�_�VYX}hW[gcqe�_zjwaoegkl| <w[gi*adha>I�(kl[XÁ[^�Ea(VzhWVbcwVYe�_zVzXDevcDVb[^hB[gpºcDTWaf<scwcs|F>EXÁcwjDmIn¥cDmWjDa��z�\ Qa7�v(� <sc XscuevcDa�>�VYX$Xwa�c8cw[�XwTW[v� cwTWa �I_za�VzX�<Á[^ifatha>W�\XÁ[cwTIe�c8cDTWa1hWa�9`c�cwTWjDada1_zVbhIatX��ÂVb_z_¼hW[�cÂZ*a1a�9latndmlcwaokV{p½cwTWa �I_za�VzXE[^ifathWatkÑe�Xwatnd[ghIk�cwVz�Eag�$i*[^XDXwVbZW_z|mWhIkl[^VbhI�.cDTWa�a �¼atn�c�[�p¢er<wXÁcÁcs|y>.Xw|lXscDad�:nte�_z_ �

<sc XÁcDe�cwa�> VYX�e�_YXÁ[ Xwa�c�cw[ XÁTI[v� <uÍ�Ô½Å�Å !(~>l�<Dnde�jDjDVbatj�[ghO>on¥�ËSUTWVYX1VYX�e�Xw[�pÀcs�Ue�jDa�#*e����ÂTWVYnuTXÁTI[v��X�cDTIevc�cwTWaEcDadjD��VzhIeg_³VzX4_b[^�gVYnde�_z_z|qadhIegZW_zatkF�jwat�^egjDkl_zatXDXÂ[gpOcwTWa.cwjDmWa�Tfe�jukl��egjwa.XscuevcwmfX�[gpOcwTWacwatjw�EVzhIe�_É�G��pj<¥Í�Ô�Å�Å !(~`>1VzX³jwaoXÁadcOpr[gj8e(cDadjD�EV{ÒhIe�_É�`cwTIa�XÁ|lXÁcwat� 6 ��� ��5k� Vb�^hW[gjDa�e�_z_FVbhWiImlc�prjD[g�cwTWa(cDadjD��VzhIeg_ �l¨SUTWVYX1kl[`atX½hW[�c�Xwadad� cD[BZ*a�adh\cwVzjwat_b|�cDjwmIag��e�hfkcwTWVYXUi*[gVzh^c��ÂVz_z_�Zfa1cue�]^adh�mWi}e��^egVbhB_ze�cwatjt� n�

\ Qa7 ~ � SUTWa(Xscue�hIkWegjDk�cDadjD�EVbhIeg_fVYX�egXDXÁmW�EaokEcw[.Zfa(mWhlÒe�ZW_zaEcw[&Vbh\cwatjwiIjwadc4TW[gjDV( t[gh\cDeg_OcDegZIXt�ºcD[&XÁmIiWif[^jÁc[ghW_z|.cwTWa(��$�nuTIegjDe^n¥cDadj³Ô½�fÍ8�Á�$XwmWZIXwa�co�gcD[�jDmWhËVbhprmW_z_½klmWiI_baA9 �E[lkla&eghIkÑcw[�jDa � mWVzjwa�Z*[�cDT <wndegjÁÒjwVYe��^a�jDa�cDmWjDha>Îe�hIk <Á_zVzhWa�pradaok1>ÏnuTIe�juegn�cwatjDXBcw[iWjD[vy\VYklaOhW[^jw�Ëeg_�<ÁhIad��_bVzhWa�>�iWjD[ln�atXDXwVbhW�f�RlÉÍ8[^mW_zkcwTWVYXUZ*a4eËÇ}[lklad_Z#o#�cDad_za�cs|`i*a %�n�

\ Qa7�\-� SUTWas<ÁatjDe^XÁa�>�eghIk}<Á]`Vb_z_ >(nuTfe�juegn¥cDadjuXGegjwaÂXwa�c$e^n¥Ònd[gjuklVzhW��cw[�cwTWa4x½~���¾¿nd[gh`ygath\cwVz[gh \ Q gZ�'� SUTWa.Å�atn�atVby^adj4Í8[gh\cwjD[g_O�\cuevcwmfX�jDad�^VzXÁcwatj½VYX�VzhWVbÒcDVzeg_bVYXwatk��ÂVbcwT�cDTWa7iIe�cÁcDadjDh <w�WÖo�m#o>�Xw[�cwTfevc�cDTWacDadjD�EVbhIeg_4VYX}�Ëegkla�jDate^kl|g�1jDategkWVbhW�ÎVYX}adhfe�ZW_zatkeghIk�jwaon�atVby^adjUVbh\cDadjDjwmWiWcDXÂe�jDa(adhIegZW_baok�\ Q g ,%� SUTWaBSGjue�hIXw�EV{cwcwadj<Í8[gh\cDjw[^_U�\cuevcDmIX�jDad�^VzXÁcwatj�VYXVzhWVbcwVYe�_zVzXwatk&XÁ[ËcDTIevc1e�h}Vzh\cwadjDjDmWilc½�ÂVz_z_GZ*a��^adhWatjÁÒe�cwaok��ÂTWadhIadygatj�cDTWa8Vzh\cwatjÁp¨e^n�a³VYXºjDate^kl|(cw[½jwaon�adVzygaeghW[�cDTWadj�nuTfe�juegn¥cDadjo�~�[gcwaBcwTIe�c�cDTWa <Á[gi*adhO>qjD[gmlcDVbhWa�kl[`atX.hW[gcEklVYXÁcwVzhlÒ�gmIVzXwTËZfadcs�8atadhEcDTWa�nde^XÁaoX³�ÂTWatjwaUcDTWa �f_ba�VYX³[^ifathWatkËpr[gjjDategkWVbhW�&[ghW_z|g�³[^j.�ÂjDVbcwVzhW�&[^hW_b|^�³[gj.pr[gj�Z*[�cwTÑjwaoegklVzhW�e�hfk7�ÂjDV{cDVbhI�I�

( 3= �� � � � � ����� � � � ���

\ Q g ~ � ),VbhIkÏcwTWa�egkWkljDatXDXË[gp�cwTWa�e�iWiWjD[giIjwVYevcDa <scÁcs|y>XÁcwjDmIn�cwmWjDa Vbh cDTWa¿egjwjue¸|?[�p�XwmInuT XscDjwmIn�cwmWjDatXt�<w]`_ Ö^Ö�> l�(g�IÖo�on¥��l¨SUTIVzXË[^ifatjDe�cwVz[ghÑ�Ee¸|ÑZfa}[^ZlÒXwadjDygaok�Vbh<eg_b_IcwTWa�iIjw[ln�aoklmWjDatX¢VzhËcwTIa�XÁaon�[^hIkEn�[g_bÒmI��h}[gp$�`TWadadc`(g�I�Ie�hfkBVbcDX�jwat_batyve�hInda4XÁTW[^mW_YkBZ*ahI[�cwaokF� n

\ Q gO\-� <Á� #ImfXÁT\cÁcs|y>flk(^�lÖv��nUeg_b_z[v��X�cwTWa.[gmlcDiWmlc � mWatmWapr[^j�cwTIaËcwatjw�EVzhIe�_OcD[ <wkljue�Vzha>�e�hfk&cDTWadh #ImfXÁTWaoXcDTWa�VzhWiWmlc � mWatmWa\ Q g��-� <sc XÁcDe�cwa�>.VYXÂjDatXwa�c�Xw[.cDTIevcp<w�Á�a!d%$Ì8~>.e�hIk

<¥Í�Ô�Å�Å !(~>Ee�jDa1hW[E_b[^hW�gatj8cDjwmIag�( 3= �� ' � � � " ��� � �� � �SUTWVYX�iIjw[ln�aoklmWjDa�VYX�aA9latn�mWcwatk&Vbh�jwaoXÁi*[ghfXÁa�cw[Be<cwjue�hIXÁÒ�EV{cwcwatjÏVbh\cwatjwjDmWilco� ��cÏXwTW[^mW_zk/Z*a n�[g�EiIegjwaokM�ÂVbcwT<Ái¼n�iIVbh\c > l�(\��#g×4nUe�hIk <w_biWVzh\c >blk(g×`�v�on��Â~�[�cDa�cwTfevc�cDTWaiIegjDeg��adcwatj`<Dkladyy>½VzX¢e(�ËegXw]gatk�ygatjDXwVb[^hElr_z[v��[^jDklatj��IygaZWVbcDXÂiIjwaoXÁatjwy^atkan$[�p,cwTWaf<whWad��iWjD[`ndatXDXÁ[^j�XÁcDe�cwmIX >��8[^jDkVzhÑcDTWa}Vzh^cDadjDjwmIilcËygatn�cw[^jt� %$jw[vy`VYklatk�cwTWa}y^atn¥cD[gjE�UegXiWjD[gi*adjD_b|�VbhIV{cDVzeg_bVYXÁaokF�,cwTWaB�EVbhW[^j.klaty`Vznda<h`mW��Z*adj.�ÂVb_z_Z*a�iWjw[^ifatjw_z|ËVYkladh\cwV �IaokF�SUTWa�XÁaon�[^hIk<iIegjÁcÂ[gp�cwTWa(cDatXÁcU[^hB_zVzhWaS(g�\�N$��ÂVz_b_FZ*aklVYXwndmIXDXÁaokBe�c�cDTWa�adhfkB[gpGcDTWa�hWaA9\c�nuTIegilcwatjt�( 3= �� � � ���!" ��� � � � ���SUTWVYX&iIjw[ln�aoklmWjDa�VYX&aA9`aon�mlcDatk Vzh jDatXwif[^hIXwa�cw[LeÐjDa�Òn�atVby^adj8Vbh\cwatjwjDmWilco�¢��c�VYX$hI[�c�Xw[�jDate^klVz_b|Ën�[^�EiIe�jDatkE�ÂVbcwT<Ái¼n�jDVzh^c >Pl�(`�`Öo×on�eg_{cDTW[gmW�^T�XÁVz�EVb_Ye�jDVbcwVzatX�ndadjwcDegVbhW_z|�a�9`ÒVYXsco�\ QO\ B-� ÅÂate^k<cDTWa1VbhIiWmlc½nuTIegjDe^n¥cDadj8prjw[^�?cwTWa�ÅÂaon�atVby^adjÄ(evcueË��m��*atjÂjwat�gVYXscDadj,\ QO\O7(� ̳hIegZW_za½cDTWa�jDatn�atVby^adj8pr[gjUcDTWa�hWa�9`c�nuTIegjDe^n¥cDadj,

×g×

Page 108: A Commentary on the Sixth Edition UNIX OS -- Lions

\ QO\�g-� SUTWa�n�[g�E�Eadh\c½XDe¸|lXp<wTIe�jukl�Ue�jDa(Z*[�cunuTa>W�½�8adcÁÒcwatjÂZfat_bVzady^a(Vbc�\ QO\ v(� %OegXDXOcDTWa�nuTIe�juegn�cwatj³cw[}<scwcs|`VbhWiImlc >4cw[�VbhIXwadjwcUV{cVbh\cD[.cDTWa4e�iIiWjw[^iWjDVze�cwa+<Ájue¸�e>4VzhWiWmlc � mWatmWag�

Öo�g�

Page 109: A Commentary on the Sixth Edition UNIX OS -- Lions

�!D E�� � � � �A� ����� ��� �0���h&cwTWVYXd��cwTWa�_ze^Xsc�nuTIegilcwatjt�*cwTIa�Vzh\cwjDVzntegndVbaoX�[gp$Vbh\cDadjuegn¥ÒcDVby^a.cDadjD�EVbhIeg_OTIe�hfkl_batjDX1egjwa �IhIeg_b_z|qmWh`ygatVb_zatk���Vbhfn�_zmIk`ÒVzhW���� /�� cwTWa�Tfe�hIkl_zVzhW�4[�p¼cDTWap<ÁatjDe^XÁa�>1e�hIkE]`Vz_b_*nuTIe�juegn�cwadjuX�� �� cwTIa�nd[gh`ygatjDXwVb[^h�[�p8nuTIegjDe^n¥cDadjuX�klmWjDVbhI�7VzhWiWmlc4e�hfk[gmlcDiWmlcÂpr[^jÂmWiWi*adj�nde^XÁa1[^hW_b|<cwadjD�EVbhfe�_YX�� ��� cwTWa�VbhfXÁatjÁcDVb[^h?[�p&klat_ze¸|lX�e�pÀcwadjÑyve�jDVb[^mIX Xwifaon�VYe�_nuTIe�juegn�cwatjDX�XÁmfnuT�e^XY<wndegjwjDVYe��ga½jwadcwmWjDha>I�SUTWa³jD[gmWcwVzhWatXj<w��cwcs|F>Mlk(WÖt�\�mn��a<wXÁcÁcs|y>Ml�(IÖ�(o#on¥�O<wXw��cwcs|F>

(\��eWÖ�n�eghIk=<scÁcs|lXÁcÁcs|y> l�(^�\�g�mn4��adjDa}klateg_{cË�ÂVbcwTWVzh cwTWaiWjDady`Vz[gmIXUnuTIegilcwatjt�( � �� � 0�� � � � & � �8( � (��SUTWaÂiImWjwi*[^XwaU[�pfcwTWVYXOiWjD[ln�atkWmWjwaUVYX,cw[f<whW[gjD�Ëe�_zVzXwa�>�cwTWa� mWatjwVzatX�egXDXÁ[lndVze�cwatk��ÂV{cDTÑeqife�jwcwVYn�mW_Ye�j.cwatjw�EVzhIe�_É����cDXa��*aon¥c�VzX(cD[�cwadjD�EVbhfevcwa.cwjue�hfXÁ�EVYXwXwVb[^hqcD[BcDTWa�cwatjw�EVzhIe�_pr[^jÁcDT\�ÂVbcwT4eghIk½cw[ÂcDTWjD[v��e¸�Ue¸|�e�h`|½e^ndndmW��mW_YevcDatk(VzhWiWmlcnuTIegjDe^n¥cDadjuXd�\�,OgO\(� SUTWjD[v�Le¸�Ue¸|<atygadjD|\cwTWVzhW�EVzh}cwTWa <wn�[`[^]gatka>.VzhlÒiWmlc � mWatmWa�\�,Og��(� klVbcÁcD[Epr[gjUcwTIa�[gmlcDiWmlc � mWadmIa�\�,av Q(� ��e�]gatmWi e�h`|�iWjw[lndatXDX}��egV{cDVbhI�Îcw[ aA9`cwjuegn¥c&enuTIe�juegn�cwatj$prjD[g�?cDTWaf<Ájue¸�e>.VbhWiImlc � mWadmWa�\�,av���� klVbcÁcD[Epr[gjUcwTIa�[gmlcDiWmlc � mWadmIa�\�,av B(� Å�egVzXwa�cwTWa&iWjw[lndatXDXÁ[^jËiWjwVz[gjDVbcs|�cw[�iIjwatygadh\c7eghVbh\cDadjDjwmWiWc�prjD[g�McwTWa1cDadjD��VzhIeg_F�ÂTWVb_zaË�z�b�\�,avO7@� cwTIaf<Ájue¸�e>4VzhWiWmlc � mWatmWa1VzX #ImIXwTWatkF�\�,av�g-� cwTIa�<Dklad_zVz��Vbcwatj³n�[^mWh\c >½VzX¢iWjD[gi*adjD_z|4XÁadc,cD[ dadjD[I�< #ImIXwT^cwcs|y>EVzX½nde�_z_zatk�Z`|@<w� #ImIXwT^cwcs|y>fl¨Xwada4Z*ad_z[v�nÂe�hfk<ÁcÁcs|`VbhIiWmlc >ulk(m#�$\�W�1(o#^���4n³�ÂTIadh�adVbcwTWatj �� /�� cwTWa�cDadjD��VzhIeg_ÂVzXEhW[gcË[gi*adjuevcwVzhW��Vbh"<Ájue¸�e>q�E[lklae�hIk7eb< � mWVbc >.[gj�<wklat_badcwa�>�nuTIegjDe^n¥cwatj$VYX�jwaon�adVzygaokprjw[^�?cwTIa1cwadjD�EVbhfe�_ l[gj� �� cwTIai<Ájue¸�e>ÂVzhWiWmlc � mWadmIa$TIe^Xº�^jw[v�Âh1mWhWjDate^XÁ[^hIe�ZI_b|_zegjw�^adl¨iWjDatXwmW�Ëe�ZW_z|�Z*atnte�mIXwaÂhW[�iWjD[ln�atXDX¢VYXOjwaoegk`ÒVbhI��VzhWiWmWcÂprjw[^�McwTIa1cwadjD�EVbhfe�_ n�( � -( � 0�� � � � & � �8(=� � �SUTWVYX�iIjw[ln�aoklmWjDa4�Ue�VbcDX�mIh^cDVb_GcwTIa � mWadmIa4[�p$nuTIegjDe^n¥cDadjuXpr[^j�e&cwatjw�EVzhIe�_�VzX�at��iWcs| lrZ*atndegmIXwa<cwTIad|�' y^a�eg_b_�Z*adadhXwadh\c * n e�hIkÐcwTWathLnte�_z_zX@< #fmIXÁT\cwcs|F>�cw[În�_zategh mWi cwTWaVzhWiWmlc � mWatmWatXt�

<Á� #fmIXÁT\cwcs|F>�VYX�ndeg_b_zatk l�#^�^��#4n�Z`| <w]`_znd_b[\XÁa�>W�.SUTIVzXkl[`aoXÂhW[�c�Tfe�iWi*adh}y^adjD|<[�pÀcDadh �7Vbh�p¨e^n¥c�[^hW_b|7�ÂTWadhqeg_b_

�I_zatX�jDa�pradjDadhfn�VzhW��cDTWa(cwatjw�EVzhIe�_�egjwa1n�_z[^Xwatk7V � ag�OmIXwmIeg_b_z|[ghI_b|<�ÂTIadh�cwTWa�mfXÁatjÂ_b[^�^X�[ �¢���c�VzX1e�_YXw[Bndeg_b_zatkqZ\| <ÁcÁcs|lXÁcÁcs|y> lk(^��(^×on 4smIXsc�Z*a�pr[^jwacwTIa�cDadjD��VzhIeg_fath\y`Vzjw[^hW�Eadh\c8ife�jue��Ea�cDadjuX$e�jDa½e^k#4smIXÁcwaokF�( �< ), ) � �# � � � � �=� 0 �)W[^j7e�iWjD[g�^jDeg� jwa � mWatXÁcwVzhW��VbhIiWmlc7prjD[g� e�cwatjw�EVzhIe�_É�cwTIadjDa�VYX8e.nuTIe�Vzh<[�p�iIjw[ln�aoklmWjDa�ndeg_b_YX8�ÂTWVznuT7a�9`cwathIkWX$cw[<scwcwjDate^k1>7�z�z�( �< 3 � �2� � � � � �8, ���\�g17��'� Í8TWatnu]�cDTIevcUcwTIa½cDadjD�EVbhIeg_¼VzX 5�� G ���m/a5�5 � e^n¥cDVby^a�\�g17�B-� ��pIcDTWadjDa�e�jDa�nuTfe�juegn¥cDadjuXºVzh�cwTWaY<Dn�[`[g]^atk1>�VbhWiImlc

� mWatmWa �O� e�nde�_z_g[^hf<wnte�hW[^ha>Ml�(^�\��$Fn*VzXGXÁmIntn�aoXwXÁprmW_�z�z�\�g17 7(� cwjue�hIXÁpradj�nuTIe�juegn�cwatjDX³prjw[^�ÓcDTWa+<wn�[`[^]gatka>1VbhWiImlc

� mWatmWa�mIh^cDVb_*adVbcwTIadj$Vbc8VYX8ad�Eilcs|�[gj$athW[gmI�gT<nuTIegjÁÒe^n¥cDadjuXOTIe¸ygaÂZ*adathEcwjue�hIXÁpradjDjDatk�cw[�XwmWVbc³cwTWa�mIXÁatj�' XjDa � mWVzjDad�Eadh\cDXt�( �< �� � � ��� � � ( � 3 �SUTWVYX iWjw[lndatklmWjDaLVzXÏnte�_z_baokMZ`| <scwcwjDate^k1> lk(^�N$4#on�cw[cwjue�hfXspratj(nuTIegjDe^n¥cDadjuXÂprjD[g� cwTIat<wjDe¸�e>ËVzhWiWmWc � mWatmWa.cw[cwTIa <Dn�[`[g]^atk1>�VzhWiWmWc � mWatmWaYl¨evpÀcDadjUiWjD[ln�atXDXwVbhW�t<ÁatjDe^XÁa�>e�hfk <Á]`Vz_b_ >LnuTIe�juegn�cwadjuX&eghIkF�ËVzh¿cDTWaÏnde^XÁaÑ[�pBmIiWifatjnde^XÁaB[ghW_z|�cwatjw�EVzhIe�_YXt�³iWjD[`ndatXDXÁVzhW�I<ÁatXDndegifaok1>qnuTIegjDe^n¥ÒcwatjDXt�WVÉ� a^�8nuTIegjDe^n¥cDadjuX8iIjwaon�atkWatk�Z`|<cwTIa�nuTIe�juegn�cwatj`_ � ' n��<wnte�hW[^ha>qjDa�cDmWjDhIXEe&hW[^hlÒ dadjD[&yveg_bmWa�Vbp�cwTIa <Dn�[`[g]^atk1>VzhWiWmlc � mWatmWa�VzXUhI[�_z[ghI�gadjÂat�Eilcs|g�\�,a\O7(� ��pºcDTWa�h`mW��Z*adjÂ[gp¢klat_bVz�EV{cDadjuXUVbhBcwTIaf<Ájue¸�e>4VzhlÒiImlc � mWadmWa�VYX datjw[�cDTWadh��z�b�\�,a\�g%� V{p*cwTIaUcwadjD�EVbhfe�_lVYX¢_b[^�gVYnde�_z_z|4Vbhfegn¥cDVby^ag�vcDTWadh 4smIXÁcjDa�cDmWjDh \�,a\ v-� [�cDTWadjD�ÂVzXwa(�g[�cw[z<DXÁ_zadatia>W�~�[gcwa�cwTIe�c(klat_bVz�EV{cDadjuX½Vzh}cDTWVzX1nd[gh\cwaA9\c(e�jDa.nuTIegjDe^n¥cwatjDX[�p$eg_b_,[ghIatXil¨[ln¥cDeg_Gyveg_bmWa.VzXd#\�^��nÂeghIkqegjwa.VbhIXwadjwcwaok}Z`|<scwcs|`VbhWiImlc >ul�(o#^�m(on¥�\�, ���'� �`a�cf<wZWia>Bcw[�i*[gVzh^c�cD[�cwTWaEcDTWVbjuk�nuTIe�juegn�cwadj([�pcDTWa���[gjD]<e�jDjDe¸|^��<DndeghW[gh`Za>2\�, ��,%� ��ad�gVzh7e._b[`[^itlraA9`cwadhfklVbhI�.cD[._zVzhWaS(m#WÖ�(on¢�ÂTIVznuTjDad�E[vy^atXÂ[^hWa�nuTIegjDe^n¥cwatjÂprjD[g�/cwTWat<Ájue¸�e> � mWatmWai*adj½n�|ln�_za�\�, � B-� ��p�cwTWa�nuTIegjDe^n¥cwatjËVzX�e kWad_zVb�EVbcwadjo��jDatklmfn�aqcDTWakWad_zVb�EVbcwadj4nd[gmWh\c1Z`|q[ghWaEe�hfkqa�9lVbc1cwTWaE_z[\[^i&VÉ� a^��^[�cw[E_bVzhWa*(o#WÖt×2\�, � ~ � ��pEcwTWa�cDadjD��VzhIeg_�VYX}hW[�cq[^ifatjDe�cwVzhW�ÏVzh <Ájue¸�e>�E[lklaË�z�b�

Öt�WÖ

Page 110: A Commentary on the Sixth Edition UNIX OS -- Lions

\�, � \(� ��p,cwTWa�iWjDady`Vz[gmIXÂnuTfe�juegn¥cDadjMlrhW[gcwa1cDTWaf<ÁZWi�{ �¼Ö�| >hW[�cuevcDVb[^h�* n��UegX�hI[�c�eqZIegnu]lXw_ze^XÁT��c_ � 'z�¢a�9latndmlcwacwTWa�n�[lkla�prjw[^� _bVzhWar(^��×^×�cw[ (m#^�\�`�U[gcwTWatjw�ÂVYXÁaa�9latndmlcwa(cDTWa4n�[lkla1Z*ad�gVzhWhWVzhW�<e�cU_zVzhWa*(m#^�g×W�LM�N24XZ��� ��6Y� ��/y�N/1����2o�u[i/a6s���O�s/�/1� �Z6�5k/16 �

\�, � �(� ��p,cwTWa4nuTIegjDe^n¥cDadjuX$VYX�e�h <ÁatjDe^XÁa�>�eghIk��b�z�\ BOQ Q(� VbpËcwTWatjwa�VYX&e�c&_zategXÁc&[^hWa�nuTIe�juevcDadj}cD[ÐadjuegXwag�ZIegnu]`mWi7cwTWa�i*[gVzh\cwatjp<ÁZWiO> \ BOQ�,-� �\cue�jwc,[^h4cwTIa8hWaA9`cOnd|ln�_za$[�pIcwTWaU_z[\[^i�Z*ad�^VbhWhIVbhW�evcÂ_zVbhWa*(\��×\�&\ BOQO7@� ��p`cwTWa8nuTIe�juegn�cwadj¼VYX�eY<Á]`Vz_b_ >W�tcwTIjw[v��e¸��e¸|�eg_b_�cwTWanuTIe�juegn�cwatjDX.egndndmW��mI_ze�cwatk�pr[gjEcDTWa}n�mWjDjwath\c�_zVbhIag�Z`|<�g[^VbhW��ZIe^nu]Ëcw[E_zVbhWa*(\��×^� \ BOQ v(� ��p(cwTWaqnuTIegjDe^n¥cDadj�VzX<egh=<wad[gc > l¨�g�m$4n+lrmfXÁmIeg_b_z|�gathWadjuevcDatk�evc³cDTWaÂcwatjw�EVzhIe�_fegXS<Dn�[gh\cDjw[^_{Ò�Ä`>4n¥�vVz��ÒhW[gjDaÂVbcdl¨eghIk<kl[�hW[�c$iImlc8Vbc8VzhW[�c�<wnte�hW[^h\ZO>on¢e�hfkXscue�jwcÂ[ghBcwTWa�hWaA9`c�n�|ln�_za�

lr��pqcDTWVYXÏnuTIe�juegn�cwadjÑ[lndn�mIjDX evc cwTWa Z*ad�^VbhWhIVbhW�[�p�e}_zVzhWag�OcDTWadhÑXÁmWZfXÁa � mIadh\cw_z| <scÁcDjwaoegk1>3l�(^��$m$Fn�ÂVb_z_��fhIk�hW[7nuTIegjDe^n¥cDadjuXUVbh�cDTWa <Dn�[`[g]^atk1>�VzhWiWmlc� mWadmWaBV � ag��VbcE�ÂVb_z_Ujwaoegk�e dadjD[&_zadhI��cwTÑjwaon�[^jDkF��ÂTWVYnuT4cwTIadhE_baoegkWXGcD[½cDTWaUiWjD[g�gjue��LjDatn�atVby`VzhW�½cwTWahW[gjD�Ëe�_q<ÁathIkB[�p��I_ba�>�VbhIkWVzntevcwVz[ghº� n

LM�N24XZ��� ��6Y� ��/y�N/1����2o�u[i/a6s/�/1� �Z6�5k/16 �

\ BOQ �(� ��pM<Á�Ëe�ilcue�Z�{ n | >.VzXÂhI[ghlÒ datjw[f�`eghIkBadVbcwTWatj<Á�Ëe�iWcDe�Z�{ n�| � � nA>�[^jËcwTWa�cDadjD�EVbhIeg_�VYXEmWiWi*adjnde^XÁa([ghW_z|g�WcwTWath��z�z�

\ BZ�yQ(� VbpfcDTWaU_ze^Xsc³nuTIegjDe^n¥cwatj¢ZWmlcO[ghWaU�UegX ���a� e(ZIe^nu]^ÒXÁ_YegXwT l _ � ' n��OcwTIadh jDadiI_ze^n�a3<DnA>}Z`| <w�EegilcDegZ�{ n | >e�hIkBZIe^nu]<mWi <ÁZWiO>+l XÁ[�cDTIevcÂcDTWa�ZIegnu]lXw_ze^XÁTB�ÂVb_z_Zfa�atjDe^XÁaokan¥�J ��/y�N/1����2o�+�N2F/1���

\ BZ�1g-� Ç}[vy^ad<DnA>�Vzh^cD[ÂcwTIaOhWa�9`cGnuTIegjDe^n¥cDadj¼Vbhf<DndeghW[gh`Za>I�e�hIkBVbpGcDTWVzX�e�jDjDe¸|EVYXÂhW[v�ÐprmI_b_É�W_zate¸yga½cwTIa�_b[`[giº��c����2b�m� 0���5�24��2F�

\ BZ���(� Ô�c�cwTWVYX�if[^Vbh\ct�legh<VbhIiWmlcU_bVzhWa(TIegX8Zfatadh�egXDXÁat�.ÒZW_zatkBVbh�cwTIa4e�jDjDe¸|r<wnte�hW[^h`Za> \ B , ,-� �`TWVbpÀcLcwTWa n�[^h^cDadh\cDX�[�p�<DndeghW[gh`Za>?Vzh\cw[:cwTWa

<wnd[\[^]gaok1>1VbhIiWmlc � mIadmWa^�\eghIk<jDa�cDmWjwh<e <wXwmIndndatXDXsÒprmW_ >.jDatXwmW_bct�

( �< �' � � �� �� T � SUTWa³jDategXw[gh(�ÂT`| <wZWia>�XÁcDegjÁcuXRl�(\��×IÖ�n¼evcºcwTWaOcDTWVzjDknuTfe�juegn¥cDadjE[�p+<wnte�hW[^h\ZO>&ndeghÑZ*a�pr[gmIhIk [gh _bVzhWa

(o#WÖo�W�� � � Ô�h`mW��Z*adjG[�pWXwmWZlcw_za�cDVbaoX�Vzh�cwTIa³TIe�hfkl_bVzhW��[gplZIegnu]\ÒXw_YegXwTWatX�lr�ÂTWVYnuTqcDTWa.jDate^kladj��ÂVb_z_¢hW[Bkl[^mWZlc(TIe¸ygaathIn�[^mWh\cwatjwaok Vzh3TIVzX�iWjuegn�cwVYndeg_.mIXwaÎ[�p�x�~���¾MnegjwaÏXÁcwVz_b_BhW[�c�Vz�E�EatklVYevcDad_z|3egiWiIe�jDadh\co� �`Vbhfn�a

<w�Ëe�ilcue�Z�{ n | > VzX tadjD[ pr[^j <wn�� � _ � 'e>Wl¨[ln¥cDeg_yveg_bmWa�[�p½Ö�#�$Fn¥��eg_b_,ZIegnu]lXw_ze^XÁTIatX½�ga�c�n�[^iWVzatkqVzh\cw[<DndeghW[gh`Za>I��Ô/XÁVzhW�g_zaËZIe^nu]`Xw_YegXwT��ÂVz_z_$Z*aBXwmWZIXwa�Ò� mWath\cw_z|Ë[vygadjD�ÂjDV{cwcwadhËVbpºcDTWa½pr[g_z_b[v�ÂVzhW�.nuTfe�juegn¥cDadjVYXÂcD[<Z*a.egXDXwadjwcwatkrl egX�Vzh�cwTIa.nde^XÁa�[gpj_ �E'f[gj*_ ��'[^j.at[�cul¨�g�m$4n��O[gj�Vbp�cDTWa�ntegXwa7[gp�e�h eg_biWTfe�Z*a�cwVYnnuTfe�juegn¥cDadj½VzX½cw[BZfaËnuTIeghW�gaok�pr[gj�e�h&mWiWi*adj�nde^XÁa[^hW_z|Ëcwatjw�EVzhIe�_É�

( �< �� � � &=" � � 0 � � � ,8,8,��<wnte�hW[^ha>Bjwat��[vy^atX1nuTIegjDe^n¥cwatjDX½prjD[g� cDTWaP<wjDe¸�e>7VbhWiImlc� mWadmIag�GSUTIad|�egjwa8iWmlc¢cwTWatjwa�Vzh4cwTIa �fjDXÁc,iI_ze^n�a�Z\|f<ÁcÁcs|\ÒVzhWiWmlc >E�ÂTWVznuT�VYX�ndeg_b_zatk�Z`|3<w]`_bjDVbh\c > lk(g�m(`��n8�ÂTWathWady^adje�h VzhWiWmlc7nuTIegjDe^n¥cDadj�VzXEjDatndadVzygatk�prjw[^� cwTIa�Tfe�jukl��egjwan�[^h\cwjD[g_z_batjt�SUTWa�iIe�jue��Ea�cDadjuX�iIe^XwXwatk�cw[E<ÁcÁcs|`VzhWiWmlc >½egjwa�e�nuTIegjÁÒegn�cwatjUeghIk�e�jwadpradjDadhInda½cD[Ëet<ÁcÁcs|y>EXscDjwmfn¥cwmIjwa^�\ Ba7 ,%� ��p�cwTIa�nuTIegjDe^n¥cDadj�VYX�e <Dnde�jDjDVzeg�gaËjDa�cwmIjwha>&e�hIkcDTWaÎcwatjw�EVzhIe�_Ë[^ifatjDe�cwaoX��ÂVbcwT?e <wnte�jDjwVYe��^a�jDa�ÒcDmWjDha> [ghW_z| l¨VbhIXÁcwaoegk3[�p�e <wnte�jDjwVYe��^a�jwadcwmWjDha>

<w_bVzhWa�pradaok1> ife�Vzj nBnuTIe�hI�ga�cwTWa�nuTIe�juegn�cwatj7cD[ e<whWad��_bVzhWa�>

\ Ba7 7(� ��pEcwTWa�cDadjD��VzhIeg_�VYX}hW[�cq[^ifatjDe�cwVzhW�ÏVzh <Ájue¸�e>�E[lkla�e�hIk1cDTWa8nuTfe�juegn¥cDadj�VYX,ep< � mWVbc >�[gj<Dklad_za�cDa�>l��v×\��(on¼cwTWath�ndeg_b_�<wXwVb�^hIe�_ >Sl�#^×�$\×onfcw[(XÁathIk4e½XÁ[gpÀcÁÒ�Ue�jDaÂVzh^cDadjDjwmIilcOcw[4atygatjw|.iWjw[lndatXDXO�ÂTWVYnuTËTIegX¢cDTWacDadjD�EVbhIeg_³egX1VbcDX4nd[gh\cwjD[g_z_zVbhW�Bcwatjw�EVzhIe�_É� #ImfXÁT�e�_z_cDTWa � mWatmWatX�e^XwXw[ln�VYevcDatkB�ÂV{cDT�cwTWa�cDadjD�EVbhIeg_ �fe�hIkjDa�cDmWjDh

\ Ba7 �-� ��pUcwTWa@<Ájue¸�e>BVzhWiWmWc � mWadmIa<TIegX��gjD[v�Âh�aA9Wn�atXÁÒXwVzygad_z|q_Ye�jD�ga^� #ImIXwT /a5�5 cwTWa � mWatmWatX�pr[gj1cwTIaEcwadjwÒ�EVzhIe�_1e�hfkÏjwadcwmWjDh�� l¨SUTWVYX7�Ëe¸|ÎXÁatad�5e�cDjwV #IaTfe�juXÁTËevc �IjDXÁc$XwVb�^T^c³ZImlc8Vbc$�ÂVz_b_fmIXÁmfe�_z_b|.Zfa��ÂTfevcVYXÂjDa � mWVzjwaokF� n�\ B gOB-� ��p8cDTWaËcDadjD��VzhIeg_³TIegX�e�_zVz��Vbcwaok�nuTIe�juegn�cwatj1Xwa�co�eghIk�cDTWaÂnuTIe�juegn�cwatjGVYX¢e�h�mIiWifatj³nde^XÁa�e�_ziWTIe�Z*a�cDVzng�cDjDeghIXw_ze�cwa1V{c�Vzh\cw[E_z[v�8atjUntegXwa�\ B g g%� ��hIXwadjwc�cDTWa nuTIegjDe^n¥cDadj�Vbh\cD[ÑcDTWa�<wjDe¸�e> VbhWiImlc

� mWatmWa�\ B gOv-� ��p¢cwTWa�cwadjD�EVbhfe�_ºVYX�[^ifatjDe�cwVzhW�ËVzh <Ájue¸�e>���[lkla^�[^j<cDTWa&nuTIegjDe^n¥cwatjË��e^X7e <whWad� _zVbhWa�>�[gj3<Áad[gc >cDTWadh��z�b�

Öo�^�

Page 111: A Commentary on the Sixth Edition UNIX OS -- Lions

\ B g ~ � <Á�Ue�]^admWiO>�egh`|�iWjD[ln�atXDX¼�Ue�VbcwVzhW�Upr[gj�VzhWiWmWcºprjD[g�cwTWa.cwatjw�EVzhIe�_É�FiW_Yegnda.e�klad_zVb�EVbcwatj1nuTfe�juegn¥cDadjYl¨eg_b_[ghWaoX n�e�_YXÁ[ËVzh�cwTWat<Ájue¸�e> � mIadmWa�e�hIk�VzhIn�jDad�Eath^ccwTWa klad_zVz��Vbcwatj�n�[gmIh^c�~�[gcwaÑcwTWVYX�VzX�[ghWaÑif[^Vbh\c�ÂTWadjDa�if[\XwXwVbZI_ba.p¨e�Vz_bmIjwaE[�p�<ÁiWmWcDnA>}lr�ÂTIadh�cwTWatjwaVzXUhI[ËZWm��¼adj½XwiIe^n�a�n8VYXÂa�9liW_zVYn�Vbcw_z|7jDatn�[^�ghWVYXwatkF�³Ôp¨e�Vz_bmIjwa�[lndndmWjDjwVzhW�ËTWatjwa4��[gmI_zk�aA9`iI_zegVbh}�ÂT`|BcwTWacwaoXscÂ[gh�_zVbhIa*(m#WÖo�4�Ëe¸|7Xw[g�Ea�cDVb�EaoXÂXÁmIntn�atatkF�\ BOv���� ),Vbhfe�_z_b|^�oVbpWcDTWa$VzhWiWmlcOnuTIegjDe^n¥cwatjFVzXºcw[½Zfa8atnuTW[`aokV � ag� cwTWa�cDadjD�EVbhIeg_�VzXqjwmWhIhWVbhI�ÏVbh prmW_z_�klmIiW_baA9�E[`kWag�IVzhIXwadjwc�e<n�[^i`|7[�p¢cDTWa�nuTIegjDe^n¥cwatjÂVbh\cD[EcwTWa[gmlcDiWmlc � mWadmWa^��eghIk eghIk¿egjwjue�hW�^a�cw[LTIe¸yga V{ccwjue�hIXw�EV{cwcwaoktlA<scÁcuXscue�jwc >4n$Zfegnu]ËcD[EcwTWa1cDadjD��VzhIeg_ �( � � ) � �# � �� �� � 0 �2� 0 �

� � �!"�� � � � �� �SUTWVYXÂiWjD[ln�aoklmWjDa(VYX�nte�_z_baok7y`VYer<Á]`_b�ÂjDVbcwa�>ulk(g�g�`��n$�ÂTWadh[^mlcwiWmWc�VzXUcD[EZfa4Xwadh\cUcw[EcDTWa1cwatjw�EVzhIe�_É�\�gOgOv(� ��p,cwTWa1cDadjD��VzhIeg_FVzXÂVzhIe^n¥cwVzyga^�Wkl[EhW[�cDTWVzhW�2\�gOgO\(� Æ�[`[^i4pr[gjOaoegnuT�nuTIe�juegn�cwadjºcw[1Z*a8cDjDeghIXw��VbcÁcDatkB�b�z�\�gav Q(� �ÏTWVz_ba(cDTWadjDa(egjwa(XscDVb_z_�e�h�egkla � mIevcDa½h`mW�.Zfatj�[gpnuTIe�juegn�cwatjDX � mWadmWaok�pr[gj¢cDjDeghIXÁ�EVYXwXwVz[gh.cw[1cwTIaÂcwatjÁÒ�EVbhIeg_O�b�z�\�gav���� ndeg_b_d<scwcDXÁcDegjÁc >�4smIXÁc�Vbh�ndegXwa�Vbc1VzX½cwVz�Ea�cD[�Xwadhfke�hW[gcwTWatjÂnuTIe�juegn�cwadj�cD[.cDTWa1cwatjw�EVzhIe�_ \�gav�,-� �`adcÁcwVzhW�EcDTWaf<wÔ(�lƺÌ8Ì % >�#fe��ETWatjwasl e�_YXÁ[EVzh

<Á� #ImfXÁT\cÁcs|y>�l�(^�^�N$Fn nºVzX,juevcwTIadj¢if[^Vbh\cD_baoXwX¢XwVbhIndaUVzXVzX¢hIadygatjOVbh\cDadjDjw[^�^evcDatk.e�hIk�hWatygadjOjDatXwa�c³mIh^cDVb_WcwTWa�I_za(VYX�nd_b[\XÁaok�

\�gav B(� �([4cD[�Xw_zadadiº�,��h7cwTWa(�Eategh\�ÂTIVb_za�cDTWa(Vbh\cwatjwjDmWilcTIe�hfkl_batj��ÂVb_z_³Z*a<kljue�VzhWVbhI��nuTIegjDe^n¥cDadjuX�prjD[g� cwTWa[gmlcDiWmlc � mWadmIaUeghIk�XÁathIklVzhW��cDTWad�3kl[v�Âh4cDTWaU_bVzhWacw[�cwTIa1cwadjD�EVbhfe�_ \�gav v(� Í�e�_z_i<ÁcÁcs|^[gmlcDiWmlc >}cw[&VzhIXwadjwc4cwTIaBnuTIegjDe^n¥cwatj�VbhcwTWa$[gmlcDiWmlc � mWatmWa$eghIk�e�jDjDeghW�gaGcw[�TIe¸ygaOVbcºcDjDeghIXsÒ�EV{cwcwatk \�gav \(� Í�e�_z_j<scwcDXÁcDegjÁc >�eg�^egVbh��\pr[^jÂ_bmInu]¼�( � � � � � �2 � �SUTWVYXÂiWjD[ln�aoklmWjDa�VzX�nte�_z_baok��ÂTWadhWatygatj�V{c�Xwadat�ËXÂjwaoegXw[ghlÒegZW_ba1cD[ËcwjD|�e�hIk�XwadhIk�cDTWa4hWaA9\c(nuTIe�juegn�cwadjUcD[ËcwTIa�cwatjÁÒ�EVzhIe�_É�O��c�[�pÀcDadh}egnuTWVzady^atX�hW[gcwTWVzhW�EmIXwa�prmW_É�\�g �F7@� �`ata1cwTWa4nd[g�E�Eadh\cÂ[gh�_bVzhWaS(�$\×g×I�¢SUTIVzXÂnd[`kWa�VzXhW[�cÂjDad_zadyve�h\cÂTWatjwa�\�g �y\(� ��pIcDTWaÂn�[^h^cDjw[^_b_zadjGVzX¢hI[�c¢jwaoegkl|slrVÉ� ag�¢ZWVbc$��[�pIcwTWacwjue�hIXw�EV{cwcwatj.XÁcDe�_zmIX.jwat�gVYXscDadj.VzX.hW[�cEXÁadc n�[gj�cwTWahWatndatXDXwegjw|Bklad_Ye¸|7pr[^_b_z[v�ÂVzhW�EcwTWa.iWjDadVz[gmIX½nuTIe�juegn�ÒcwatjÂTIegXUhW[gc�|gadcUat_zegiIXwatkF�Wkl[EhW[gcwTWVzhW�

\�gO,OQ-� ÅÂad�E[vy^a½eEnuTIe�juegn�cwatj³prjD[g�?cDTWa1[gmlcDiWmlc � mWadmWa^���pu<wn�>&VYX�if[\XÁVbcwVzyga^�³cDTWa � mWadmWa��UegX�hW[�cËat��iWcs|l egXUaA9`i*atn�cwaokan1�z�b�

\�gO,Z�'� ��pe<wn�>�VzX8_zatXDXOcwTfe�h3<D�WÖv�g�N>(Vbc8VYX8e�nuTIe�juegn�cwadj³cw[Z*a1cwjue�hfXÁ�EVbcÁcwaok��b�z�\�gO, ,%� ÔÂpÀcDadj4Xwa�cÁcDVbhI�BcDTWaEiIe�jDVbcs|}ZWV{c1prjD[g� cDTWaËn�[^jwjDa�ÒXwi*[ghIklVzhW�(ad_zad�Eadh\c¢[�pWcDTWaUe�jDjDe¸|+<ÁiIegjÁcue�Za>I�t�ÂjDVbcwa

<DnA>�cD[EcwTWa�cDjDeghIXw��VbcÁcDadj�kIevcDe<ZWm��¼adj�jDad�^VzXÁcwatjUcw[VzhWVbcwVYevcDa1cwTWa�TIegjDkW��egjwa([gi*adjuevcDVb[^h \�gO,a7(� !�cwTWatjw�ÂVYXwa}lA<wnA> �:�IÖ¸�g�mn1cDTWaqnuTIe�juegn�cwatj��UegXVzhIXwadjwcwaok�Vbh�cDTWa7[^mlcwiImlc � mWatmWaËcw[�XÁVz�ghIeg_8eqkWa�Ò_Ye¸|g�4Í�e�_z_M<scDVb�Ead[^mlc >tl�#o(�$\�on�cw[��Ëe�]^a.e�h&adh\cwjD|VzhEcwTIap<wnte�_z_b[^mlc >1_zVzXÁct�OSUTWa�jwaoXÁmW_bc³[�p¼cDTWVzX$�ÂVb_z_IZ*acD[4VzhWV{cDVze�cwa(e�hËa�9laon�mlcDVb[^hË[�pj<scwcwjuXscDjÁc >sl�(�$4(g�4n¢evpÀÒcDadj`<wn �Î�WÖv�g��>Ân�_z[`nu]�cwVYnu]lX³�,��cº�ÂVb_z_\Zfa�XÁatadh1cwTfevc

<ÁcÁcDjDXÁcwjwc >�ndeg_b_YXz<ÁcÁcDXÁcDegjÁc >�eg�^egVbh��Ue�hfk cDTIevcËcDTWa�ËeghWVbiImW_ze�cwVz[ghB[�p�cDTWa <DSU�sÇqÌ !(x½Sj> #feg� lk(^�g��$I�(m$^×IÖ�nO�ÂVz_z_FadhIXwmWjDa½cDTIevcÂVbp,eghW[�cDTWadjUa�9laon�mlcDVb[^h7[�p<ÁcÁcuXscue�jwc >�VYXBVbhWVbcwVYevcDatk Vbh cwTWa�Vbh\cwatjwVz����[^hÐZfadÒTfe�_bpI[�pWcDTWaUXweg��a$cwatjw�EVzhIe�_É�¸V{cO�ÂVz_b_�l�(\�lÖ�(4nFjDa�cDmWjwh�ÂVbcwTI[gmlc�kl[^VbhI�Eegh`|^cDTWVzhW�I�

( �< �� � �2��� �2��� � � 3 � ' ��`ata½cDTWa4n�[^�E��ath\c�e�Z*[vyga½pr[gjÂ_zVbhWa*(\�g��$I�( �< ��8� � � &�� 0 �2� 0 � � �8, � , �SUTWVYX�iIjw[ln�aoklmWjDa<TIe^X��E[gjDaBnd[g�E�Eadh\cDX.Vzh�cwTIa�Xw[gmWjun�an�[lkla�eghIk�TWadhfn�aÂjDa � mWVzjwaoX¢_baoXwXOaA9liW_zeghIevcDVb[^h�cDTIe�h<Xw[g�Ea[�cDTWadjuXt�G~�[gcwa�cwTIa�mfXÁaU[�p*jwaon�mWjuXwVb[^hEl�(o#g×^�onFcD[1�gadhIadjuevcwae1XscDjwVzhW�1[�p¼ZW_Ye�hW]lX¢VzhEiW_ze^n�aU[�pFe½cDegZEnuTfe�juegn¥cDadjo��!�cwTIadjjDatn�mIjDXwVby^a(nte�_z_zXUegjwa1[gh�_zVbhWaoXe(�$\�m#�e�hIk+(�$fÖ�#I�( �< �� ( � �� � " �= � � " � � � � �2�!" � �� � � � � �

� �� �� � �

\O7 Q Q-� <wnd[g_zia>�if[^Vbh\cuXËcw[Ñe�XscDjwVzhW��[gp�iIe�VzjDX<[�p�nuTIegjÁÒe^n¥cDadjuXd�¢��pºcDTWa�nuTIe�juegn�cwatj³cw[EZ*a1[gmlcDiWmlcÂ�ËevcDnuTIatXcDTWa�Xwatn�[^hIk�nuTIe�juegn�cwadj¢[gp*e�h`|4[gpfcDTWatXwaUiIe�VzjuXd�vcDTWanuTfe�juegn¥cun�j�VYX½jwatiW_ze^n�aok�Z\|}eËZfegnu]lXÁ_YegXwT�pr[g_z_b[v��atkZ`|7cwTWa �IjuXÁcÂnuTfe�juegn¥cDadj�[�p,cwTWa�ife�Vzj�\O7 Q ~ � Æ�[v��adj�ndegXwa½eg_biITIe�Z*a�cDVzntX8egjwa(n�[gh`y^adjwcwatkËcw[�mIilÒi*adjUnde^XÁa�eg_biITIe�Z*a�cDVzntX$Z`|.cwTWa(egkWklVbcwVz[ghË[gpºe4n�[^hlÒXÁcDegh\ct�~�[gcwa^�,SUTWaUn�[^h`ygadjuXwVb[^h�TWadjDa�XwTW[^mW_zk.Z*a�nd[g�EiIe�jDatk��UcwTcwTIa�TIeghIkl_zVbhW�.[�pFcDTWa½jDady^adjuXÁaÂiIjw[^ZW_bat� [gh<VzhWiWmlco�³È�atjwa��a&TIe¸y^a&e�hÐeg_b�^[gjDV{cDTW� �ÂTIVznuTLn�_zate�jD_z| cDjDe^klatXBXÁiIe^n�alrhI[ËcDegZW_ba.e�hIeg_b[^�gmWa1cD[P<Á�Ëe�iWcDe�ZO>on8pr[gj�cwVz�EaEl¨e<XwadjDVYe�_Xwate�junuT�cwTIjw[^mW�gT�cDTWa}XscDjwVzhW��[gh�_zVbhIau(m$^�^�on¥��Ô"XÁiIe^n�an�[^hIXwadjDy\VzhW��e�iWiIjw[\egnuT�nd[gmW_Yk�Zfa<e^kl[gilcDatk�VzhW<DndeghW[gha>ZWmlcÂcDTWa�iWjD[gZW_zad�:VzXUjuevcDTWadjÂ�E[gjDa�n�[^��iI_bVYnde�cwatk7cwTIadjDag�

Öt�m#

Page 112: A Commentary on the Sixth Edition UNIX OS -- Lions

\O7��F7@� ��hIXwadjwc½cDTWaËnuTIe�juegn�cwatj�Vzh^cD[�cwTWaE[gmWcwiWmlc � mWatmWag���p4ifatjDnuTfe�hIndag�p<wiWmlcDn�>�p¨egVb_YX<pr[^jB_Yegnu]Î[gp4ZWm��¼adjXÁifegn�a^�^kl[^hZ' c$�8[^jwjD|�egZf[^mlc$VzhIXÁatjÁcDVbhI�4e�h`|.XwmWZIXwa�Ò� mWadh\c�klad_Ye¸|g�l[^jÂmWi¼kWevcDVbhW�EcDTWa4Xw|`XÁcwat�u' XUVYklateE[gpcwTWa�ndmWjwjDadh\cÂiWjDVbh\cDVbhW�Ënd[g_zmW�Eh

\O7�,OB(� �`adcE<wnd[g_zia>�cw[<i*[gVzh\c�cw[<cwTWat<sc nd[g_ ><nuTIe�juegn�cwatj[�pWcDTWa�<scÁcs|y>(XscDjwmfn¥cwmIjwa^�vV � ag�d<� �n�[g_zia>ÂTfegX¢e�yveg_bmWa�ÂTWVYnuTÏVzX7cwTWa�[gjuklVzhIe�_½h`mW��Z*adjB[�p�cwTIa�nd[g_zmW�Eh�ÂTWVYnuTBTIe^X 4smIXÁc�Zfatadh�iWjDVbh\cwaok�\O7�,a7@� �`adcp<wn¥cs|`i*a�>�cw[EcDTWa1ad_zad�Eadh\c�[�pd<ÁiIegjÁcue�Za>�n�[^jÁÒjwaoXÁi*[ghfklVbhI��cD[EcwTWa�[^mlcwiWmWc�nuTIe�juegn�cwadj�<wn�> \O7�,Ov(� Çqe^XÁ]�[gmlc$cwTWa1XÁVz�ghIV �fnte�h\c³ZWVbcDX8[�pe<Dn¥cs|`ifa�>4e�hfkmIXwa½cDTWa�jDatXwmW_{c�e^X�cwTWaf<DXÁ�ÂVbcDnuTa>�VzhIklaA9 \O7�,O\(� lÉÍ�e^XÁa4�4nUSUTWa4n�[^�E��[^h}XÁVbcwmIe�cwVz[gh�*8��hIn�jDad�Eath^c

<sc nd[g_ > \O7 B���� lÉÍ�e^XÁa/Ö�n ~�[ghWÒÉiWjDVzh^cDVbhI�/nuTIegjDe^n¥cwatjDXt� SUTIVzX�gjD[gmWiÑn�[ghfXÁVYXscuXE[�p½cwTWa �IjuXsco�³cDTWVbjukÎe�hIk pr[gmIjÁcDT[ln¥cwadc7[�p(cwTIa&Ô½�IÍ8�w�<nuTIe�juegn�cwatj<XÁadct�UiW_zmIXP<DXÁ[4>

l¨�IÖt�on��R<wXwV >fl¨�WÖv��nUeghIk <wklat_?>fl �WÖv�g��n��8Ľ[ghZ' c½VzhlÒn�jDad�Eadh\cs<sc n�[g_ > \O7 BO7@� lÉÍ�e^XÁa��onÂ�Uegnu]lXwiIegndag�$Ľatndjwat��ath\cp<sc nd[g_ >EmWhlÒ_baoXwXUVbc�VYXÂe�_zjwaoegkl| tadjD[2\O7 B �(� lÉÍ�e^XÁaS#4nU~�ad�Â_zVzhWag�j!½Z\y`Vz[gmIXw_z|z<sc nd[g_ >EXÁTW[^mW_YkZfaBXÁadc�cw[ tadjD[I�BSUTIa<�Ëe�Vzh�iWjw[^ZW_zad� VYX�cD[qndeg_{Òn�mW_YevcDa&cDTWa�klad_Ye¸|Ï�ÂTWVYnuT�XwTW[gmW_YkÐathIXwmWa�Z*a�pr[^jwae�hW[gcwTWatjÂnuTIe�juegn�cwadjUVYXÂXÁath\ct�

)W[^j$e�Ç}[lklad_ #\��cDad_za�cs|`ifa^�gcDTWVYX$klatifathIkWX³[^hETW[v�p¨e�jGcwTWa�iWjDVbh\c¢�EatnuTIeghWVzXw� TIegXGiWjD[g�^jwaoXwXwatk�e^n�jD[^XDXcwTWa½iIe��^ag�¢SUTWa�yve�_zmWa(nuTW[^XwadhËVYX$e�c8_zategXÁc8e1cDadh\cwT[�p½e�Xwatn�[^hIk l XÁV 9Ñn�_z[lnu]�cwVYnu]`X n�e�hIk �Ëe¸|�Z*a}egX��mInuT�egXSl lsÖ�#^� �lÖt�4n �&#on ���g� � �I�bÖo×.Xwatnd[ghIkWXt�)W[^j�e ]½SÂ�^�W�OcwTIa�klat_ze¸|�VYXE�W�zÖBXwatn�[^hIkF�z)W[^j�eĽÌUÍ8�ÂjwVbcwatj8VbcUVzX datjw[.ZfaondegmIXÁa�cwTWa(cDadjD��VzhIeg_*VzhlÒn�[^jwi*[gjuevcDatXBZWm��¼adjqXÁcw[gjue��^a�eghIk TfegX}eÎkl[gmIZW_baXÁi*adaok3<Dnde�cDnuT�mWia>�iWjDVbh\c��E[lkla�

\O7�gZ��� lÉÍ�e^XÁaj$Fn¢È�[^jwV� d[^h^cue�_lcue�Z��¢Ô�XDXwVb�^h.cDTWa�yve�_zmWa�[gpZWVbcDX1Öt�I�FÖgÖ1[�pd<sc #fe��\X >�cw[z<Dn¥cs|`ifa�> \O7�gOB(� )W[^jUcwTWa�[^hW_z|<hW[ghWÒ cDjwVzy`Vzeg_¼ntegXwa1jwaon�[g�^hWVYXÁaok

l�<DnA> � �ÏÖ$[gj�Ç}[lklat_o#\�$cDad_za�cs|`i*a�n¥�vnte�_Yn�mW_YevcDa¢cwTWacwTWa�h\mI��Z*adj�[gp³if[\XÁVbcwVz[ghfXÂcw[<cwTWa.hWa�9`c�cue�Z&XÁcw[^ilry`VYe<cDTWaE[gZIXDn�mWjDaEnde�_Yn�mI_ze�cwVz[gh&[gp8_zVbhIaY(m$\��$4n¥����pcwTWVYXOcDmWjDhIXO[gmWc³cw[4Z*aÂpr[^mWj8nd[g_zmW�EhIXO[gj$_baoXwXt��cue�]gaV{c�e^X dadjD[2

\O7�gO\(� ÅÂ[^mWhIk@<� vnd[g_zia>pl¨V � ag�¢cDTWa1y¸eg_bmIa(i*[gVzh\cwaokËcw[EZ`|<wnd[g_zia>#* n1cD[EcwTWa�hWaA9`c���mW_bcwVziW_za�[�p�(E_zatXDXU[ghIa�

\O7�g��(� ��hIndjwat��ath\ct<� �n�[^_bia>�cD[&Z*a�egh�a�9Wegn�c.�.mW_{cDVbiI_ba[�p,adVz�gT\c�

\O7 v�,%� lÉÍ�e^XÁa��onq]OadjwcwVYndeg_GÇ}[gcwVz[gh��U��pOZWVbc.ÖA$ËVYX�Xwa�c½Vbh<Ác #feg�^X >W�W�Ëeg]ga1cwTIa�klad_Ye¸|Be^XÂ_z[ghW�<e^X�i*[^XDXÁVzZW_zag�VÉ� ag�$�IÖ¸�g�4[gj�Ö¸�^��n�_z[lnu]ËcwVYnu]lXd�WVÉ� ag��4smIXÁc�[vygatj�cs�8[Xwatnd[ghIkIX�

\O7 v ~ � lÉÍ�e^XÁa��on�Í�egjwjDVYe��ga(ÅÂa�cDmWjDh��8Ô½XwXwVb�^h7cDTWa�yve�_zmWa[gp,ZIV{cuX�Öo�W�*Ö�#�[�pM<sc #feg�^X >4cD[z<wn�cs|\i*a�>2\O7 v �-� )W[^j³cwTIa �IjuXsc�n�_YegXDXd�\e�_z_b[v�Ïe4klat_ze¸|.[�p �Iy^a�n�_z[lnu]cDVznu]lX�\O7 ~ ,%� )W[^jËcwTWa�XÁaon�[^hIkÎn�_YegXDXd��eg_b_z[v�"e�kWad_Ye¸|Ñ[gp(cDadhnd_b[lnu]ËcDVznu]lX�\O7 ~ g%� �`a�c8cwTWa <� �n�[g_zia>slrcwTWa½_ze^XscUn�[g_zmW�EhËiWjDVbh\cDatkanOcw[

tadjD[I���a�pr[gjDaO_zate¸y`VbhI�8cDTWa �I_za*<ÁcÁcs|g� nA>I��cDTWadjDa³e�jDa¢cs�8[Â�Ëe�cÁÒcwatjDXU�ÂTIVznuT�klatXwadjDyga(prmWjwcwTIadjÂa�9Weg��VzhIe�cwVz[gh��

( �< �� , � �7� �� � � � �8� 9 ��� � � � � � 9� � " � � � 3 �

!½h7_zVzhWad(^�\�N$4Vbh@<Á]`_ 9`Vzh\c >I�`e4cwaoXscÂVYX8�Ëe^kla��ÂTWadcwTWatj�cw[jDatXÁcDe�jwc8egh\|EiWjD[ln�aoXwXwatX8��egV{cDVbhI�4cw[�XÁathIk<[^mlcwiImlc8cD[�cDTWacwatjw�EVzhIe�_É�ÎSUTWa�cwatXÁc<VYXËXÁmIntn�aoXwXÁprmW_ÂVbp½cDTWa�h\mI��Z*adjË[�pnuTIegjDe^n¥cwatjDX$VzX tadjD[�[^j�VbpGVbcÂVzXUa � mIe�_*cw[r<DSÂSÂÆ�!��&ÔOSj>W���pIcDTWaUh\mI��Z*adj¢[�p¼nuTIe�juegn�cwadjuX�VYX¢Z*a�cs��adadh�cwTWaoXÁaUyve�_bÒmWaoXd�OhW[W<Á�Ue�]^admWiO>}VzX.i*adjwpr[gjD��aok�mWh\cwVz_UcwTIa � mWatmWa7VYXn�[^�EiW_badcwat_b|�ad�Eilcs|g�¢�ÂVbcwT�cDTWa7XÁcwjD[ghW�}_zVb]^ad_zVbTI[\[lk�cwTfevccwTIadjDa��ÂVz_z_ÂcwTWathÎZfaqe�TWVYevcDmIXEVzhÑcDTWa #I[v�/[�p1[gmlcDiWmlccw[�cDTWaEcwatjw�EVzhIe�_É�7�`VzhIn�a�cwat�Eif[^jDegjw|qVzh\cwatjwjDmWilcDVb[^hIX½cw[cwTIa #I[v�L[�p¢[gmlcDiWmlc½egjwa � mWVbcwa�prjDa � mWath\cw_z|7[gZfXÁatjwy^atkBVbhiWjuegn�cwVYn�a�eghIkËjDadiWjDatXwadh\c8e.XÁ[^mWjDnda�[�p�[lntndegXwVz[ghIeg_IVzjwjDV{cuevÒcwVz[gh�Vbp�hW[gcwTWVzhW�q�E[gjDag�¢[^hWa<�Ëe¸|&jDate^XÁ[^hIe�ZW_z|&ath � mWVzjwa<ÁVYX$cwTWatjwa1e�h`|Ë�Ue¸|�cDTWa�nuTIe�juegn�cwadj�n�[^mWh\cUnte�h7�^a�c�prjw[^�Z*adVzhW�4�gjDate�cwatj¢cwTIeghz<wSÂSÂÆ�!��&ÔOSj>(cD[�Zfat_b[v�ÎVbct�\�ÂV{cDTlÒ[gmWc�cDTWVYXÂZfatVbhI�<kla�cDatn¥cDatk�evcÂ_zVbhIa*(g�\�N$&%�>

�½mWVbcwa$nd_baoe�jD_b|ÂcDTWadjDaOVYXd�¸XÁVzhIndaOategnuT�nte�_z_�[ghu<scwcDXÁcDegjÁc >ndegh�klatndjwat��ath\c�cwTWa � mIadmWa³XwV( tag�ve�hfk½[^hW_z|½[^hWa³XÁmfnuT4nde�_z_VYXOpr[g_z_z[v�8aok.Z`|.cwTWa�cwaoXsco�¢SUT`mIX$V{pFcDTWa½nte�_z_I[^hz<scÁcuXscue�jwc >prjD[g�-[^hWa�[gp}<ÁcÁcwjuXÁcwjwc > l�(m$^×\�mn�[gj <scÁcs�ÂjDVbcwa�> lk(^�g�m(onTIegiWifathIXUcD[7n�jD[^XDX�cwTWa�Zf[^mWhIkWegjw|^�Ie<klat_ze¸|B�ÂVb_z_ºjDatXwmW_bct�SUTWa�iWjD[gZfe�ZWVz_bVbcs|<cDTIevc�cwTWVYXÂ�ÂVz_b_GTIe�iWi*adh}VYX�Xw�Ëe�_z_ �fZWmlc�IhWVbcwa<eghIk�TWadhIndaEcwTWaËatygath^c�VYX1_bVz]gat_b|qcw[}Z*aË[gZIXwadjDygaokVzh�egh`|ËjwaoegXw[ghIegZW_b|Ë_z[ghI��[^mlcwiImlc�XÁa � mWadhIndag�SUTWadjDa³e�jDa,cs�8[Â[gcwTWatjºXwV{cDmIevcDVb[^hIXFVzh(�ÂTIVznuTf<ÁcÁcDXÁcDegjÁc >VYXGnte�_z_baok4�ÂTWVYnuT�Xwadad� cD[�Z*a�XDevcDVzXÁp¨egn�cw[^jw|^�ºÔ�cd<ÁcÁcs�ÂjDV{cDa�>l�(\���IÖ�n³cwTWa � mWatmWa�VYXÂevc�VbcDXÂ�ËeN9lVz��mW�/a�9`cwath\c�feghIk�evc<scwcs|`VbhWiImlc >+l�(o#g�m#4n¢cDTWadjDa1VzXUe�iWjDatn�aoklVzhW�.nte�_z_F[gh3<ÁcÁcs|\Ò[gmWcwiWmlc >��ÂTWVYnuTÐmIXwmIe�_z_z|Wl¨ZWmlc�hW[�c7Vzh`yve�jDVzegZW_b| * n �ÂVb_z_TIe¸y^a(e^kWklatk�eEnuTIegjDe^n¥cwatj$cD[EcwTWa�[^mlcwiImlc � mWadmWa^�( �< ��13 �/ � � � �2" �� � ��� " �= � ��ÏTWath�cDTWaË_YegXÁc�Xwi*atn�VYe�_ �f_ba�pr[gj4eBcDadjD��VzhIeg_³VzX�nd_b[\XÁaokF�<Á]`_Yn�_z[^Xwa�>�l�(^�^�^�mn�VYX�ndeg_b_zatk?eghIk jwaoXÁadcDX lk(g�\��×on�cDTWa<Á�Á�O!d%$Ì$~`>&eghIk"<uÍ�Ô�Å�Å !(~> #feg�^Xt�ÎÈ�[v�8atygatj.cDTWa

Öo��$

Page 113: A Commentary on the Sixth Edition UNIX OS -- Lions

<wjwaoegkEadhfe�ZW_za�>�ZIV{cU[�p�cDTWa�jDatndadVzygatj8n�[^h\cwjD[g_fXÁcDe�cwmIX8jDad��ÒVYXscDadj(VzX�hW[�c(jwaoXÁadct�¼XÁ[7cwTIe�c½VzhIn�[^�EVbhW��nuTIe�juegn�cwatjDXU�Ëe¸|XÁcwVz_b_.Zfa jwaon�adVzygaok e�hIk �ÂVz_b_.ZfaÑXscD[gjDatk e¸��e¸|=l�(g�o(\�mnVzh cwTWa cwatjw�EVzhIe�_ ' X <Ájue¸�e> VbhWiImlc � mWatmWa�Z`| <w]`_bjDVbh\c >lk(g�\��(on��8e�hfk&<ÁcÁcs|`VbhIiWmlc > lk(m#m#o#on��$�ÂTWVYnuT kW[�hI[�cEcwaoXsccDTWaf<uÍ�Ô½Å�Å !(~> #*e��I�`cD[<XÁata1V{p¢cwTIa1cwadjD�EVbhfe�_�VYXÂ_z[g��ÒVYndeg_b_z|7n�[^hWhWaon¥cwaokF�SUTWaoXÁaÏnuTIegjDe^n¥cwatjDX��Ëe¸|¿egntn�mW�.mW_Yevcwa pr[^j�eL_z[ghW�cDVb�Ea�e�hfk.nd_b[^�½mWi�cDTWa�nuTIe�juegn�cwatjGZWm��*atj$XscD[gjue��^ag��!½hW_z|�ÂTWathÎcwTWa <Ájue¸�e>�VzhWiWmWc � mWadmIaqjwaoegnuTWaoX<�g�g��nuTIe�juegn�ÒcDadjuX lA<wSÂS (ÈM!1�M>W��(m#m$^×4n1�ÂVb_z_�cwTWa�n�[^h\cwadh\cuX�[gp�cwTWVYX� mWatmWaÂZfa�cwTWjD[v�ÂhËe¸��e¸|^�º��c$kl[`atX8XÁatad�¿cwTWatjwadpr[gjDag�vcDTIevceBXscuevcwat�Eadh\c�cD[�klVYXDe�ZW_za�jDate^kladj½Vbh\cwatjwjDmWilcuX½XwTW[^mW_zkqZfaVzhIn�_zmIklaok�Vbh <Á]`_Yn�_z[^Xwa�>.Zfadpr[gjDa1_bVzhWa*(g�\��(I�

( �< �� � � � � � � � �19 �� � � � � ��� � � ~�[v� cDTIevc�|^[gm��¼[gT�_b[^hW��Ò�Xwm��*atjwVzhW�f�*aA9lTIe�mIXÁcwaokqjDate^kladjTIe¸y^aÂjwaoegnuTWaok�cDTWVYX$i*[gVzh\ct�\|g[gmE�ÂVz_b_*TIe¸y^aÂhW[�cwjD[gmIZW_ba�VbhklVYXÁi*[^XwVzhW�½[gpfcDTWaU_ze^XscOjDad�Ëe�VzhWVzhW� �I_ba^��<w��at��� n�>�lÉ�`TWata�c×g�4n¥�¢Ô�hIk�[^h.cDTWVYX³hW[gcwag�^�8aÂathIk�cwTIVzX³kWVzXDn�mIXDXwVb[^h�[gpfcDTWax�~���¾=!½ifatjDe�cwVzhW�<�`|lXscDad�/�l[gmWjun�a�Í8[lklag�

!�p³n�[gmIjDXwa(cwTWatjwa4egjwa1_z[�cDX���[^jwa4kWady`Vznda4kljDVby^adjuX�pr[gj|g[^mWj4iIe�cwVzadh\c�aA9leg�EVbhIe�cwVz[gh��¢e�hfk�Vbh�cDjwmlcDT�cwTIa7�ÂTW[^_bax�~���¾ÏSUVb�EatXwTIegjwVzhW���`|lXscDad�Ó�`[^mWjun�a�Í8[`kWa�TfegX,TIe�jukl_z|Z*adadh}XDn�juevcunuTWatkF�O�`[EcDTWVzX�VzXUhW[gc�jwaoe�_z_b|����������

Öt�^�

Page 114: A Commentary on the Sixth Edition UNIX OS -- Lions

� � � ��� ���e����=����� � � �=�A��

Ô�h\|�[gi*adjuevcwVzhW��Xw|`XÁcwat�¿klaoXÁVz�gh�Vbh`y^[g_zygatX,�Ëe�h`|�XwmWZ&4saon¥ÒcDVby^a½e�hfkËegkËTW[ln 4smfkl�gat��ath\cDX8[ghËcDTWa�iIegjÁc8[�pºXw|`XÁcwat�u' XklaoXÁVz�ghIadjuXd�,Ô�c¢�Ëegh\|�iW_ze^n�aoX¢Vbh.cwTWa�x½~���¾ÐXw[gmWjun�aUn�[lkla|^[gm7�ÂVz_z_ �IhIkB|g[^mWjDXwad_bpº��[ghIkWadjDVbhW�}<Á�ÏT`|7kWVzk7cwTWat|Bkl[VbcEcwTIe�c��Ue¸| %�>I�S<Á�ÏTIe�c���[gmI_zk TIe�iWi*adh Vbp��.nuTIeghW�gaokcDTWVzX %�>SUTWa�pr[g_z_b[v�ÂVzhW�Ña�9ladjun�VYXÁaoX7aA9liWjwaoXwXBXÁ[^�Ea�[gp4cwTWaoXÁa� mWaoXscDVb[^hIXd�¢�`[g�EaUndegh.Z*a�eghIXw�8atjwaok1prjw[^�¿e�h.a�9We��EVzhIevÒcDVb[^h�[gpºcDTWa4XÁ[^mWjun�a�n�[lkla�e�_z[ghIa1e�pÀcwatj�eËXscDmIkl|<Vzh���[^jwaklatilcwT 4[�cDTWadjuX�jwa � mIVbjDa�Xw[g�Ea&aA9lifatjwVz�Eadh\cDeg_½iWjD[gZIVbhW�eghIk4�Eate^XÁmIjwat��ath\ct�¸pr[gj¢�ÂTWVYnuT�jwaoegk`Ò�[ghW_z|1egndndatXDXGcw[½cwTWa�I_za < �vklaty��¸]`�Ead�s>�y`Vze�cwadjD�EVbhfe�_(�ÂVb_z_½iIjw[vy^aqVbh`yve�_zmlÒegZW_ba�^eghIkËXscDVb_z_W[gcwTWatjDXOjDateg_b_z|4jDa � mWVzjwaUcDTWa�n�[^hIXÁcwjDmIn¥cDVb[^heghIkBcwatXÁcwVzhW�Ë[gp¢aA9lifatjwVz�Eadh\cDeg_FygadjuXwVb[^hIXU[�p,cwTWa�[gi*adjuevcÁÒVzhW�ËXÁ|lXÁcwat���( ' �� $� � �#"���� � � � ��� Ä�aty`VzXwa�nuTIeghW�gaoXEcw[=<Á�Ëe�_z_z[`n�> l �^�g��(4n.cw[�Vz�EiW_za�Ò�Eadh\cUcwTWa4��atXÁc),V{c�eg_b�^[gjDV{cDTW���� � , ÅÂad�ÂjDVbcwa�cwTWaEiWjD[ln�aoklmWjDat<w�.prjDada�>tlÉ�g�^���on�cw[�jDadhlÒkladj$V{cuXOprmWhIn�cwVz[ghË�E[gjDaÂate^XÁVz_z|.klVYXwndadjDhWVzZW_baÂZ`|�cwTWajwaoegklatjt�� �?B ��h`ygatXÁcwVz�^e�cwa�cwTWa1egkla � mIegnd|.[gp�cwTWa1XwV( tatX8[�p�cDTWa(egjÁÒjDe¸|lXj<Dn�[^jwat�Eegia>�eghIkf<wXw�Ue�iW�Ëe�iO>*l¨�\���m#I�o�\���m$4n¥�È�[v� XwTW[^mW_zk <uÍ�Ç&Ô%8�l� �>�eghIk <D�`�&Ô`%8�`� >nuTIe�hI�ga(�ÂTWadh <w~`%$Åe!�Í >.VzXUVzhIn�jDate^XÁaok %� � 7 %³jD[vyga(cwTfevcE<w�Eeg_b_z[lnA>ËeghIk <Á��prjwata�> 4s[^Vbh\cw_z|�XÁ[^_by^acwTWa1�Ead�E[^jw|7eg_bVz[lnde�cwVz[gh�iWjw[^ZW_zad�:nd[gjDjwaon¥cw_z|g�� � g ��|4�E[ghWVbcw[^jwVzhW�½cwTWa�nd[gh\cwath^cuX,[�pc<Dn�[^jwat�Eegia>W�¸aoXscDV{Ò�Ëevcwa(cDTWa�a�<n�Vzadhfn�|<�ÂVbcwT��ÂTWVYnuT��EegVbh��Ead�E[gjD|VzX¢mWcwVz_bVYXÁaokF�OÌ$XÁcwVz�ËevcwaÂeg_zXw[(cwTWa�nd[^XÁc¢[gp*nd[g�EiIegn�cÁÒVbhI�b<ÁVzh<mIXwa½egjwaoegX >1[�p��Ëe�Vzh<�Ead�E[gjD|.prjw[^�ÓcDVb�Eacw[�cwVz�Ea1cw[ËjDatklmfn�a1�Ead�E[gjD|EprjDeg�g�Eadh\cuevcwVz[ghº�

È�athIn�a klatndVzkWa��ÂTWadcwTWatjÑVbcÏ�8[^mW_Yk?Zfa ��[gjwcwTlÒ�ÂTWVz_ba�cw[�aA9\cDadhIk cwTIa�iIjwaoXÁath^cË�Ead�E[^jw|�eg_b_z[lndevÒcwVz[gh�XwnuTIad�Ea(cw[ËVzhIn�_zmIkla��Ead�E[^jw|7nd[g�EiIe^n¥cwVz[ghº�� �?v ��h�Xwa�cwcwVzhW�BcwTWa �IjuXsc�XwV:9}]gatjwhIad_¢iIe��^a.klaoXwndjwVzilcDVb[^hjwat�gVYXscDadjuXd�fx�~���¾ kl[`atX�hW[�c(�Ëe�]ga�mIXÁa.[�p$eg_b_ºcwTWaTIe�jukl�Ue�jDa7iWjD[�cDatn�cwVz[ghÑpratevcDmWjDatXEcDTIevc7egjwa}e¸yve�Vz_{Òe�ZW_za�a^� �f�OXÁ[^��a½iIe��^atX8�ÂTWVYnuTBn�[^h\cDe�Vzh<[^hW_b|ËiImWjwacwaA9\c³nd[gmW_Yk�Z*aU�ËegklaUjDategklÒÉ[^hW_b|^�ºÄ½ady`VzXwaÂnuTIe�hI�gatXcw[EcDTWa.nd[`kWa�cw[<�Ëe�9`Vz�EVzXwa1cwTIa4mIXwa4[�p¢cwTIa.e¸yve�Vz_{Òe�ZW_za1TIe�jukl�Ue�jDa�iWjD[�cDatn�cwVz[gh��� � ~LÍ8[g�EiWVz_ba1cDTWa�iWjD[g�^jDeg�

� 4 ��� A �Q�%�QN ��� � = N � � �Q�%�QN ����&�� �Q� � � �=���= ��� � ���%�$N � �Q�8�$N � �'�5&3$4 � �0= �$,��5&�

eghIk�n�[^��ife�jDa.cDTWa<jDatXwmW_bc4�ÂV{cDT�cwTWa7nd[gh\cwath\cDX1[�pcDTWa4e�jDjue¸|}<wVznd[lkla�>ulsÖ¸�lÖo�on¥�� �?\ ��h\y^atXÁcwVz�^e�cwa�cwTWa�XÁV� da}jDa � mWVzjwaokÑpr[gj<]^adjDhWad_Â�E[lklaXÁcDe^nu]�e�jDategXt��È�adhInda�XwTW[v�3cwTfevc�cwTWau#g�`���8[^jDkegjwaoe��ÂTIVznuT�VYXUiWjw[vy`VYklatkBVYXÂegkla � mfevcwa^�� � � ��pW�EegVbh���at�E[gjD|½n�[^hIXwVzXÁcDXº[�pIXwadygatjDeg_vVbhfkladi*adhIkWadh\c�Eat��[^jw|Ñ�E[`kWmW_baoX7eghIkÎ[ghWa}[gp1cwTWaoXÁa^�ÂhW[�c<cDTWa_YegXÁct�,VYX�kl[v�Âh��`<Á�Ëe�Vzha>��ÂVz_b_8hW[�c4VzhInd_bmIkWa<�Ead��Ò[^jw|1�E[lklmW_zatX,Z*ad|g[^hIk�cDTWa�[ghWa��ÂTWVYnuT4VzX¢kl[v�Âhº�vVbhcDTWa�_bVYXsc([�p$e¸yve�Vz_Ye�ZW_za�XwiIegnda�Vzh <wnd[gjDad�Ëe�ia>I��Ä�adÒy`VYXÁaÂXw[g�EaÂXÁVz�EiW_za�nuTIe�hW�^atXGcw[u<w�EegVbhO>�cD[(Tfe�hIkl_zacDTWVYX$XwV{cDmIevcDVb[^h��G�ÂTfevc³[�cDTWadj$iIe�jwcDX¢[gpfcDTWa�Xw|`XÁcwat���[gmI_zk�e�_YXÁ[EhWatatk�jDady`VzXwVz[gh %� ���yQ ÅÂat�ÂjwVbcwa cwTWa jD[gmlcDVbhWaoX <watXÁcDe�ZImWj >&lsÖt�\���4n�e�hIk

<DXÁmIjwat�o>zlsÖv�N#^×on1Xw[}cwTIe�c�cDTWad|��ÂVb_z_��8[^jw]�egX4adpÀÒ�*n�Vzadh\cw_z|�e^X�if[\XwXwVzZW_baE[^h�cDTWaE%8Ä`%�ÖgÖ �N$^�I��È�[v�[gpÀcwath"egjwa cwTWaoXÁa jD[gmlcDVbhWaoX mIXÁaokMVzh/iIjDe^n¥cwVYn�a %��[gmI_zk V{cEjwaoe�_z_b|�Z*aB��[gjwcwT`�ÂTWVz_ba<cwjD|\VzhW�&cw[&Vz��ÒiI_bat��ath\c�|g[gmIjÂVb�EiWjD[vygaok<ygatjDXwVz[ghIX %

� ��� � ��h`ygaoXscDVb�\evcDa�cwTWa�[vygatjwTIategkIX�Vzh\y^[g_zygaok�Vbh�VbhWVbcwVYevcwÒVzhW�qe�hWat�ÓiIjw[ln�aoXwXt�s%¢adjwpr[gjD� e�XÁatjwVzatX1[gp��EaoevÒXwmWjDad�Eadh\cuXºpr[^j,e(Xwa�c¢[�pfklV �¼adjDadh\c³XÁV� daok4iWjD[g�^jDeg�EXmIhIkladj½klV �¼adjDadh\c�n�[^hIklVbcwVz[ghIXt�� ���1, Ì$y¸eg_bmfevcwa�cDTWa�pr[g_z_b[v�ÂVzhW�ÏXDnuTWad�Ea��ÂTWVYnuTLVYX�VzhlÒcDadhIkWatk�Z`|�Ã1ath�SUTW[^�EiIXÁ[^h�egX(cwTIa<ZIegXwVYX(pr[gj�ejDady`VYXÁaokBXDnuTWaoklmW_zVbhW�Ëeg_b�^[gjDV{cDTW� �

ÔÐh\mI��Z*adji<wia>1VYXO]gatilc³pr[gj$ategnuTEiWjD[ln�aoXwXt�gXÁcw[gjDatke^Xp<wi n�iWmO>W�s<ÁiO>ËVzX�Vbhfn�jDad�Eadh\cwaok�Z`|B[^hWa�atygadjD|nd_b[lnu]7cwVYnu]7cDTIevc�cDTWa�iIjw[ln�aoXwX�VzXUpr[^mWhIk�cD[ËZfa.a�9`Òaon�mlcDVbhI�I�E<wia>EcDTWadjDa�pr[^jwa�e^ndndmW��mW_YevcDatX�cwTWaËÍ %$xmfXweg�gag�U̳y^adjD|7Xwatn�[^hIkF�fategnuT�yve�_zmWa�[gpM<wia>EVYX�jDa�ÒiI_ze^n�atk�Z\|�pr[gmIj��WpÀcDTIX�[gp�V{cuX�yveg_bmWa7jw[^mWhIklaok�cw[cDTWa�hWaoe�jDatXÁcUVzh\cwat�gadjo�³SUTWVYXÂ�EateghIX�cwTIe�cp<Á[4>.TfegXyveg_bmWaoX³�ÂTWVYnuT7egjwaÂZ*[gmWhfklatkËZ`| datjw[4eghIk�cwTIa½Xw[�Ò_zmlcDVb[^h�[gpºcDTWa1a � mIevcDVb[^h�� �Ð��� ( �`l�� ���n8VÉ� a^�$ vÈ ,�8È�adhIndaqV{p�È LVYXB����[gj7�^�W��e�hfk�<Áia>�VYXVzh\cwat�gadjDVYXÁaokF��<Áia>Ente�h�Zfa4XÁcw[^jwaok7VzhB[^hWa�Z`|\cwag�

� ���yB SUTWau<wiWjw[ln�>4cue�ZW_za1VzXÂeg_b�Ue¸|lX8XwategjDnuTWaok<y`VYe�e�klVbÒjDatn�c}_bVzhWategj}XÁaoe�junuT��:Ô�X�cDTWa�cDegZW_ba�XwV( ta�VzX�VzhlÒndjwaoegXwatkF��cwTWa�XÁaoe�junuTÏ[vygatjwTWaoegkWX7e�_YXÁ[�VzhIndjwaoegXwag��lmWjwy^ad|/cwTWa3e�_bcwatjwhIe�cwVzygaoXÎpr[gj�Vb�EiWjD[vy`VbhW� cDTWaXwategjDnuTÓ�EatnuTIeghWVzXw���Ë�ÂTWadh <D~%$Åe!�Í > VzX�XDe¸|#^�g�I�

( '< )( $� � �#"���� � �, ��� Ì�9liW_Ye�Vzh VzhÑkladcDe�Vz_UTW[v�?cDTWa}XÁ|lXÁcwad�AjDate^n¥cDX.cD[�e

#f[^evcDVbhI�Âif[^Vbh\c�cDjDegi(�ÂTIVznuT1[lndndmWjDX��ÂTWadh(cwTIa³iWjD[�ÒndatXDXÁ[^jUVzXÂVzh�]gatjwhWat_¼��[lkla^�, � , �ÏTWadh�e�iWjD[ln�atXDX,klVbaoXd�veE< d[^��ZWVza�>�jwaon�[gjuk1VYXG�ÂjDVbcÁÒcDadhBcw[EklVYXÁ]¼�We�hfk<VYX�XwmWZIXwa � mWath\cw_z|Ëjwaoegk<Zfegnu]ËZ`|cDTWa�iIegjwath^co�OÄ�aty\VYXwa1e�XDnuTWad�Ea(pr[gjUiIe^XwXwVbhI�.ZIe^nu]

Öo�g�

Page 115: A Commentary on the Sixth Edition UNIX OS -- Lions

cwTWa�hWaon�atXDXDe�jD|½Vzhlpr[gjD�ËevcDVb[^h�cw[�cwTWaUiIegjwath^c,�ÂTWVYnuT�ÂVb_z_Ge¸y^[gVYk<cDTWa4[vy^adjDTWate^k7[gp,cDTWa4cs��[ËV �¸[Ë[gi*adjuevÒcwVz[ghIXt�, �?B Ä�[lndmW�Eadh\cE<ÁZfegnu]`mWia>+lsÖo�WÖo�on¥�, � 7 ��cOVzX,jDad_YevcwVzygat_b|1aoegXw|(mfXÁVzhW�½cwTWa�<wXwTWad_z_ >Âcw[1Xwa�cOmWi.eXÁadc,[gp*e^XÁ|`hInuTWjD[ghI[gmIXºiWjw[lndatXDXÁaoXº�ÂTWVYnuT��ÂVb_z_ #I[`[lk|g[^mWj�cwatjw�EVzhIe�_4�ÂVbcwT mfXÁat_baoXwX�[^mlcwiWmWct�ASºjD|`VbhW�cw[�XscD[gi�cwTIatXwa.iWjD[ln�aoXwXwatXÂVzhIklVzy`VzkWmIe�_z_b|qnte�h}Z*a�eiWjD[gZW_zad���^XwVzhIn�a�cwTWatVbj�VzkWadh\cwVbpr|`VbhW�.h`mW��Z*adjuX³�Ëe¸|hW[�c1Z*a�]`hW[v�Âhº��x�Xwa.[gp³cwTIaEnd[g�E�Ëe�hIk <Á]`Vz_b_O�m>VzX�mIXwmIeg_b_z|Ëe�hBe^n¥cU[�p¢XÁTWatadjUklatXwi*adjuevcwVz[ghº�¢Ä½ady`VYXÁae�h&eg_{cDadjDhIevcDVby^a.XDnuTWad�Ea^�*a^� �f�1ZIegXwatk&[gh}cDTWaEmIXÁa[�p³�EatXDXDe��gaoX�XwmInuT&egXE<Á]`Vz_b_ �`×^×m>W�f�ÂTWVYnuTq�ÂVb_z_,Zfaa �¼atn�cwVzygag�lZImlc��E[gjDa1Xwad_zatn�cwVzyga^�, � g Ä�aoXÁVz�gh eÑpr[gjD� [�pEn�[^jw[^mlcwVzhWa 4smW�EiL�ÂTI_znuTL�ÂVb_z_ndegmIXÁa�nd[gh\cwjD[g_`cD[4iIe^XwXO�E[^jwaÂa �ËndVbath\cw_z|.Z*a�cs��adathe4iWjD[g�^jDeg�Ó�ÂTIVznuTBVzX8ZfatVbhI��cDjDe^n�atk��`eghIk<VbcDX�iIegjÁÒadh\ct�( ' -, $� � �#"���� ��� � B ��� ÅÂad�ÂjDVbcwa8cwTWaUiWjD[ln�atkWmWjwa�<wXDnuTWatka>Ucw[1e¸yg[^Vzk(cDTWaUmIXÁa[�pd<Á�g[gcw[4>.XÁcDe�cwad�Eath^cuXd�B � , Ç}[lklVbpr| <wXDnuTWaok1>BXw[�cwTIe�c1cwTWaEcDa�9`c�XÁat�g�Eadh\c4e�hfkkWevcue�XÁat�g�Eadh\c1pr[gj4e�iWjD[g�^jDeg�"�ÂVz_z_³if[\XwXwVzZW_b|&Zfae�_z_b[lntevcwaok<Vzh}XÁatiIe�juevcDa½�Ëe�Vzh���at�E[gjD|<e�jDategX�Vbp¢eXÁVzhW�^_baÂ_Ye�jD�ga�egjwaoe1VzX$hW[�c$Vz�E�EatklVYevcDad_z|Ee¸yvegVb_Ye�ZW_zag�B �?B ��pOcwTWa.XÁ|lXÁcwad� n�juegXwTWaoXÂe�hIk��.mIXsc½Zfab<wjwatZf[`[gcwatka>cwTWa�nd[gh\cwath\cDX�[�p�cwTIa�ZWm��¼adjuX}�ÂTWVYnuTL��adjDa�hW[�c�ÂjwVbcÁcDadh�[gmlc�e�cUcwTWa1cDVb�Ea�[�p,cwTIa4n�juegXwTBe�jDa1_b[\Xsco�

È�[v��ady^adj7Vbp�eÎnd[gjDa�klmW�Ei VYX7cue�]^adh��½cwTWa�nd[ghlÒcwath^cuX,[�pWcDTWaUZWm��¼adjuX,nte�h.ZfaU[gZWcDe�VzhWaok�e�hfk�TWathIn�acwTWa4nd[gh\cwath\cDXU[�pGcwTWa4kWVzXw]Bnte�h�Zfa4ZIjw[^mW�gT\cÂn�[g��ÒiW_za�cwat_b| mWi cw[�kWevcDag� !½mlcD_bVzhWa}e�kla�cue�_z_baokÑiI_zeghpr[gjËndegjwjD|`VbhI�&[gmWc�cDTWVYXËXwnuTWat�Eag�ÑÈ�[v�:a��*aon¥cwVzygakl[E|g[^m7cDTWVbhI]7Vbc��8[^mW_zkBZ*a %B � 7 Ì�9liW_Ye�Vzh��ÂT`|�cDTWaEZWm��¼adj�egjwaoegX(klatnd_zegjwaokq[gh�_bVzhWa

$`�g����egjwa4�WÖA$I�leghIk�hW[�c��lÖ¸�l�lnuTIegjDe^n¥cwatjDX�_z[ghW�f�B � g Ì�9liW_Ye�Vzh TW[v�/klate^kl_b[lnu]�XwV{cDmIevcDVb[^hIX��Ee¸|�egjwVYXwa7VbpcwTWatjwa�egjwa�cD[\[Îprat� <Á_Ye�jD�ga�>ÑZWm��¼adjuX&e¸yvegVb_Ye�ZW_zag��ÏTIevc.��aoegXwmWjDatX�nte�h�|^[gm�XwmW�g�^atXÁc�cw[&eg_b_zady`VYevcwacwTWaÎiWjD[gZI_bat���Ëe^XwXwmW�EVbhI� cDTIevc�VzhIn�jDate^XÁVzhW� cwTWah`mW��Z*adjÂ[gpGZWm��¼adjuXÂVYXUhW[�c�i*[^XDXwVbZW_zag�( ' 43 $� � �#"���� � �'0=�7 ��� Ä�aty`VzXwa�e�XwnuTIad�Ea7pr[^j._Ye�Z*ad_z_zVbhW��I_za�Xw|lXscDad� yg[^_{ÒmW�EatX�e�hIkBnuTWatnu]`VzhW��cDTWatXwa½_Ye�Z*ad_YX��ÂTWadh7cwTWa(yg[^_{ÒmW�EatXÂegjwa1�E[gmWh\cDatkF�7 � , Ä�VYXDn�mIXDX,cwTWaUiWjD[gZI_bat�EXG[�p¼XÁmIiWif[^jÁcDVbhI�(Ô½~½�`�,Xscue�hlÒkWe�juk._zegZfat_b_zatk�cDegifaoXOmWhIklatj$x�~���¾��geghIk�iWjD[gi*[^XwaeEXÁ[^_bmlcDVb[^h��

7 �?B Ä�aoXÁVz�ghËe�XDnuTWad�EaUpr[gj$iWjw[vy`VYklVzhW�1VbhIkWa�9�Xwa � mWath\cwVYe�_e^ndndatXDX�cw[ �I_zatXt�7 � 7 SUTWa³ad�Eatjw�^adhInda,[gp^cDTWa*<DXscDVznu]`|�ZWVbc >il¨XwadaS<uÍ�ȽÇt!(Ä�lr� n >Vzh�cDTWa %$ÇtnFn�[^h��IjD�EXFcwTIe�cºcwTIadjDa$e�jDa³XÁ[^�EaOjwaoXÁVYk`Òmfe�_¢egklyve�h\cue��gaoXÂVzh&e�_z_b[lntevcwVzhW�<eg_b_GcwTWa�XÁifegn�a4pr[gje �I_za�nd[gh\cwVz�gmI[gmIXw_b|^�ºÄ½VzXDn�mIXDXºcwTWaU�EadjDV{cuXº[gpI�Ëe�]\ÒVzhW� <Dn�[gh\cDVb�^mW[gmIX �f_baoX >Î�E[gjDa��gathWadjue�_z_z|Ðe¸y¸egVb_bÒegZW_zag�7 � g Ä�aty\VYXwa½e1cDatnuTWhWV � mWa�cD[4�Eate^XÁmWjDaÂcDTWa�a �ËndVbathIn�|�[�piIVbi*atXt��Ô�iWiW_z|&cDTWaËcDatnuTWhWV � mWa<e�hfk�jwatif[^jÁc4|^[gmWjjDatXwmW_bcDXt�7 �?v Ä�aty\VYXwa �E[lklV �*ndevcDVb[^hIX�cD[ <wiWVbi*ag� nA> �ÂTWVznuT:�ÂVb_z_�Ëeg]ga$iIVbi*atX,�E[gjDa8a �<n�Vzadh\c¢e^ndnd[gjuklVbhI�Âcw[�cwTWa�pr[g_bÒ_z[v�ÂVzhW��XDnuTWat��a ���ÂTWathWady^adj(cwTIa}<wjwaoegk1>7if[^Vbh\cDadjVYXU�gjDate�cwatj$cDTIe�hq�lÖ¸�l�`jD[�cDe�cwa½cwTWa1hW[^hlÒ�h\mI_b_FZW_z[lnu]h`mW�.ZfatjDX,Vzh�cDTWaY<ÁVzhW[lkla�>½e�hIe(klaon�jDategXwa$Z*[�cDT�cDTWa

<wjwaoegk1>�e�hfk3<w�ÂjwVbcwa�>.i*[gVzh\cwatjDXUZ`|B�WÖo�l�g ��� �8| �E[ghWVbcw[^jwVzhW��cDTWaqh`mW��Z*adjB[�p1prjDadaqZWm��*atjDX7[gj[gcwTWatjw�ÂVYXwag�ºkladcwatjw�EVzhWaE�ÂTWa�cDTWadj1cDTWaEh\mI��Z*adj�[�pnuTfe�juegn¥cDadj�ZIm��*atjDX,iWjD[vy`VzkWatk�evc,|g[^mWjºVzhIXÁcDe�_z_YevcwVz[ghVYX�e^kla � mIe�cwag�g � , %¢adjwpr[gjD�M�EategXwmWjDad�Eadh\cuX�e�hIk �¸[gj�a�9lifatjwVz�Eadh\cDXÂcw[kWa�cwatjw�EVzhWa$�ÂTIa�cwTIadjGcwTWa�nuTIe�juegn�cwadjºZWm��¼adj,ZW_b[lnu]lX��[gmI_zk7Zfa1�E[gjDa½a �<n�Vzadh\cw_z|ËmlcwVz_zVzXwatkBV{pGcwTWat|7n�[^hlÒXwVYXscDatkB[�pºpr[^mWjU[gjUadVz�gT\c�nuTIegjDe^n¥cwatjDXt�gjuevcDTWadj�cDTIe�hXwV 9¼�IifatjÂZW_b[lnu]¼�g �?B ÅÂatklaoXÁVz�gh.cwTIaÂ_bVzhWaÂiWjDVbh\cDadj³kljDVby^adj,cw[�Tfe�hIkl_zaU[vygatjÁÒiIjwVzh\cwVzhW��eghIkÑZIegnu]lXwiIegndVbhW���E[gjDa7a�<ndVbath^cD_b| VbhcDTWa7XwadhIXwaË[�pÂ�EVzhWVb�EVYXÁVzhW�}cDTWa<h`mW�.Zfatj4[�pUiWjDVbh\cnd|ln�_zatXt�g � 7 Ä�[ln�mI��ath\c <w���EjDate^k1> l¨�^×WÖt�4nËe�hfk�<Á�E���ÂjDV{cDa�>

l ×g�m$\�mn��( '< �� � � �# �v ��� SUTWaÐate^XÁVzatXÁc���e¸|¿cw[ yve�jD| cDTWaÐ�Ëe�Vzh �Ead�E[gjD|XwiIe^n�a�mIXwatk<Z\|.cwTIa�[gi*adjuevcDVbhI��XÁ|lXÁcwat�ÓVYX³cD[4yve�jD|

<D~��Ux)�>I�d��p`cwTWVYX�VYXFpr[^jwZIVzkWkWadh��oiWjD[gi*[^Xwa¢cwTWa³Z*atXÁc�Ue¸|ËcD[��� /�� jwaoklmInda1cwTWa4XwiIegnda½jDa � mWVzjDatkBZ\|����g����[gjukWX�� �� mlcDVb_zVYXÁa4egh�e^kWklVbcwVz[ghIeg_º���g����[gjukWXt�

v � , Ä�VYXwndmIXDXËcwTIa&�EadjDV{cuX<[gpb<uÍ >�egXBe�Xw|`XÁcwat�ËXËiWjD[�Ò�^jDeg�E��VzhW�._zeghW�gmIeg�ga^�G�ÏTIe�cUpratevcDmWjDatXUe�jDa½�EVYXwXÁÒVzhW� %�[gj�XwmWi*adj #ImW[gmfX %

Öt�\�