Системное программирование в UNIX средствами Free Pascal




Описание - часть 2


  writeln ('Mode    : ',info.mode);

  writeln ('nlink   : ',info.nlink);

  writeln ('uid     : ',info.uid);

  writeln ('gid     : ',info.gid);

  writeln ('rdev    : ',info.rdev);

  writeln ('Size    : ',info.size);

  writeln ('Blksize : ',info.blksze);

  writeln ('Blocks  : ',info.blocks);

  writeln ('atime   : ',info.atime);

  writeln ('mtime   : ',info.mtime);

  writeln ('ctime   : ',info.ctime);

  If not SymLink ('test.fil','test.lnk') then

    writeln ('Link failed ! Errno :',linuxerror);

  if not lstat ('test.lnk',info) then

     begin

     writeln('LStat failed. Errno : ',linuxerror);

     halt (1);

     end;

  writeln;

  writeln ('Result of fstat on file ''test.lnk''.');

  writeln ('Inode   : ',info.ino);

  writeln ('Mode    : ',info.mode);

  writeln ('nlink   : ',info.nlink);

  writeln ('uid     : ',info.uid);

  writeln ('gid     : ',info.gid);

  writeln ('rdev    : ',info.rdev);

  writeln ('Size    : ',info.size);

  writeln ('Blksize : ',info.blksze);

  writeln ('Blocks  : ',info.blocks);

  writeln ('atime   : ',info.atime);

  writeln ('mtime   : ',info.mtime);

  writeln ('ctime   : ',info.ctime);

  { Remove file and link } 

  erase (f);

  unlink ('test.lnk');   

end.

Элементы структуры stat имеют следующие значения:

– dev, ino

Первый из элементов структуры описывает логическое устройство, на котором находится файл, а второй задает номер индексного дескриптора

(inode number), который вместе с dev однозначно определяет файл. Фактически и dev, и ino относятся к низкоуровневому управлению структурой файлов UNIX. Эти понятия будут рассмотрены в следующей главе.

– mode

Этот элемент задает режим доступа к файлу и позволяет программисту вычислить связанные с файлом права доступа. Здесь следует сделать предостережение. Значение, содержащееся в переменной mode, также дает информацию о типе файла, и только младшие 12 бит относятся к правам доступа. Это станет очевидно в главе 4.

– nlink

Число ссылок, указывающих на этот файл (другими словами, число различных имен файла, так как жесткие ссылки неотличимы от «настоящего» имени). Это значение обновляется при каждом системном вызове link и unlink.




Содержание  Назад  Вперед