Книга: Linux программирование в примерах
7.3. Резюме
7.3. Резюме
• V7 ls
является сравнительно небольшой программой, хотя она затрагивает многие фундаментальные аспекты программирования Unix — файловый ввод-вывод, вспомогательные данные файлов, содержание каталогов, пользователи и группы, значения времени и даты, сортировку и динамическое управление памятью.
• Наиболее примечательным внешним различием между V7 ls
и современной ls
является трактовка опций -а
и -l
. У версии V7 значительно меньше опций, чем у современных версий; заметным недостатком является отсутствие рекурсивной опции -R
.
• Управление flist
является чистым способом использования ограниченной памяти архитектуры PDP-11, предоставляя в то же время как можно больше сведений, struct lbuf
хорошо извлекает нужные сведения из struct stat
; это значительно упрощает код. Код для вывода девяти битов доступа компактен и элегантен.
• Некоторые части ls
используют удивительно маленькие лимиты, такие, как верхняя граница числа файлов в 1024 или размер буфера в makename()
в 100.