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

Сноски из книги

· #

1 Первые десять «лекций» упомянутого цикла также публиковались отдельной брошюрой [21].

· #

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

· #

3 Например, типичная цена одно-двухдискового дистрибутива российской сборки, включающего софт, достаточный для обеспечения школьной программы по информатике, не превышает трехсот рублей, в то время, как комплект из «Майкрософт Уиндоуз» и «Майкрософт Офис», покрывающий лишь часть программы, со всеми скидками обойдется не дешевле трех тысяч на каждое рабочее место.

· #

4 В ноябре 2001 года, во время рабочей встречи «Свободное программное обеспечение», проведенной Высшей школой экономики и издательским домом «Компьютерра» в рамках разворачивания федеральной целевой программы «Электронная Россия» [2], было достигнуто принципиальное соглашение о том, чтобы учебные материалы, разработанные в ЦКТ МГИУ и касающиеся применения СПО в учебном процессе, были опубликованы также под свободной лицензией. И коллеги из МГИУ выполнили свое обещание, благодаря чему на их сайте можно найти учебник «Практическая информатика» [4] (также опубликован и выпущен в продажу в виде традиционного двухтомного издания).

· #

5 В 2002 г. «Белл Лабз», подразделение «Эй-Ти-энд-Ти», занимающееся исследованиями и разработками, с какой-то целью релицензировало свободно одну из старых версию «Юникс», System 7, имеющую сегодня лишь историческое значение.

· #

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

· #

7 Единым «концентратором» ссылок на сайты систем «БСД» является сайт www.bsd.org.

· #

8 Ссылки на сайты большинства дистрибутивов «ГНУ/Линукс» можно найти на www.distrowatch.com.

· #

9 Сборка системы на базе «Линукс» «с нуля» описана в книге Linux from Scratch (www.linuxfromscratch.org). Русский перевод можно найти на http://vnc.org.ua/lfsbook/.

· #

10 Следует также понимать, что торговля коробками, как правило, не является основным бизнесом компании или команды, зарабатывающей чаще всего заказной разработкой и/или продажей услуг. Продажа коробок – низкорентабельные издательские проекты, в лучшем случае окупающие управление самим изданием.

· #

