Программирование для Linux. Профессиональный подход

Программирование для Linux. Профессиональный подход

Данная книга в основном посвящена программированию в среде GNU/Linux. Авторы применяют обучающий подход, последовательно излагая самые важные концепции и методики использования расширенных возможностей системы GNU/Linux в прикладных программах. Читатели научатся писать программы, к интерфейсу которых привыкли пользователи Linux; освоят такие технологии, как многозадачность, многопотоковое программирование, межзадачное взаимодействие и взаимодействие с аппаратными устройствами; смогут улучшить свои программы, сделав их быстрее, надежнее и безопаснее; поймут особенности системы GNU/Linux, ее ограничения, дополнительные возможности и специфические соглашения.

Книга предназначена для программистов, уже знакомых с языком С и имеющих базовый опыт работы в GNU/Linux.

Жанр: Программирование
Серии: -
Всего страниц: 114
ISBN: 5-8459-0243-6
Год издания: 2002
Формат: Полный

Программирование для Linux. Профессиональный подход читать онлайн бесплатно

Шрифт
Интервал

Об авторах

Марк Митчелл (Mark Mitchell) получил степень бакалавра вычислительной техники в Гарвардском университете в 1994 году и степень магистра — в Станфордском университете в 1999 году. Его научные исследования касались теории сложности вычислений и компьютерной безопасности. Марк принимал участие в разработке коллекции GNU-компиляторов (GCC).

Джеффри Оулдем (Jeffrey Oldham) получил степень бакалавра вычислительной техники в университете Райс в 1991 году. После работы в Центре исследования параллельных вычислений он получил степень доктора философии в Станфордском университете в 2000 году. Его научные исследования касались теории алгоритмов. В настоящее время он продолжает разработку коллекции GNU-компиляторов и пишет программы для научных расчетов.

Алекс Самьюэл (Alex Samuel) окончил физический факультет Гарвардского университета в 1995 году. Он работал инженером-программистом в компании BBN, после чего вернулся к изучению физики в Станфордском университете. Алекс является администратором проекта Software Carpentry и занимается рядом других проектов, в частности оптимизацией коллекции GCC.

Марк и Алекс основали компанию CodeSourcery LLC в 1999 году. Джеффри пришел в компанию в 2000 году. Целями компании являются создание средств разработки для GNU/Linux и других операционных систем; превращение семейства GNU-утилит в стандартный набор средств разработки промышленного качества; выполнение работ под заказ и предоставление консультаций. Адрес Web-узла компании: >www.codesourcery.com.

О научных консультантах

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

Гленн Бекер (Glenn Becker) имеет много научных степеней, все в области театрального искусства. В настоящее время он работает онлайн-продюсером в SCIFI.COM — интерактивном компоненте канала SCI FI в Нью-Йорке. Дома у него установлена система Debian Linux, и он интересуется такими темами, как системное администрирование, безопасность. локализация программного обеспечения и XML.

Джон Дин (John Dean) получил степень бакалавра естественных наук в Шеффилдском университете в 1974 году. В 1986 г. он получил степень магистра систем автоматического управления в Институте наук и технологий в Кранфилде. Работая в компании Roll Royce and Associates, Джон разрабатывал программное обеспечение для систем автоматизированного управления ядерной техникой. После ухода из компании в 1978 г. он работал в нефтехимической промышленности, занимаясь созданием систем управления технологическими процессами. С 1996 по 2000 гг. Джон был добровольным разработчиком компании MySQL, после чего перешел на работу в эту компанию. Джон занимается переносом MySQL в Windows и написанием нового графического клиента MySQL для платформ Windows и X11.

Благодарности

Мы выражаем глубокую признательность Ричарду Сталлману (Richard Stallman), без которого никогда не было бы проекта GNU, и Линусу Торвальдсу (Linus Torvalds) без которого никогда не было бы ядра Linux. Огромное число -людей внесло свой вклад в операционную систему Linux и мы благодарим их всех.

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

Ричард Стивенс (W. Richard Stevens) написал три великолепные книги по программированию в UNIX, которыми мы постоянно пользуемся. Роланд Маграт (Roland McGrath), Ульрих Дреппер (Ulrich Drepper) и многие другие написали GNU-библиотеку языка С и превосходную документацию к ней.

Роберт Бразил (Robert Brazile) и Сэм Кендалл (Sam Kendall) просмотрели ранние наброски нашей книги и дали советы по ее направленности и содержанию. Наши научные консультанты и рецензенты (особенно Гленн Бекер и Джон Дин) находили ошибки и оказывали нам техническую поддержку. Естественно, оставшиеся ошибки — целиком на нашей совести!

