: UNIX

5.7

5.7

open , creat . creat:

fd = creat(pathname, modes);

pathname, modes fd , open. , ; , ( 0) [16]. 5.12 .

creat
:


:
{
( namei);
if ( ){
if ( ) {
( iput);
return ();
}
}
else {/* */
( ialloc);
;
;
}
, ;
if ( ) ( free);
( );
return ( );
}

5.12.

, namei , . , , , namei . , . , . ; . , . . creat, , .

, , , ialloc ( 4.6). , . , , . . ( bwrite), . , , , , . , , , , ( . 5.16.1).

creat, . , , creat: , free, . , : , . , , , .

creat , , open. , , , .)


: 0.088. /Cache: 5 / 0