» » » Майкл Джонсон - Разработка приложений в среде Linux. Второе издание


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

Майкл Джонсон - Разработка приложений в среде Linux. Второе издание

Здесь можно скачать бесплатно "Майкл Джонсон - Разработка приложений в среде Linux. Второе издание" в формате fb2, epub, txt, doc, pdf. Жанр: Программное обеспечение, издательство Вильямс, год 2007. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Майкл Джонсон - Разработка приложений в среде Linux. Второе издание
Рейтинг:
Название:
Разработка приложений в среде Linux. Второе издание
Издательство:
Вильямс
Год:
2007
ISBN:
978-5-8459-1143-8
Скачать:

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

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

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

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

Описание книги "Разработка приложений в среде Linux. Второе издание"

Описание и краткое содержание "Разработка приложений в среде Linux. Второе издание" читать бесплатно онлайн.



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

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






С целью продвижения своей идеи Ричард Столлман не без помощи других создал общедоступную лицензию (General Public License — GPL). Эта лицензия оказала настолько большое влияние, что аббревиатура GPL вошла в жаргон разработчиков как глагол; вместо "применить условия GPL к создаваемому вами ПО" часто говорят "to GPL".

Лицензия GPL состоит из трех пунктов.

1. Каждый получатель ПО, подпадающего под условия GPL, имеет право получить исходный код этого ПО без дополнительной платы (исключая плату за доставку).

2. Любое ПО, производное от ПО, подпадающего под условия GPL, должно сохранить GPL в качестве лицензии для свободного распространения.

3. Любой владелец ПО, подпадающего под условия GPL, имеет право распространения этого ПО на условиях, не конфликтующих с GPL.

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

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

Основным проектом участников FSF является проект GNU's Not Unix (GNU), цель которого — создание свободно распространяемой Unix-подобной операционной системы. При запуске проекта GNU было очень мало высококачественного свободно распространяемого ПО, поэтому его участники начали с создания приложений и инструментов для будущей системы, а не с самой операционной системы. Поскольку лицензия GPL была также произведена FSF, ко многим ключевым компонентам операционной системы GNU применены условия GPL, но на протяжении многих лет проект GNU принял многие другие пакеты, например, X Window System, систему верстки ТЕХ и язык Perl, свободно распространяемые под другими лицензиями.

Результатом проекта GNU стало несколько основных пакетов и множество второстепенных. Основные пакеты включают редактор Emacs, библиотеку GNU С, коллекцию компиляторов GNU (gcc, как изначально назывался компилятор GNU С перед добавлением С++), оболочку bash и gawk (GNU's awk). Второстепенные пакеты включают высококачественные утилиты оболочек и программы обработки текста, которые обычно присутствуют в системе Unix.

1.2. Разработка Linux

В 1991 году Линус Торвальдс (Linus Torvalds), в то время студент Хельсинкского университета, начал проект, целью которого было обучение низкоуровневому программированию для процессора Intel 80386. В то время он работал с операционной системой Minix, созданной Эндрю Таненбаумом (Andrew Tanenbaum), поэтому изначально совмещал свой проект с системными вызовами Minix и структурой дисковой файловой системы. Реализовав первую версию ядра Linux в Internet под довольно ограничивающей лицензией, вскоре он, однако, сменил эту лицензию на GPL.

Сочетание GPL и первоначального набора функций ядра Linux убедило других разработчиков предложить свою помощь при разработке ядра. Реализация библиотеки С, производная от потенциального в то время проекта библиотеки GNU С, позволила разработчикам создавать "родные" пользовательские приложения. Затем последовали собственные версии gcc, Emacs и bash. В 1992 году разработчик со средней квалификацией мог установить и загрузить версию Linux 0.95 на большинстве машин с процессором Intel 80386.

Проект Linux с самого начала был тесно связан с проектом GNU. Исходная база проекта GNU стала очень важным ресурсом сообщества Linux для создания завершенной системы. Хотя значительное количество систем, основанных на Linux, произведены из источников, которые включают свободно доступный код Unix Калифорнийского университета в Беркли и консорциума X Consortium, многие важные части функциональной системы Linux напрямую связаны с проектом GNU.

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

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

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

Одним из проектов, повлиявших на эту совместимость, является стандарт иерархии файловых систем (Filesystem Hierarchy Standard — FHS), ранее называемый стандартом файловых систем Linux (Linux Filesystem Standard — FSSTND), определяющий, где следует хранить множество файлов, и объясняющий в общих чертах, каким образом должна быть организована оставшаяся часть файловой системы. Позднее проект под названием стандартная база Linux (Linux Standard Base — LSB) был расширен без учета структуры файловой системы, определяя программные интерфейсы приложений (Application Programming Interface — API) и двоичные интерфейсы приложений (Application Binary Interface — ABI). Эти интерфейсы предназначены для возможности компиляции приложения один раз и развертывания его на любой системе, подчиняющейся определению LSB для данной архитектуры процессора. Эти и другие документы доступны на Web-сайте по адресу http://freestandards.org.

1.3. Важные факты в создании систем Unix

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

На заре восьмидесятых годов прошлого столетия разработчики Unix были разделены на два "лагеря": первый — Калифорнийский университет в Беркли, а второй — компания AT&T Bell Laboratories. Оба учреждения разрабатывали и поддерживали операционные системы Unix, которые происходили от исходной реализации Unix, созданной в Bell Laboratories.

Версия Unix от Беркли стала известной как программный дистрибутив Беркли (Berkeley Software Distribution — BSD) и приобрела популярность в научном сообществе. Система BSD впервые включила организацию сетей TCP/IP, что повлияло на ее успех и помогло убедить компанию Sun Microsystems основать на BSD первую операционную систему Sun — SunOS.

В компании Bell Laboratories также трудились над совершенствованием Unix, но, к сожалению, несколько другими способами, чем в Беркли. Разнообразные выпуски Bell Laboratories обозначались словом "System", сопровождаемым римским числом. Окончательным выпуском Unix от Bell Laboratories была System V (или SysV); UNIX System У Release 4 (SVR4) сегодня предоставляет кодовую базу для большинства коммерческих операционных систем Unix. Стандартным документом, описывающим System V, является System V Interface Definition (SVID).

Эта разветвленная разработка Unix значительно разнообразила системные вызовы, системные библиотеки и основные команды систем Unix. Одним из лучших примеров такого расщепления являются сетевые интерфейсы, сопровождающие приложения каждой операционной системы. Системы BSD использовали интерфейс под названием сокетов, позволяющий программам сообщаться друг с другом по сети. С другой стороны, System V предоставила интерфейс транспортного уровня (Transport Layer Interface — TLI), полностью несовместимый с сокетами, и официально определенный транспортный интерфейс X/Open (X/Open Transport Interface — XTI). Такая разнородная разработка значительно снизила переносимость программ между версиями Unix, увеличивая стоимость и уменьшая доступность сторонних продуктов для всех версий Unix.


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

Похожие книги на "Разработка приложений в среде Linux. Второе издание"

Книги похожие на "Разработка приложений в среде Linux. Второе издание" читать онлайн или скачать бесплатно полные версии.


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

Все книги автора Майкл Джонсон

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

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

Отзывы о "Майкл Джонсон - Разработка приложений в среде Linux. Второе издание"

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

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