» » » Максим Отставнов - Свободные программы и системы в школе


Авторские права

Максим Отставнов - Свободные программы и системы в школе

Здесь можно скачать бесплатно "Максим Отставнов - Свободные программы и системы в школе" в формате fb2, epub, txt, doc, pdf. Жанр: Программное обеспечение, издательство «Институт логики», «ALT Linux Team», год 2003. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Рейтинг:
Название:
Свободные программы и системы в школе
Издательство:
«Институт логики», «ALT Linux Team»
Год:
2003
ISBN:
ISBN 5-85593-146-3
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "Свободные программы и системы в школе"

Описание и краткое содержание "Свободные программы и системы в школе" читать бесплатно онлайн.



Курс лекций, включенных в брошюру, знакомит читателя с популярными свободными программами и системами, полезными при преподавании информатики в средней школе. В обзор вошли основы открытых операционных систем, сведения о пакете «офисных» программ OpenOffice.org, коммуникационном пакете Mozilla, графическом редакторе GIMP, современных графических средах GNOME и KDE и других программах.

Для преподавателей информатики и методистов, а также для студентов и аспирантов соответствующих специальностей.

© 2002-3, Максим Отставнов.

© 2002, Андрей Добровольский (раздел 3.1).

Использован текст лекций, публиковавшихся автором в приложении к газете «Первое сентября» «Информатика» (http://inf.1september.ru) в 2002-3 г., материалы брошюры «Прикладные свободные программы в школе» (М.: 2003 г.), а также фрагменты статей, ранее публиковавшихся в журналах «Компьютерра» и «Домашний компьютер».

Материалы, представленные в этой книге, также доступны в Интернет на странице www.otstavnov.com/fsft на условиях Свободной лицензии ГНУ на документацию (GNU FDL). Все прочие права сохраняются за автором.






Подобно файлам, процессы в своем отношении друг к другу могут быть представлены в виде иерархии (дерева). В отличие от иерархии файлов, ребра этого дерева представляют не отношения вложенности, но отношения порождения («родитель-ребенок»). Процесс не может появиться в системе иначе, нежели будучи порожденным другим процессом, за очевидным исключением «корневого» процесса, запускаемого самим ядром при загрузке системы. Само ядро не является процессом36.

Исследовать процессы можно стандартной командой «ps». Поданная без параметров, она выводит информацию о текущей оболочке и порожденных ею процессах.

Рис. 1-45

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

В данном случае Алиса получила информацию о двух процессах: оболочке «bash» и внешней команде «ps»37.

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

Рис. 1-46

Несколько иной набор параметров процесса можно получить, использовав вместо ключа «-l» ключ «-w», а ключ «-o» позволяет вывести для каждого процесса произвольный набор параметров из числа поддерживаемых системой, указав их мнемонику в качестве аргумента этого ключа.

Стандартом определено пятнадцать параметров, к которым могут добавляться параметры, специфичные для конкретной системы. Мы разберем лишь некоторые из них.

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

Обычно UID наследуется от процесса-родителя. Исключение составляют процессы-оболочки, запускаемые программой регистрации – их UID соответствует идентификатору зарегистрировавшегося пользователя, хотя UID самой программы регистрации – 0.

Еще одно исключение – процессы, порожденные запуском программы из файла с установленным битом SUID. Их UID соответствует не породившему их процессу, а владельцу исполняемого файла. SUID (и подобный ему по эффекту бит GUID) – это мощный (и очень опасный) инструмент обхода системы распределения полномочий в ОС, поскольку позволяет пользователю запускать процессы с полномочиями выше собственных (в том числе, с полномочиями главного пользователя). Установить SUID бит может только главный пользователь. В аккуратно построенной и администрируемой системе количество программ с установленным SUID (и/или GUID) битом минимально.

В нашем примере этот механизм с очевидностью использован при запуске процесса «X» (Икс-сервер – основной компонент графической системы, предоставляющий в распоряжение Икс-клиентов (программ с графическим интерфейсом) виртуальный X-терминал, связанный с физическими видеоадаптером, клавиатурой, мышью и системным динамиком), чьим родителем является процесс «xinit» с UID равным 504. Существенно, что Икс-клиенты (процессы «blackbox», «soffice.bin», «mozilla-bin», «xterm») выполняются с обычным пользовательским UID.

PID, как мы уже знаем, это уникальный идентификатор процесса39, а PPID – идентификатор его родителя. Обратите внимание на соответствие между PPID различных процессов в примере и расположением их в сформированном ключом «-H» «дереве».

TIME – время процесса – это совокупное количество процессорного времени, потребленного процессором на выполнение этого процесса за время его существования.

S – это состояние процесса. Запущенный процесс может находиться в одном из четырех стандартных состояний: «R» (выполняемый), «S» (ожидающий ввода-вывода), «T» (приостановленный – приостановку процессов мы обсудим ниже), «Z» («зомбированный», уже завершенный, но не успевший сообщить об этом процессу-родителю).

Итак, в примере на Рис. 1-46 мы видим:

находящийся в корне дерева процесс «init»;

два порожденных им процесса, не имеющих управляющего терминала: демон управления системой энергосбережения «apmd»40 и демон периодического исполнения заданий «crond»;

порожденный процессом init процесс «login» с tty1 в качестве управляющего терминала;

порожденный этим процессом «login» процесс «bash» – экземпляр оболочки также с tty1 в качестве управляющего терминала;

порожденный процессом «bash» процесс «xinit» (это сценарий, запускающий компоненты графической среды);

порожденные процессом «xinit» процессы «X» (это сервер оконной системы X, он запущен в качестве демона, т.е. без управляющего терминала) и «blackbox» (это менеджер окон графической среды);

порожденные процессом «blackbox» процессы «soffice.bin» (это словарный процессор «OpenWriter», в котором набирается данный текст), «mozilla-bin» (браузер «Мозилла»), «xterm» (эмулятор текстового терминала). Они не имеют управляющего терминала;

порожденный эмулятором терминала процесс оболочки «bash» с псевдотерминалом pts/0, назначенным при запуске эмулятора терминала, в качестве управляющего;

порожденный этой оболочкой процесс «ps», который и осуществил приведенный в примере вывод;

порожденный процессом «init» процесс «login» и порожденный им процесс «bash» на терминале tty2.

Управление заданиями и сигнализация процессов

В среде стандартной оболочки и команд открытой ОС запустить бесконечный процесс можно, введя команду «( while : ; do : ; done )», запускающую бесконечный цикл в подчиненном экземпляре оболочки (Рис. 1-47).

Пока не нужно беспокоиться о понятности синтаксиса управляющих конструкций.

Рис. 1-47

Если Алиса все сделала правильно, то сценарий сам по себе уже не остановится никогда (скорее всего, до разгрузки системы). Приглашения оболочки Алиса тоже уже не получит, поэтому даже не сможет выйти из системы.

Справиться с этой ситуацией ей поможет клавиатурная комбинация Control-C. Как и комбинация Control-D, она не отображается на экране, но после ее нажатия Алиса получает приглашение оболочки и при помощи команды «ps» убеждается, что никаких процессов, кроме самой оболочки и «ps», под этой оболочкой не выполняется.

Рис. 1-48

Клавиатурная комбинация Control-C побуждает драйвер терминала отправить сигнал нормального завершения выполняемому процессу (в данном случае, подчиненной оболочке).

Клавиатурная комбинация Control-Z побуждает драйвер терминала отправить выполняемому процессу другой сигнал – приостановки41.

Рис. 1-49

После нажатия Control-Z оболочка выдает сообщение, состоящее из числа в квадратных скобках, слова «остановлен» («stopped» в стандартной локали) и введенной ранее команды (Рис. 1-49).

Число в квадратных скобках – это номер задания. Заданием является любая начавшая выполняться простая команда.

Состояние соответствующего процесса (колонка «S» в выводе «ps -l» (эль)) обозначено буквой «T», означающей, что процесс остановлен. Задание, соответствующее такому процессу, также называется остановленным.

Возобновить исполнение задания можно двумя способами. Команда «fg» возобновляет выполнение задания на переднем плане, а команда «bg» – на заднем плане (или в фоновом режиме)42. Заданием переднего плана называется задание, завершения ведущего процесса (первого процесса, запущенного подачей команды) которого ожидает оболочка перед выводом очередного приглашения, и которое может свободно выводить данные на управляющий терминал и вводить их с терминала.

В любой момент времени на переднем плане каждого управляющего терминала находится не более одного задания. Заданий заднего плана может быть неограниченное43 количество.

Рис. 1-50

В примере на Рис. 1-50 Алиса запускает сценарий «цикл», останавливает его нажатием Control-Z, затем возобновляет его выполнение на переднем плане командой «fg», снова останавливает, и затем возобновляет на заднем плане командой «bg». После этого Алиса сразу получает приглашение и, введя команду «ps -l», видит соответствующий выполнению сценария процесс «bash» (PID 2765) с состоянием «R» («выполняемый»).


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "Свободные программы и системы в школе"

Книги похожие на "Свободные программы и системы в школе" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора Максим Отставнов

Максим Отставнов - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "Максим Отставнов - Свободные программы и системы в школе"

Отзывы читателей о книге "Свободные программы и системы в школе", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.