Linux system programming robert love

Linux, системное программирование, Лав Р., 2014

Linux, системное программирование, Лав Р., 2014.

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

Предисловие.

Есть старая шутка, что разработчики ядра Linux, рассердившись, могут в сердцах бросить: «Все ваше пользовательское пространство — просто тестовая нагрузка для ядра!» Говоря такое, разработчики просто пытаются умыть руки и снять с себя ответственность за любые случаи, в которых ядру не удается обеспечивать максимально эффективную работу пользовательского кода. По мнению создателей ядра, программистам, работающим в пользовательском пространстве, следует просто посторониться и исправлять собственный код, ведь проблемы могут объясняться чем угодно, но не недостатками ядра. Уже более трех лет назад один из ведущих разработчиков ядра Linux прочитал лекцию под названием «Почему пользовательское пространство — ерунда». Целью лекции было доказать, что обычно корень проблем лежит не в ядре. Выступив перед переполненной аудиторией, этот специалист привел примеры отвратительного пользовательского кода, на который практически всем пользователям Linux приходится полагаться ежедневно. Другие разработчики ядра создали специальные инструменты, демонстрирующие, как сильно пользовательские программы могут злоупотреблять оборудованием и растрачивать заряд ничего не подозревающего ноутбука.

Краткое содержание.

Предисловие.
Вступление.
Благодарности.
От издательства.
Глава 1. Введение и основополагающие концепции.
Глава 2. Файловый ввод-вывод.
Глава 3. Буферизованный ввод-вывод.
Глава 4. Расширенный файловый ввод-вывод.
Глава 5. Управление процессами.
Глава 6. Расширенное управление процессами.
Глава 7. Поточность.
Глава 8. Управление файлами и каталогами.
Глава 9. Управление памятью.
Глава 10. Сигналы.
Глава 11. Время.
Приложение А. Расширения GCC для языка С.
Приложение Б. Библиография.

Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Linux, системное программирование, Лав Р., 2014 — fileskachat.com, быстрое и бесплатное скачивание.

Скачать pdf
Ниже можно купить эту книгу по лучшей цене со скидкой с доставкой по всей России. Купить эту книгу

Читайте также:  Записать диск для windows под mac

Источник

Linux System Programming, 2nd Edition

Explore a preview version of Linux System Programming, 2nd Edition right now.

O’Reilly members get unlimited access to live online training experiences, plus books, videos, and digital content from 200+ publishers.

Book description

Write software that draws directly on services offered by the Linux kernel and core system libraries. With this comprehensive book, Linux kernel contributor Robert Love provides you with a tutorial on Linux system programming, a reference manual on Linux system calls, and an insider’s guide to writing smarter, faster code.

Love clearly distinguishes between POSIX standard functions and special services offered only by Linux. With a new chapter on multithreading, this updated and expanded edition provides an in-depth look at Linux from both a theoretical and applied perspective over a wide range of programming topics, including:

  • A Linux kernel, C library, and C compiler overview
  • Basic I/O operations, such as reading from and writing to files
  • Advanced I/O interfaces, memory mappings, and optimization techniques
  • The family of system calls for basic process management
  • Advanced process management, including real-time processes
  • Thread concepts, multithreaded programming, and Pthreads
  • File and directory management
  • Interfaces for allocating memory and optimizing memory access
  • Basic and advanced signal interfaces, and their role on the system
  • Clock management, including POSIX clocks and high-resolution timers

Источник

Linux System Programming

Explore a preview version of Linux System Programming right now.

O’Reilly members get unlimited access to live online training experiences, plus books, videos, and digital content from 200+ publishers.

Book description

This book is about writing software that makes the most effective use of the system you’re running on — code that interfaces directly with the kernel and core system libraries, including the shell, text editor, compiler, debugger, core utilities, and system daemons. The majority of both Unix and Linux code is still written at the system level, and Linux System Programming focuses on everything above the kernel, where applications such as Apache, bash, cp, vim, Emacs, gcc, gdb, glibc, ls, mv, and X exist.