Благодарим сотрудников издательства New Riders: Энн Куинн (Ann Quinn) — за решение всех вопросов, связанных с публикацией книги: Лору Ловолл (Laura Loveall) — за то, что помогла нам уложиться в сроки; Стефани Уолл (Stephanie Wall) — за то что вдохновила нас на написание этой книги.

Введение

Операционная система Linux вихрем ворвалась в мир компьютеров. Было время, когда выбор пользователей был ограничен коммерческими операционными системами и приложениями. У пользователей не было возможности исправлять или улучшать эти программы и часто они были вынуждены принимать довольно жесткие лицензионные условия. С появлением GNU/Linux и других систем с открытым кодом все изменилось. Теперь в распоряжении пользователей, администраторов и разработчиков есть бесплатная операционная система с множеством утилит приложений и со всеми исходными текстами.

Большая доля успеха GNU/Linux приходится на открытую природу этой системы. Поскольку исходные тексты программ общедоступны, любой может принять участие в их разработке, либо путем исправления незначительной ошибки либо путем распространения целого приложения. Это подвигло тысячи разработчиков во всем мире на создание новых программных компонентов и улучшение операционной системы до такой степени, что она сравнялась по своим возможностям с любой коммерческой ОС. В дистрибутивы Linux входят тысячи программ и приложений.


Рекомендуем почитать
Красивый вопрос

Сегодня мы все изголодались по толковым ответам. Но чтобы получать их, нам нужно научиться задавать толковые вопросы! В этой сенсационной книге журналист и эксперт по инновациям Уоррен Бергер показывает, что одной из самых мощных движущих сил в бизнесе и повседневной жизни является самый простой инструмент – который имеется в нашем распоряжении с детства. Умение задавать вопросы – глубокие, неординарные, «красивые» – помогает нам решать проблемы, выдвигать свежие идеи, находить и использовать новые возможности, оно является движущей силой инноваций.


Уроки Икара. Как высоко вы можете взлететь?

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


Переплетение судеб

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


В поисках утраченного 'Я'

Почему даже при полном благополучии вы часто не удовлетворены своей жизнью и отношениями с окружающими? Чем вы руководствуетесь, совершая те или иные поступки или произнося те или иные слова? Что представляет собой ваше «Я»? Эти вопросы время от времени задает себе каждый. Книга-тренинг «В поисках утраченного „Я“» не только ответит на них, но и поможет вам распознать и решить проблемы, которые существуют в вашем подсознании, но активно влияют на всю вашу жизнь.


Изучаем Java EE 7

Java Enterprise Edition (Java EE) остается одной из ведущих технологий и платформ на основе Java. Данная книга представляет собой логичное пошаговое руководство, в котором подробно описаны многие спецификации и эталонные реализации Java EE 7. Работа с ними продемонстрирована на практических примерах. В этом фундаментальном издании также используется новейшая версия инструмента GlassFish, предназначенного для развертывания и администрирования примеров кода. Книга написана ведущим специалистом по обработке запросов на спецификацию Java EE, членом наблюдательного совета организации Java Community Process (JCP)


Геймдизайн. Рецепты успеха лучших компьютерных игр от Super Mario и Doom до Assassin’s Creed и дальше

Что такое ГЕЙМДИЗАЙН? Это не код, графика или звук. Это не создание персонажей или раскрашивание игрового поля. Геймдизайн – это симулятор мечты, набор правил, благодаря которым игра оживает. Как создать игру, которую полюбят, от которой не смогут оторваться? Знаменитый геймдизайнер Тайнан Сильвестр на примере кейсов из самых популярных игр рассказывает как объединить эмоции и впечатления, игровую механику и мотивацию игроков. Познакомитесь с принципами дизайна, которыми пользуются ведущие студии мира! Создайте игровую механику, вызывающую эмоции и обеспечивающую разнообразие.


Перевод в электронный формат, кодированные наборы шрифтов и система Оптического Распознавания Символов для многошрифтовых информационных ресурсов на примере “Летописи журнальных статей”

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


Java 7

Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.


Экстремальное программирование. Разработка через тестирование

Возвращение знаменитого бестселлера. Изящный, гибкий и понятный код, который легко модифицировать, который корректно работает и который не подкидывает своим создателям неприятных сюрпризов. Неужели подобное возможно? Чтобы достичь цели, попробуйте тестировать программу еще до того, как она написана. Именно такая парадоксальная идея положена в основу методики TDD (Test-Driven-Development – разработка, основанная на тестировании). Бессмыслица? Не спешите делать скороспелые выводы. Рассматривая применение TDD на примере разработки реального программного кода, автор демонстрирует простоту и мощь этой методики.


Обработка событий в С++

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