Файл: Debian Таненбаум Бос.pdf

ВУЗ: Не указан

Категория: Книга

Дисциплина: Операционные системы

Добавлен: 29.10.2018

Просмотров: 45394

Скачиваний: 168

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

1116  

 Глава 13. Библиография 

3. Bratus, What Hackers Learn That the Rest of Us Don’t.

Что делает хакеров хакерами? Почему они думают о том, о чем обычные програм-
мисты забывают? Есть ли у них свои требования к интерфейсу программ? Как 
относиться к таким людям? Хотите узнать? Тогда читайте.

4.  Bratus et al., From Buffer Overflows to Weird Machines and Theory of Computation.

Объединяет скромное переполнение буфера с идеями Алана Тьюринга. Авторы 
показывают, что хакеры программируют уязвимые программы как «странные 
машины» (weird machines) с весьма странным с виду набором команд. При этом 
они взяли на вооружение основополагающие исследования Тьюринга «What is 
computable?» («Что поддается вычислению?»).

5. Denning, Information Warfare and Security.

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

6.  Ford and Allen, How Not to Be Seen.

Вирусы, шпионящее ПО, руткиты и защита авторских прав на электронную про-
дукцию — все это вызывает большой интерес. Данная статья даст вам общее пред-
ставление о разнообразных уловках.

7.  Hafner and Markoff, Cyberpunk.

Три захватывающие истории о молодых хакерах, взламывающих компьюте-
ры по всему миру, рассказанные компьютерным обозревателем New York Times 
(Markoff). 

8.  Johnson and Jajodia, Exploring Steganography: Seeing the Unseen.

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

9. Ludwig, The Little Black Book of Email Viruses.

Если вы решили написать антивирусную программу и хотите скрупулезно разо-
браться в работе вирусов, эта книга для вас. В ней разобраны все типы вирусов 
и приведены довольно обширные и актуальные примеры кода для многих из них. 
Но для чтения потребуются основательные знания по программированию на языке 
ассемблера x86.

10. Mead, 

Who is Liable for Insecure Systems?

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


background image

13.1. Дополнительная литература   

1117

работе. Какова вероятность того, что продавцы будут уделять большее внимание 
вопросам безопасности, чем сейчас ? Интересно? Тогда читайте статью.

11. Milojicic, 

Security and Privacy.

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

12. Nachenberg, 

Computer Virus-Antivirus Coevolution.

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

13.  Sasse, Red-Eye Blink, Bendy Shuffle, and the Yuck Factor: A User Experience of Biometric 

Airport Systems.

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

14. Thibadeau, 

Trusted Computing for Disk Drives and Other Peripherals.

Если вы думаете, что диск — это то место, где хранятся биты, подумайте еще раз. 
Современные устройства хранения информации имеют собственный мощный про-
цессор, мегабайтную оперативную память, множество каналов передачи инфор-
мации и даже собственное загрузочное ПЗУ. То есть они являются полноценным 
вычислительным комплексом, который нуждается в собственной системе защиты 
от нападений. Эта статья обсуждает вопросы безопасности устройств хранения 
информации.

13.1.10. Изучение конкретных примеров 1: Unix, Linux 
и Android

1.  Bovet and Cesati, Understanding the Linux Kernel.

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

2. IEEE, Information Technology — Portable Operating System Interface (POSIX), Part 1: 

System Application Program Interface (API) [C Language].

Это стандарт. Некоторые разделы вполне удобочитаемы, особенно дополнение B, 
Rationale and Notes («Обоснования и примечания»), благодаря которому часто 
становится понятно, почему то или иное сделано именно так, а не иначе. Одно 
из преимуществ ссылки на стандарт заключается в том, что в этом документе 
по определению нет ошибок. Если какой-либо типографской ошибке в макросе 
удается преодолеть процесс редактирования, то после этого она уже не ошибка, 
а официальный факт.


background image

1118  

 Глава 13. Библиография 

3. Fusco, The Linux Programmers’ Toolbox.

Эта книга рассчитана на подготовленных читателей, которые знакомы с основами 
и начинают разбираться, как же работают программы. Она подойдет для любите-
лей языка С.

4. Maxwell, Linux Core Kernel Commentary.

Первые 400 страниц этой книги содержат подмножество кода ядра операционной 
системы Linux. Последние 150 страниц представляют собой комментарий к коду, 
что соответствует стилю классической книги Джона Лайонза. Если вы хотите 
понять ядро Linux в мельчайших деталях, эта книга поможет вам начать это не-
простое дело. Следует предупредить читателя: чтение 40 000 строк на языке C — 
занятие не для всех.

13.1.11. Изучение конкретных примеров 2: Windows 8