Written primarily for engineers looking to program (better) at the low level, this book is an ideal teaching tool for any programmer. Even with the trend toward high-level development, either through web software (such as PHP) or managed code (C#), someone still has to write the PHP interpreter and the C# virtual machine. Linux System Programming gives you an understanding of core internals that makes for better code, no matter where it appears in the stack. Debugging high-level code often requires you to understand the system calls and kernel behavior of your operating system, too.

Читайте также:  Switch virtual router для windows 10

Key topics include:

  • An overview of Linux, the kernel, the C library, and the C compiler
  • Reading from and writing to files, along with other basic file I/O operations, including how the Linux kernel implements and manages file I/O
  • Buffer size management, including the Standard I/O library
  • Advanced I/O interfaces, memory mappings, and optimization techniques
  • The family of system calls for basic process management
  • Advanced process management, including real-time processes
  • File and directories-creating, moving, copying, deleting, and managing them
  • Memory management — interfaces for allocating memory, managing the memory youhave, and optimizing your memory access
  • Signals and their role on a Unix system, plus basic and advanced signal interfaces
  • Time, sleeping, and clock management, starting with the basics and continuing through POSIX clocks and high resolution timers

With Linux System Programming, you will be able to take an in-depth look at Linux from both a theoretical and an applied perspective as you cover a wide range of programming topics.

Источник

Linux System Programming 2013. Robert Love

Владимир Петров

This book is about system programming on Linux. System programming is the practice of writing system software, which is code that lives at a low level, talking directly to the kernel and core system libraries.

Put another way, the topic of the book is Linux system calls and low-level functions such as those defined by the C library. While many books cover system programming for Unix systems, few tackle the subject with a focus solely on Linux, and fewer still address the very latest Linux releases and advanced Linux-only interfaces.

Moreover, this book benefits from a special touch: I have written a lot of code for Linux, both for the kernel and for system software built thereon. In fact, I have implemented some of the system calls and other features covered in this book.

Consequently, this book carries a lot of insider knowledge, covering not just how the system interfaces should work, but how they actually work and how you can use them most efficiently. This book, therefore, combines in a single work a tutorial on Linux system programming, a reference manual covering the Linux system calls, and an insider’s guide to writing smarter, faster code.

Читайте также:  Удаленный рабочий стол debian для windows

The text is fun and accessible, and regardless of whether you code at the system level on a daily basis, this book will teach you tricks that will enable you to be a better software engineer.

Скачать книгу можно бесплатно по данной ссылке: Скачать

Источник

Книга «Linux. Системное программирование. 2-е изд.»

На днях у нас вышло второе издание замечательной книги «Linux. Системное программирование. 2-е изд.». Как обычно для Хабра-читателей действует скидка 20%. Акция продлится до 20 апреля. При покупке книги введите код: 1f8e5be3.
Книга доступна в печатном и электронном виде.

Аннотация:

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

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

  • Обзор ядра Linux, библиотеки C, компилятора C
  • Базовые операции ввода/вывода, такие, как считывание файлов и запись в них
  • Продвинутые интерфейсы ввода/вывода, распределение памяти, приемы оптимизации
  • Семейство системных вызовов для базового управления процессами
  • Продвинутые приемы управления процессами, в частности, в реальном времени
  • Концепция потоков, многопоточность, Pthreads
  • Управление файлами и каталогами
  • Интерфейсы для выделения памяти и оптимизации доступа к ней
  • Базовые и продвинутые сигнальные интерфейсы, их роль в системе
  • Управление часами, в частности, часами POSIX и таймерами высокого разрешения

Роберт Лав пользовался Linux и участвовал в его разработке уже на заре истории этой операционной системы. Автор сделал существенный вклад в создание ядра Linux и настольной среды GNOME. Роберт работает руководителем отдела в Google, где участвовал в проектировании и создании операционной системы Android.

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

Джереми Эллисон, команда разработчиков Samba.

Источник

Оцените статью