Мы используем cookie для стабильной работы сервиса. Подробнее

Основы программирования для Linux

ФорматОнлайн
Длительность3-6 часов в неделю
Объём8 занятий
По окончанииДа
О курсе

Подробнее

Операционная система Linux является одной из наиболее распространенных и популярных. Она работает и в серверах и на настольных компьютерах, в различных устройствах (телевизорах, точках доступа, электронных книгах, системах хранения данных...), а также в мобильных телефонах, планшетах и умных часах, обеспечивая системную основу для Android, Tizen, Sailfish. Кроме того, Linux обладает открытым исходным кодом, что делает ее незаменимой для целей обучения, ведь любой может посмотреть на детали реализации системных механизмов и интерфейсов и повысить свой уровень разбирая конкретные технические решения профессиональных разработчиков. Немаловажной является POSIX-совместимость Linux, что позволяет автоматически распространять умения программировать на другие ОС, например, Mac OS X.В курсе будут рассмотрены базовые инструменты написания программ для Linux, а также затронуты основные прикладные интерфейсы, касающиеся управления процессами, работы с файловой системой, организации межпроцессного и сетевого взаимодействия. Также будет уделено внимание многим аспектам разработки программ, таким как: использование динамических библиотек, организация многопоточных вычислений и разделяемой памяти, получение расширенной информации о системе. Стоит отметить, что в этом курсе сознательно не затрагиваются вопросы программирования графического интерфейса пользователя, которые являются предметом рассмотрения отдельных курсов.После окончания курса вы сможете уверенно разрабатывать несложные прикладные и серверные приложения, организовывать обработку данных на компьютерах с ОС Linux.
Требования

Что нужно для старта

  • Для комфортного восприятия материала курса, необходимо обладать пониманием того, как работать в Linux на уровне пользователя, а также уверенными навыками программирования на языке С или C++. В этом вам могут помочь онлайн-курсы:“Введение в Linux” “Программирования на языке C++”
Аудитория

Для кого этот курс

  • Интересующиеся программированием, обладающие уверенными навыками работы в Linux в качестве пользователя и знакомые с основами программирования на С/С++
Содержание

Программа курса

8 занятий
№ТемаЧто внутри
01Введение в разработку для Linux

- Основной инструментарий разработчика Linux
- Динамические библиотеки и линковка
- Runtime линковка. Libdl

02Файлы и файловые системы

- Базовые функции работы с файлами
- Работа с каталогами и путями
- Ссылки
- Файловая система /proc. Построение дерева процессов
- Отладка программ в Linux

03Процессы и потоки

- Жизненный цикл процесса в Linux
- Создание процессов fork/exec
- Атрибуты создаваемого процесса. Системный вызов clone
- Процессы-демоны
- Задачи на программирование

04Взаимодействие процессов

- Виды межпроцессного взаимодействия в Linux
- Каналы
- Сигналы
- Разделяемая память
- Мультиплексирование ввода-вывода.
- Задачи на программирование

05Сетевые возможности

- Введение
- Принципы организации IP сетей
- Понятие сокета
- Разрешение имен
- Сокеты дейтаграм. Протокол UDP
- Сокеты ориентированные на соединения. Протокол TCP
- Задачи на программирование

06Заключительный модуль

- Финальный урок

07Дополнительный и справочный материал

- Дополнительные материалы

08Дополнительные темы

- Обработка параметров командной строки. Getopt

01Введение в разработку для Linux

- Основной инструментарий разработчика Linux
- Динамические библиотеки и линковка
- Runtime линковка. Libdl

02Файлы и файловые системы

- Базовые функции работы с файлами
- Работа с каталогами и путями
- Ссылки
- Файловая система /proc. Построение дерева процессов
- Отладка программ в Linux

03Процессы и потоки

- Жизненный цикл процесса в Linux
- Создание процессов fork/exec
- Атрибуты создаваемого процесса. Системный вызов clone
- Процессы-демоны
- Задачи на программирование

04Взаимодействие процессов

- Виды межпроцессного взаимодействия в Linux
- Каналы
- Сигналы
- Разделяемая память
- Мультиплексирование ввода-вывода.
- Задачи на программирование

05Сетевые возможности

- Введение
- Принципы организации IP сетей
- Понятие сокета
- Разрешение имен
- Сокеты дейтаграм. Протокол UDP
- Сокеты ориентированные на соединения. Протокол TCP
- Задачи на программирование

06Заключительный модуль

- Финальный урок

07Дополнительный и справочный материал

- Дополнительные материалы

08Дополнительные темы

- Обработка параметров командной строки. Getopt

Документ после выпуска

Да

Организатор

Автор курса

StepikStepik
Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

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

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

Оставьте заявку

Консультант ответит на вопросы о курсе «Основы программирования для Linux» и поможет разобраться в деталях обучения.

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных

Информация обновлена 7 сентября 2026 г.

Продолжить выбор

Похожие курсы

Программа: Твой JavaScript
Программа: Твой JavaScript

Цель курса - дать вам исчерпывающее понимание JavaScript. Мы не обещаем сделать из вас сеньора за две недели, это сказки. Наша задача - предоставить самую подробную и глубокую баз…

Онлайн21 занятий
4 250 ₽
Основы C#
Основы C#

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

Онлайн10 занятий
3 999 ₽
Начать без затрат

Бесплатные курсы

Python для решения практических задач
Бесплатно
Python для решения практических задач

Научились решать простые задачи на питоне, но не можете понять, как сделать что-то полезное? Наш курс научит вас правильно гуглить! На примерах задач сбора данных (Data Scraping)…

Онлайн5 занятий
Бесплатно
Python для геймеров: базовый курс на игровых примерах
Бесплатно4 часа в неделю
Python для геймеров: базовый курс на игровых примерах

Здесь не будет сложных задач «про шахматы»! Здесь не будет абстрактных задач и сложных математических вычислений. Зато есть: теория простым и понятным языком игровые механики логи…

Онлайн12 занятий
Бесплатно