diff options
Diffstat (limited to 'documentation/content/ru/books/developers-handbook/_index.adoc')
-rw-r--r-- | documentation/content/ru/books/developers-handbook/_index.adoc | 253 |
1 files changed, 18 insertions, 235 deletions
diff --git a/documentation/content/ru/books/developers-handbook/_index.adoc b/documentation/content/ru/books/developers-handbook/_index.adoc index 98a3fbc883..9e83164861 100644 --- a/documentation/content/ru/books/developers-handbook/_index.adoc +++ b/documentation/content/ru/books/developers-handbook/_index.adoc @@ -1,24 +1,31 @@ --- -title: Руководство FreeBSD для разработчиков +add_single_page_link: true authors: - - author: The FreeBSD Documentation Project -copyright: 1995-2020 The FreeBSD Documentation Project + - + author: 'The FreeBSD Documentation Project' +bookOrder: 25 +copyright: '1995-2023 The FreeBSD Documentation Project' +description: 'Для тех, кто хочет разрабатывать программное обеспечение для FreeBSD (а не только для тех, кто разрабатывает саму FreeBSD)' +next: books/developers-handbook/parti +params: + path: /books/developers-handbook/ +showBookMenu: true +tags: "[\"FreeBSD Developers' Handbook\"]" +title: 'Руководство разработчика FreeBSD' trademarks: ["freebsd", "apple", "ibm", "ieee", "intel", "linux", "microsoft", "opengroup", "sun", "general"] -isIndex: true +weight: 0 --- -= Руководство FreeBSD для разработчиков += Руководство разработчика FreeBSD :doctype: book :toc: macro -:toclevels: 2 +:toclevels: 1 :icons: font :sectnums: :sectnumlevels: 6 :partnums: :source-highlighter: rouge :experimental: -:book: true -:pdf: false :images-path: books/developers-handbook/ ifdef::env-beastie[] @@ -30,245 +37,21 @@ include::shared/attributes/attributes-{{% lang %}}.adoc[] include::shared/{{% lang %}}/teams.adoc[] include::shared/{{% lang %}}/mailing-lists.adoc[] include::shared/{{% lang %}}/urls.adoc[] -:chapters-path: content/{{% lang %}}/books/developers-handbook/ endif::[] ifdef::backend-pdf,backend-epub3[] -:chapters-path: include::../../../../../shared/asciidoctor.adoc[] endif::[] endif::[] ifndef::env-beastie[] -:chapters-path: include::../../../../../shared/asciidoctor.adoc[] endif::[] [.abstract-title] Аннотация -Добро пожаловать в руководство FreeBSD для разработчиков. +Добро пожаловать в Руководство разработчика. Этот документ находится в _процессе разработки_ и создаётся усилиями многих людей. Многие разделы пока отсутствуют, а существующие нуждаются в обновлении. Если вы хотите помочь с этим проектом, отправьте письмо на {freebsd-doc}. -''' - -toc::[] - -[[introduction]] -= Введение - -[[developmentplatform]] -== Разработка во FreeBSD - -Здесь необходимо будет обсудить FreeBSD в качестве платформы для разработки, подход к этому BSD, обзор архитектуры, структура /usr/src, история и так далее. - -Спасибо вам за выбор FreeBSD в качестве платформы разработки! Надеемся, что она вас не подведет. - -[[bsdvision]] -== Парадигма BSD - -[[archoverview]] -== Обзор архитектуры - -[[sourcelayout]] -== Структура /usr/src - -Полный исходный код FreeBSD имеется на нашем общедоступном хранилище CVS. Как правило, исходный код устанавливается в каталог [.filename]#/usr/src#, содержащий следующие подкаталоги. - -[.informaltable] -[cols="1,1", frame="none", options="header"] -|=== -| Каталог -| Описание - -|[.filename]#bin/# -|Исходный код файлов из [.filename]#/bin# - -|[.filename]#contrib/# -|Исходный код файлов программного обеспечения, которое предоставлено третьими лицами. - -|[.filename]#crypto/# -|Исходный код DES - -|[.filename]#etc/# -|Исходный код файлов из [.filename]#/etc# - -|[.filename]#games/# -|Исходный код файлов из [.filename]#/usr/games# - -|[.filename]#gnu/# -|Утилиты, подпадающие под условия GNU Public License - -|[.filename]#include/# -|Исходный код файлов из [.filename]#/usr/include# - -|[.filename]#kerberosIV/# -|Исходный код Kerbereros версии IV - -|[.filename]#kerberos5/# -|Исходный код Kerbereros версии 5 - -|[.filename]#lib/# -|Исходный код файлов из [.filename]#/usr/lib# - -|[.filename]#libexec/# -|Исходный код файлов из [.filename]#/usr/libexec# - -|[.filename]#release/# -|Файлы, необходимые для выпуска релиза FreeBSD - -|[.filename]#sbin/# -|Исходный код файлов из [.filename]#/sbin# - -|[.filename]#secure/# -|Исходный код FreeSec - -|[.filename]#share/# -|Исходный код файлов из [.filename]#/sbin# - -|[.filename]#sys/# -|Исходные тексты ядра - -|[.filename]#tools/# -|Инструментальные средства, использемые для обслуживания и тестирования FreeBSD - -|[.filename]#usr.bin/# -|Исходный код файлов из [.filename]#/usr/bin# - -|[.filename]#usr.sbin/# -|Исходный код файлов из [.filename]#/usr/sbin# -|=== - -[[Basics]] -= Основы -include::{chapters-path}secure/chapter.adoc[leveloffset=+1] - -[[kernel]] -= Ядро - -[[kernelhistory]] -== История ядра Unix - -Немного истории о ядре Unix/BSD, системных вызовах, как работают процессы, блокировке, планировке задач, нити (ядра), переключение контекста, сигналы, прерывания, модули и так далее. - -[[memory]] -= Память и виртуальная память - -[[virtualmemory]] -== Виртуальная память - -VM, постраничная подкачка и свопирование, выделение памяти, тестирование ошибок утечки памяти, mmap, vnode и так далее. - -[[iosystem]] -= Система ввода/вывода - -[[ufs]] -== UFS - -UFS, FFS, Ext2FS, JFS, inodes, buffer cache, labeling, locking, metadata, soft-updates, LFS, portalfs, procfs, vnodes, memory sharing, memory objects, TLBs, caching - -[[ipc]] -= Межпроцессное взаимодействие +Последняя версия этого документа всегда доступна по ссылке link:https://www.FreeBSD.org[веб-сервер FreeBSD]. Его также можно загрузить в различных форматах и с разными вариантами сжатия с link:https://download.freebsd.org/doc/[сервера загрузки FreeBSD] или одного из многочисленных extref:{handbook}[зеркальных сайтов, mirrors]. -[[signals]] -== Сигналы - -Сигналы, конвейеры, семафоры, очереди сообщений, совместно используемая память, сокеты, двери - -[[networking]] -= Работа в сети - -[[sockets]] -== Сокеты - -Сокеты, bpf, IP, TCP, UDP, ICMP, OSI, bridging, firewalling, NAT, коммутация и так далее - -[[networkfs]] -= Сетевые файловые системы - -[[afs]] -== AFS - -AFS, NFS, SANs etc] - -[[terminal]] -= Работа с терминалами - -[[syscons]] -== Системные консоли - -Syscons, tty, PCVT, последовательная консоль, хранители экрана и так далее - -[[sound]] -= Звук - -[[oss]] -== OSS - -OSS, waveforms, etc - -[[devicedrivers]] -= Драйверы устройств - -[[usb]] -== Устройства USB - -Эта глава расскажет о механизмах, используемых во FreeBSD для написания драйверов для устройств на шине USB. - -[[newbus]] -== NewBus - -Эта глава расскажет об архитектуре NewBus во FreeBSD. - -[[architectures]] -= Аппаратные платформы - -[[ia32]] -== IA-32 - -Рассказ об архитектурных особенностях FreeBSD/x86. - -[[alpha]] -== Alpha - -Рассказ об архитектурных особенностях FreeBSD/alpha. - -Описание ошибок выравнивания, как их исправлять и как игнорировать. - -Пример ассемблерного кода для FreeBSD/alpha. - -[[ia64]] -== IA-64 - -Рассказ об архитектурных особенностях FreeBSD/ia64. - -[[debuggingpart]] -= Отладка - -[[truss]] -== Truss - -Различные описания того, как отлаживать отдельные компоненты системы при помощи утилит truss, ktrace, gdb, kgdb, etc - -[[compatibility]] -= Обеспечение совместимости - -[[linux]] -== Linux - -Linux, SVR4 и так далее - -// Appendices -[[appendices]] -[bibliography] -= Приложения - -[[COD,1]] [1] Dave A Patterson and John L Hennessy. Copyright(R) 1998 Morgan Kaufmann Publishers, Inc. 1-55860-428-6. Morgan Kaufmann Publishers, Inc. Computer Organization and Design. The Hardware / Software Interface. 1-2. - -[[APUE, 2]] [2] W. Richard Stevens. Copyright(R) 1993 Addison Wesley Longman, Inc. 0-201-56317-7. Addison Wesley Longman, Inc. Advanced Programming in the Unix Environment. 1-2. - -[[DIFOS, 3]] [3] Marshall Kirk McKusick and George Neville-Neil. Copyright(R) 2004 Addison-Wesley. 0-201-70245-2. Addison-Wesley. The Design and Implementation of the FreeBSD Operating System. 1-2. - -[[Phrack, 4]] [4] Aleph One. Phrack 49; "Smashing the Stack for Fun and Profit". - -[[StackGuard, 5]] [5] Chrispin Cowan, Calton Pu, and Dave Maier. StackGuard; Automatic Adaptive Detection and Prevention of Buffer-Overflow Attacks. - -[[OpenBSD, 6]] [6] Todd Miller and Theo de Raadt. strlcpy and strlcat -- consistent, safe string copy and concatenation. +''' |