1.  Cusumano and Selby, How Microsoft Builds Software.

Вы никогда не задумывались о том, как вообще кому-то удалось написать про-
грамму, состоящую из 29 млн строк (как Windows 2000), да еще и заставить ее 
работать? Чтобы понять, как используется цикл создания и тестирования про-
грамм корпорации Microsoft для управления очень большими программными 
проектами, читайте эту статью.

2.  Rector and Newcomer, Win32 Programming.

Если вы ищете одну из тех 1500-страничных книг, в которых дается краткое изло-
жение того, как писать программы для системы Windows, это неплохой экземпляр. 
Среди прочих тем в ней описываются окна, устройства, графический вывод, ввод 
с клавиатуры и мыши, печать, управление памятью, библиотеки и синхронизация. 
Для чтения книги требуется знание языка программирования C или C++.

3.  Russinovich and Solomon, Microsoft Windows Internals, Part 1.

Если вы хотите научиться работать в Windows, для этого существуют сотни книг. 
Если же вы хотите узнать, как устроена операционная система Windows, то эта 
книга окажется лучшим выбором. В ней описываются, и довольно подробно, 
множество внутренних алгоритмов и структур данных. Никакая другая книга не 
сравнится с этой.

13.1.12. Проектирование операционных систем

1.  Saltzer and Kaashoek, Principles of Computer System Design: An Introduction.

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


background image

13.2. Алфавитный список литературы   

1119

2. Brooks, The Mythical Man-Month: Essays on Software Engineering.

Фред Брукс был одним из разработчиков операционной системы OS/360. Он на 
собственном опыте научился отличать то, что работает, от того, что не работает. Со-
веты, содержащиеся в этой остроумной, развлекательной и информативной книге, 
столь же ценны сегодня, как и четверть века назад, когда эта книга была написана.

3.  Cooke et al., UNIX and Beyond: An Interview with Ken Thompson.

Разработка операционных систем представляет собой скорее искусство, чем науку. 
Поэтому хороший способ узнать о предмете — слушать экспертов в этой области. 
Вряд ли можно найти лучшего эксперта, чем Кен Томпсон, который был одним из 
разработчиков систем UNIX, Inferno и Plan 9. В этом пространном интервью Томп-
сон делится своими мыслями по поводу истории и перспектив данной области.

4. Corbató, On Building Systems That Will Fail.

В своей лекции по поводу получения премии Тьюринга основатель системы раз-
деления времени высказывает примерно те же соображения, что и Брукс в книге 
Mythical Man-Month. Он приходит к выводу, что все сложные системы в конце кон-
цов ждет крах, и, чтобы иметь хоть какой-то шанс на успех, необходимо избегать 
сложности и придерживаться простоты и элегантности проекта.

5. Crowley, Operating Systems: A Design-Oriented Approach.

В большинстве книг по операционным системам просто описываются основные 
понятия (процессы, виртуальная память и т. д.), а также приводится несколько 
примеров, но ничего не говорится о том, как проектировать операционные систе-
мы. Эта книга уникальна тем, что данной теме в ней посвящены четыре главы.

6. Lampson, Hints for Computer System Design.

Батлер Лэмпсон — один из ведущих разработчиков передовых операционных 
систем в мире. В его увлекательной и полезной статье вы найдете множество 
подсказок, предложений и практических рекомендаций. Каждый честолюбивый 
разработчик операционных систем должен прочитать эту статью и книгу Брукса.

7. Wirth, A Plea for Lean Software.

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

13.2. Алфавитный список литературы

Подробный алфавитный список литературы можно скачать с сайта издательства 

www.

piter.com

.


background image

 Э. Таненбаум, Х. Бос

Современные операционные системы

4-е издание

Перевели с английского А. Леонтьева, М. Малышева, Н. Вильчинский

 

Заведующая редакцией 

Ю. Сергиенко

 

 

 

 

Литературный редактор 

Н. Рощина

 

Художник 

В. Шимкевич

 

Корректоры 

С. Беляева, Н. Викторова

 

Верстка 

Е. Трефилов

ООО «Питер Пресс», 192102, Санкт-Петербург, ул. Андреевская (д. Волкова), 3, литер А, пом. 7Н.

Налоговая льгота — общероссийский классификатор продукции ОК 034-2014, 58.11.12.000 — 

Книги печатные профессиональные, технические и научные.

Подписано в печать 13.03.15. Формат 70×100/16. Усл. п. л. 90,300. Тираж 2500. Заказ 0000.

Отпечатано в полном соответствии с качеством предоставленных издательством материалов 

в Первой Академической типографии «Наука». 199034, Санкт-Петербург, 9-я линия, 12/28.