11 Из русских публикаций в особенности отметим цикл статей Алексея Федорчука «Юникс для всех» (http://linuxshop.ru/unix4all/) и книгу: Алексей Федорчук, «Офис, графика, Web в Linux». – СПб.: BHV, 2001.

· #

13 Реально команды разработчиков этих двух дистрибутивов международные, как и большинства дистрибутивов, считающихся «зарубежными» по месту публикации.

· #

14 Документация на издаваемые в России дистрибутивы ALT Linux и ASPLinux может быть найдена на http://docs.altlinux.ru и www.asplinux.ru/ru/docs, соответственно.

· #

15 Во время подготовки книги к печати было объявлено о планах поглощения компании «SuSE» компанией «Новелл».

· #

16 Промежутком также является знак табуляции, однако не следует применять табуляцию в этом качестве; большинство современных оболочек использует клавишу табуляции в интерактивном режиме особым способом. На самом деле, промежутком является и символ новой строки, который просто так ввести также не удастся, поскольку нажатие Enter означает ввод (передачу на исполнение) набранной команды.

· #

17 По поводу приведенного примера заметим еще, что год «4» соответствует не две тысячи четвертому, и не тысяча девятьсот четвертому годам, а ровно четвертому году от Р.Х.

· #

18 «By default», т.е. «при отказе» от явного указания параметров.

· #

19 Сокр. от англ. manual – «руководство».

· #

20 В документации, литературе и переписке часто имена команд ОС указываются с цифрой 1 в скобках, т.е. вместо «команда “link”» пишут «link(1)». Поскольку мы (почти) не обсуждаем сущностей, могущих оказаться омонимичными именам команд, мы такого соглашения не принимаем.

· #

21 Нулевой символ не может быть так просто введен с клавиатуры, поэтому сейчас вам не нужно об этом беспокоиться.

· #

22 Это первые предложения второго абзаца «Вечеров на хуторе близ Диканьки» Н.В.Гоголя.

· #

23 Стандарт предусматривает также ключ «-u», обеспечивающий побайтное, а не построчное копирование, однако ввиду буферизации ввода-вывода терминалом большинства систем такое различие не будет заметно в нашем примере.

· #

24 В восьмибитной (однобайтовой) кодировке. В кодировке UTF8 размер файла был бы почти в два раза больше, поскольку одному кириллическому символу в ней соответствует двухбайтовая (шестнадцатибитовая) последовательность.

· #

25 Программистам дескрипторы 0, 1, 2 известны также как «STDIN», «STDOUT», «STDERR».

· #

26 Команда может открывать и большее количество файлов ввода-вывода, но лишь три из них ассоциируются с терминалом автоматически при ее подаче.

· #

27 Отсюда фольклорное название «битодробилка» и многочисленные шутки, касающиеся того, как бы могло выглядеть соответствующее устройство, выполненное «в железе», и как бороться с переполнением «/dev/null».

· #

28 Также в строках вывода команды «ls -l» отсутствует поле «размер»; его место занимают пары чисел, называемых старшим и младшим номерами устройства (в данном случае «5, 1», «1, 3» и «5, 0»). Их значения зависят от конкретной реализации и интересны, как правило, администратору системы, но не обычному пользователю.

· #

29 В большинстве реальных ситуаций пользователь работает не со стандартной оболочкой «sh», а с усовершенствованной оболочкой, такой как «bash» или «zsh», совместимой сверху вниз со стандартной. При этом команда «sh» может быть, в зависимости от конкретной ОС, либо синонимом такой усовершенствованной, либо также включенной в систему строго стандартной оболочкой.

· #

30 От англ. «script» («сценарий»).

· #

31 Это концепция так называемых «собственных групп», поддерживаемая во многих системах «ГНУ/Линукс».

· #

32 В этом же поле отображаются и другие правомочия, которые мы не обсуждаем. В случае, если в этом поле присутствует другая буква, строчная буква (например, «s») означает исполняемый файл, а заглавная (например, «S») – неисполняемый.

· #

33 Во многих системах крайне полезным оказывается определить особый режим для некоторых каталогов, при котором пользователь имеет право создавать в нем новые файлы, но удалять может лишь те, что принадлежат ему. Для этого стандарт предусматривает расширение набора прав, известное, как «липкий бит».

· #

34 Именно поэтому метафора «папка» для каталога является неприемлемой.

· #

35 Формальное определение стандарта гласит, что процесс – «Адресное пространство с одним или более витком, исполняющимся в нем, и системными ресурсами, необходимыми для исполнения этих витков». Виток (thread, поток) в свою очередь определяется как «поток управления». Понятие витка в этом курсе нам не понадобится, поскольку отдельные витки недоступны оператору оболочки. Хотя стандарт и определяет процесс через виток, понятие витка является менее фундаментальной позднейшей добавкой к концепции открытых ОС и, по мнению многих авторитетных аналитиков, является лишь средством повышения производительности.

· #

36 В некоторых системах части кода ядра все же представлены в виде процессов, «усыновленных» инициализационным процессом.

· #

37 Точность представления «снимка» в различных реализациях варьирует; так что не пугайтесь, если при подаче такой команды, допустим, ОС «Солярис», не увидите информации о «ps» – используемая при выводе таблица просто не успела обновиться.

· #

38 Обычному пользователю предоставление информации о чужих процессах может быть ограничено по соображениям безопасности.

· #

39 Обратите внимание, что процессы, порожденные при подаче одинаковых команд (например «login» на tty1 и tty2 или «bash» на tty1, tty2 и pts/0), имеют разные идентификационные номера.

· #

40 Собственно говоря, определить, что представляет собой тот или иной процесс, можно, подав команду «man» с именем команды из столбца CMD в качестве аргумента. В «ГНУ/Линукс» этот фокус не пройдет с квазипроцессами, которыми представлены некоторые компоненты ядра, поскольку они не имеют страниц руководства.

· #

41 На самом деле сигнал приостановки и клавиатурная комбинация Control-Z не описаны в стандарте, но вы найдете эту возможность практически в любой открытой ОС.

· #

42 В некоторых «доюниксовых» ОС понятие переднего и заднего планов выполнения было связано с приоритетами заданий или с выполнением одного из них в режиме «реального времени». В открытых ОС понятие приоритета и понятие плана выполнения взаимонезависимы.

· #

43 В разумных пределах.

· #

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

· #

45 На самом деле современные ОС ставят в соответствие процессам каталоги в фиктивной файловой структуре, смонтированной в каталоге «/proc/», и управляют доступом к процессам на основании правомочий, сопоставленных этим «каталогам» и входящим в них «файлам».

· #

46 Хотя экранные команды («more», «vi») перехватывают нажатие Control-C.

· #

47 В терминах стандарта «группа команд» является полным синонимом «задания», так что задание, состоящее из одной простой команды, тоже называется «группой».

· #

48 Строго говоря, стандарт не говорит об этом прямо, но ограничивает набор символов стандартной локали семибитной латиницей, так что кроме американского или британского английского полностью реализовать стандартную локаль, не прибегая к транслитерации, можно разве что на латыни.

· #

49 Программы, входящие в утилиты ГНУ, составляющие большую часть системных программ в «ГНУ/Линукс», заметную – в ОС семейства «БСД» и часто используемые в других ОС, реализуют более продвинутую стратегию. Если определена переменная LANGUAGE, она будет интерпретироваться как список локалей (разделенных двоеточием) в порядке их предпочтения, в соответствии с которым программа будет искать локализационные ресурсы.

· #

50 В последнем случае можно явным образом передать этой конкретной программе значение переменной LC_ALL, равное «C» или «POSIX».

· #

51 Встроенные команды исполняются самой оболочкой, без вызова внешних программ. Пятнадцать команд («break», «:», «continue», «.», «eval», «exec», «exit», «export», «readonly», «return», «set», «shift», «times», «trap», «unset») являются специальными встроенными, их должна реализовать любая оболочка. Кроме того, разработчик оболочки может по каким-либо соображениям реализовать любую другую команду (стандартную или нестандартную) как встроенную. Пользователю в большинстве случаев безразлично, является ли команда встроенной или внешней, но при начале использования новой оболочки полезно ознакомиться со списком встроенных в нее команд.

· #

52 Это уточнение приведено специально для мигрантов с MS-DOS.

· #

53 В текущем каталоге случайно или вследствие чьей-то «шутки» может оказаться исполняемый файл, совпадающий по имени со стандартной или административной командой системы, но выполняющий другую функцию.

· #

54 «Pipe». В русской литературе встречается также перевод «канал».

· #

55 Возможно, стоит ей напомнить, что перенаправление выполняется оболочкой, которая при необходимости создает целевой файл, так что он в любом случае уже будет присутствовать в каталоге при выполнении команды «ls». Конечно, она может выкрутиться, создав файл в другом каталоге.

· #

56 Реальные оболочки при попытке перенаправить ввод или вывод одновременно в файл и другую команду ведут себя странно.

· #

57 И загромождение команд ключами, и произвольное ограничение возможностей пользователя свойственны и «доюниксовым» системам, и большинству сегодняшних альтернативных ОС.

· #

58 Не следует, как это случается с некоторыми журналистами, путать word-процессоры («словарные процессоры») с текстовыми процессорами. Словарный процессор, подобно текстовому редактору, предназначен для интерактивной работы с текстом. Примеры word-процессоров: «OpenOffice.org Writer», «Microsoft Word», «WordPerfect». Текстовые процессоры – средства программированной (неинтерактивной) обработки текста, часто связанной с изменением формата разметки. Примеры текстовых процессоров: «TeX», «troff», превращающие особым образом размеченный для типографского набора текст в данные для отображения на экране или на принтере (например, в форматах DVI или PostScript).

· #

59 Функциональность «Emacspeak» пока доступна лишь англоязычной аудитории.

· #

60 Исключением являются утилиты семейства «grep».

· #

61 Поскольку открытые системы являются многозадачными, декомпозируя задачу, решаемую сценарием, на несколько сценариев и используя системную многозадачность, можно реализовать определенный параллелизм в исполнении сценариев. Описание соответствующих приемов и команды «wait», позволяющей организовать синхронизацию («рандеву») потоков исполнения, выходит за рамки настоящего курса.

· #

62 На самом деле, в специальном комментарии может быть указан любой исполняемый файл, способный интерпретировать текстовые файлы. Возможно, читатель сталкивался с ним в начале программ, например, на языке Перл.

· #

63 Возможностью представить их обзор в компактном виде автор обязан прежде всего своим соавторам по [3] Егору Гребневу, Сергею Иванову, Михаилу Шигорину.

· #

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

· #

65 Имеются в виду графические оболочки («Майкрософт Уиндоуз» 1.x, 2.x, 3x, 9x и Me), а не семейство «Майкрософт Уиндоуз НТ» (сегодняшними версиями которых являются «Майкрософт Уиндоуз 2000, XP и .NET Server»).

· #

67 Строго говоря, «Мозилла» поддерживает и смешанные контексты, например, XUL-компоненты в HTML или наоборот, но XUL-интерпретатор как таковой не обязан этого делать, и XUL-интерпретатором, соответственно, вовсе не обязательно должен быть браузер.

· #

68 Это греческий корень, он читается как русское «тех», а не как «текс».

· #

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

· #

70 «В девичестве» (до того, как американская корпорация Sun Microsystems приобрела немецкую компанию StarDivision и свободно лицензировала код, права на который принадлежали ранее последней) пакет назывался StarOffice, а word-процессор – StarWriter; под таким названием он получил известность и обрел достаточную популярность, в том числе, и в России (особенно версии 5.1 и 5.2).

· #

71 Мы не касаемся здесь специального вопроса о сложных форматах кодирования, включающих векторные элементы и фрагменты растра, так же, как и – растрового и векторного – кодирования движущихся изображений и вопросов сжатия растровых изображений.

· #

72 Стоит отметить, что стоимость одной копии последнего, самого по себе не дешевого, вместе со всеми такими модулями составляет несколько тысяч долларов

· #

[1] Министерство образования Российской Федерации. «Обязательный минимум содержания образования по информатике».

· #

[2] Максим Отставнов (ред.). «Свободное программное обеспечение: бизнес-модели и корпоративные инициативы» – М.: ГУ-ВШЭ, 2001. Расширенную версию этого сборника можно найти на: http://www.otstavnov.com/fsr

· #

[3] Эрик Рэймонд. «Собор и базар» // «Открытые системы», ## 09-10, 1999 г.

· #

[4] С.В. Сергеев, Н.А. Роганова. Практическая информатика: учебное пособие. Ч.1 – М.: МГИУ, 2001. См. тж. http://www.ctc.msiu.ru/materials/

· #

[6] Документация на StarOffice 5.2 («Руководство пользователя» и «Инструкция по инсталляции», в совокупности около 600 стр.) входит в русское «коробочное» издание этого пакета. «Руководство пользователя» также (в значительно улучшенном переводе) издавала и включала в «коробочные» издания своих дистрибутивов, содержащих StarOffice, московская компания ASPLinux (www.asplinux.ru). Следует заметить, что «OO.o» 1.0 несколько отличается от StarOffice 5.2 и более ранних версий; однако единственным серьезным с точки зрения пользователя отличием является лишь отсутствие единого «рабочего стола» в первом.

· #

[12] Ричард Столлмен. Руководство по GNU Emacs (тринадцатая редакция) – М.: Институт логики, 1999

· #

[15] Nikolai Bezroukov. The Orthodox File Manager (OFM) Paradigm. Work in progress // http://www.softpanorama.org/OFM/Ofm_00.shtml

· #

[16] D. Englebart, W. English. A Research Center for Augmenting Human Intellect // AFIPS Conf. Proc., Fall Joint Computer Conf. – San Francisco, 1968.

· #

[17] Фредерик Брукс. «Мифический человеко-месяц: двадцать лет спустя» // Его же. «Мифический человеко-месяц». – СПб.: «Символ-плюс», 1999

· #

[18] Виктор Вагнер. True UNIX GUI // http://www.ice.ru/~vitus/thoughts/true_unix_gui.txt/true_unix_gui.txt

· #

[19] «Домашний компьютер» #12, 2002 г. Материалы номера также доступны онлайн (http://www.homepc.ru/offline/2002/78/).

· #

[21] Максим Отставнов. «Прикладные свободные программы в школе». – М.: «Медиа Технолоджи сервис», 2003.

----

Оглавление книги


Генерация: 0.043. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз