Максим Отставнов - Свободные программы и системы в школе
- Название:Свободные программы и системы в школе
- Автор:
- Жанр:
- Издательство:«Институт логики», «ALT Linux Team»
- Год:2003
- Город:Москва
- ISBN:ISBN 5-85593-146-3
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Максим Отставнов - Свободные программы и системы в школе краткое содержание
Курс лекций, включенных в брошюру, знакомит читателя с популярными свободными программами и системами, полезными при преподавании информатики в средней школе. В обзор вошли основы открытых операционных систем, сведения о пакете «офисных» программ OpenOffice.org, коммуникационном пакете Mozilla, графическом редакторе GIMP, современных графических средах GNOME и KDE и других программах.
Для преподавателей информатики и методистов, а также для студентов и аспирантов соответствующих специальностей.
© 2002-3, Максим Отставнов.
© 2002, Андрей Добровольский (раздел 3.1).
Использован текст лекций, публиковавшихся автором в приложении к газете «Первое сентября» «Информатика» (http://inf.1september.ru) в 2002-3 г., материалы брошюры «Прикладные свободные программы в школе» (М.: 2003 г.), а также фрагменты статей, ранее публиковавшихся в журналах «Компьютерра» и «Домашний компьютер».
Материалы, представленные в этой книге, также доступны в Интернет на странице www.otstavnov.com/fsft на условиях Свободной лицензии ГНУ на документацию (GNU FDL). Все прочие права сохраняются за автором.
Свободные программы и системы в школе - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Но никакого парадокса в этом нет. Удаление файла не является изменением его содержания. Удаление файла – это изменение каталога , в котором он содержится и, соответственно, разрешение или запрещение удаления файла зависит не от прав на него, но от прав на каталог (мы помним, что каталог – это тоже файл).

В примере на Рис. 1-43 Алиса создает каталог «каталог_1», создает в нем файл «файл_1», отнимает у владельца (себя) права на запись, тем не менее, удаляет его, затем создает такой же файл и отнимает у себя права на запись в этот каталог. После этого попытка удаления файла приводит к выводу сообщения о нехватке прав для совершения этой операции.
Соответственно, и создать файл в каталоге, прав записи на который у нее нет, она не сможет 33.
Обратите внимание, что отсутствие права записи в каталог не отнимает у Алисы права на изменение содержимого находящихся в нем файлов (Рис. 1-44).

Это вполне логично, т.к. изменение содержимого никак не влияет на запись в каталоге. Однако здесь есть одна тонкость. Обратите внимание, что первая команда «ls -l» показала длину файла равной 0 байт (что естественно, т.к. этот файл создавался как пустой), а вторая – 4 байта. Разве информация о длине файла не является частью записи о нем в каталоге?
Вся правда о файлах
Дело в том, что понятие о файлах и их «нахождении» в каталоге выше давалось нами в несколько упрощенной форме. Если быть точными, каталог содержит не «файлы», а записи о файлах , вполне подобно тому, как библиотечный каталог содержит не книги, а записи о книгах (или библиографические карточки), а сами книги хранятся на полках 34. Часть полей, выдаваемых командой «ls -l», относится к файлу как единице хранения («книге на полке»), а часть – к записи о нем в каталоге («библиографической карточке»).
Атрибутом записи о файле в каталоге является поле «имя».
Атрибутам файла как единицы хранения (его называют индексным узлом или и-узлом) соответствуют поля «тип и права», «количество указателей», «владелец», «группа-владелец», «размер», «время модификации».
Кстати говоря, поле «количество указателей» и содержит число «библиографических карточек» (записей в каталогах), соответствующих «книге» (и-узлу). Мы до сих пор имели дело только с и-узлами, которым соответствует одна запись (так обычно и бывает с файлами, создаваемыми пользователями), но так же, как книге могут соответствовать разные карточки (одна в предметном каталоге, другая в алфавитном каталоге названий, третья в алфавитном каталоге авторов...), на один и тот же и-узел могут ссылаться записи в разных каталогах (или разные записи в одном каталоге под разными именами). Создание и удаление дополнительных имен («ссылок») нами рассматриваться здесь не будет.
В то время, как правомочия чтения и записи на каталог вполне прозрачны (разрешение чтения позволяет прочитать список содержащихся в нем файлов (например, командой «ls»), а записи – модифицировать этот список, т.е. создавать и удалять содержащиеся в этом каталоге файлы), правомочие исполнения имеют для каталога особый смысл. Оно означает «право прохождения сквозь», т.е. право на обращение к файлам, содержащимся в каталоге и в его подкаталогах, даже если права на чтение самого каталога нет.
1.6 Процессы
Наряду с файлом, понятие процесса является важнейшим в концепции открытых операционных систем.
Процесс – это обладающая уникальным идентификатором единица исполняемого кода 35в памяти.
Подавая простую команду из оболочки, оператор дает ОС указание запустить другой процесс. В ходе исполнения процесс может порождать другие процессы и проходить целый ряд состояний , некоторые из которых будут ниже описаны. Сама оболочка также является процессом, порожденным, как правило, процессом регистрации в системе, который, в свою очередь, как правило, порождается особым инициализационным процессом.
Подобно файлам, процессы в своем отношении друг к другу могут быть представлены в виде иерархии (дерева). В отличие от иерархии файлов, ребра этого дерева представляют не отношения вложенности, но отношения порождения («родитель-ребенок»). Процесс не может появиться в системе иначе, нежели будучи порожденным другим процессом, за очевидным исключением «корневого» процесса, запускаемого самим ядром при загрузке системы. Само ядро не является процессом 36.
Исследовать процессы можно стандартной командой «ps». Поданная без параметров, она выводит информацию о текущей оболочке и порожденных ею процессах.

В выводе на Рис. 1-45 присутствуют четыре колонки. «PID» – это уникальный для системы идентификатор процесса (он устанавливается при порождении процесса и сохраняется неизменным до его завершения», «TTY» – терминал , с которого запущен процесс, «TIME» – время процесса (сумма квантов процессорного времени, потребленного процессом на момент «снимка» его состояния), «CMD» – команда , подача которой привела к порождению процесса.
В данном случае Алиса получила информацию о двух процессах: оболочке «bash» и внешней команде «ps» 37.
Команда «ps -A» выводит информацию обо всех процессах в системе 38. В примере на Рис. 1-46 мы, подав команду из эмулятора терминала, для наглядности использовали ключ «-A» вместе с ключом «-l» («эль»), задающим «длинный» формат вывода (с дополнительными полями) и нестандартным ключом «-H», представляющим с помощью отступов в поле «CMD» отношения между процессами (вывод немного сокращен).

Несколько иной набор параметров процесса можно получить, использовав вместо ключа «-l» ключ «-w», а ключ «-o» позволяет вывести для каждого процесса произвольный набор параметров из числа поддерживаемых системой, указав их мнемонику в качестве аргумента этого ключа.
Стандартом определено пятнадцать параметров, к которым могут добавляться параметры, специфичные для конкретной системы. Мы разберем лишь некоторые из них.
UID – это идентификатор пользователя-владельца процесса. Как и у файла, у процесса есть владелец. В данном примере (при использовании ключа «-l») идентификатор выводится в числовом виде; если бы был задан ключ «-w», мы бы увидели, что числовому идентификатору 504 соответствует символический идентификатор «maksim», 505 – «alice». Числовой идентификатор 0 всегда соответствует главному пользователю «root».
Читать дальшеИнтервал:
Закладка: