Джокер
Администратор
- Регистрация
- 1 Янв 2015
- Сообщения
- 155.827
- Реакции
- 80.258
Складчина: Разработка на C под Linux (Системный разработчик) [Тариф Самостоятельный] [ИнженеркаТех] [Игорь Седых, Глеб Коробейников]
Файл в Linux можно отобразить в память и организовать совместный доступ к нему. На курсе вы разберётесь, как применять этот механизм в программах на C и управлять системными ресурсами.
Курс охватывает ключевые аспекты разработки под Linux, в том числе компиляцию, работу с файловой системой, межпроцессное взаимодействие, многопоточность, сигналы, сокеты и создание демонов. Студенты научатся разрабатывать эффективные и безопасные приложения для Linux, используя системные вызовы и механизмы ОС.
Для кого курс разработки на C под Linux и чем он будет полезен?
Разработчики C/C++
До курса.
Имеют базовые знания о Linux и C/C++, но не владеют техниками оптимизации, взаимодействия процессов и потоков, работы с памятью.
После курса.
Способны разрабатывать эффективные и оптимизированные сервисы, управлять ресурсами системы, использовать сокеты, отображаемую память и синхронизацию потоков
Инженеры встраиваемых и высоконагруженных систем
До курса.
Умеют писать код на C/C++, но не понимают, как работают системные вызовы и потоки, как происходит взаимодействие процессов и управление памятью в Linux.
После курса.
Уверенно пишут системные приложения, используют межпроцессное взаимодействие, многопоточность и сигналы, работают с файловой системой и могут разрабатывать демоны
Программисты, изучающие системные механизмы и взаимодействие процессов в Linux
До курса.
Знают базовые команды Linux, но не понимают, как устроены механизмы работы с файлами, процессами, сигналами и IPC.
После курса.
Разбираются в низкоуровневом взаимодействии с ОС, могут писать сложные серверные приложения и разрабатывать производительные многопоточные программы
Как проходит обучение?
В формате видеолекций в записи с преподавателем и домашними заданиями
Записи лекции с расшифровкой
В каждом курсе –живые примеры, реальный опыт авторов и немного самоиронии.
Объясняют просто, учат на кейсах, делают обучение понятным и интересным.
Бесплатная часть:
Основы разработки в Linux:
В этом уроке узнаете:
Как устроена компиляция и сборка проектов
Познакомитесь с редакторами и инструментами Linux
Напишете и собрете проект из одного и двух C-файлов
Разберетесь с Makefile и объектными файлами
Узнатете, как анализировать бинарники через nm и cat
+ домашнее задание
Статические и динамические библиотеки в Linux:
В этом уроке узнаете:
Модель KISS (клиент-интерфейс-сервер) и роль заголовочных файлов как интерфейса между main и библиотеками
Научитесь собирать статические библиотеки с помощью утилиты ar и подключать их через Makefile
Разберетесьь с назначением флага -fPIC и сборкой динамических библиотек (.so)
Выясните, как работает линковка и зачем нужны ключи -l, -L, -Wl,rpath
Сравните плюсы и минусы статической и динамической компоновки: автономность, объем, производительность, необходимость пересборки
Освоите навык оформления заголовочных файлов с защитой от повторного подключения (ifndef, define, endif)
+ домашнее задание
Переменные окружения и низкоуровневый ввод-вывод:
На этом занятии вы разберете, как в Linux работают переменные окружения и низкоуровневый ввод-вывод:
Изучите переменные окружения: environ, getenv, setenv, putenv, unsetenv
Научитесь читать и записывать данные через системные вызовы open, read, write, close, lseek
Познакомитесь с файловыми дескрипторами и стандартными потоками (0, 1, 2)
Сравните поэффективности побайтовое и блочное чтение
Спойлер: Часто задаваемые вопросы
1. Сколько длится обучение?
Среднее время прохождения курса составляет 3 месяца.
Программа:
Основы разработки в Linux:
Компиляция и сборка программ в Linux, ручная и автоматическая сборка с использованием Makefile
Модель "Клиент-Интерфейс-Сервер"
Статическая сборка библиотек
Совместно используемые библиотеки (динамические библиотеки в Linux)
Работа с переменными окружения
Межпроцессное взаимодействие:
Клонирование процессов
Замена исполняемого процесса
Неименованные каналы
Именованные каналы
Очереди сообщений
Совместно используемая память
Семафоры
Сокеты:
Сокеты в файловом пространстве имен (UNIX-сокеты)
Парные сокеты
Сетевые сокеты
Сигналы:
Устройство и применение сигналов в Linux
Отличие сигналов от других механизмов межпроцессного взаимодействия
Обработка сигналов
Зомби-процессы, причины возникновения и способы их устранения
Потоки:
Потоки и процессы
Специфика построения многопоточных приложений
Досрочное завершение потока
Создание обработчика завершения потока
Средства синхронизации потоков, мьютексы
Атрибуты потоков
Демоны:
Отличие демона от консольной утилиты
Специфика разработки демонов
Создание демона, использующего сетевые сокеты
Консольный ввод-вывод и GTK:
Специфика разработки консольных приложений
Предотвращение перенаправления вывода
Управление терминалом
Сокрытие пароля пользователя при аутентификации
Отображаемая память:
Отображение обычного файла
Совместный доступ к файлу
Частные отображения
Другие применения mmap
Что получите:
Видеозаписи и домашние задания
Расшифровки лекций
Для самостоятельной отработки материала
Авторы:
Игорь Седых
Старший преподаватель института интеллектуальных кибернетических систем НИЯУ МИФИ
Профессионально преподает с 2010 года
Имеет большой опыт коммерческой разработки инженерного программного обеспечения в области нанотехнологий, включая проекты для корпорации LSI
Автор множества специализированных программ для работы с компьютерной графикой и базами данных
Преподает разработку и направления, связанные с Linux, и обучил более 6000 студентов
Среди его выпускников сотрудники таких известных организаций, как ОАО «Концерн ПВО «Алмаз – Антей», ОАО «Московский вертолетный завод им. М. Л. Миля», Департамент культурного наследия города Москвы, ОАО «Компания «Сухой» и других
Автор методических пособий, включая курс «Основы программирования и баз данных»
Глеб Коробейников
Senior Разработчик под Linux, AstraLinux
Более 5 лет разработчик ядра Linux
Работал в компаниях: Raidix, yadro, sbertech
Контрибьютор в ядро Linux
Teхстек: C, bash и инструменты для отладки ядерного кода таких как kmemleak, Kasan, kgdb, ftrace, eBPF
Опыт с архитектурой amd64, архитектурой современных операционных систем
Тариф Самостоятельный
Видеолекции в записи
Домашние задания
Расшифровки лекций
Старт 13 ноября
Цена 35000 руб.
СКАЧАТЬ СЛИВЫ КУРСОВ
Файл в Linux можно отобразить в память и организовать совместный доступ к нему. На курсе вы разберётесь, как применять этот механизм в программах на C и управлять системными ресурсами.
Курс охватывает ключевые аспекты разработки под Linux, в том числе компиляцию, работу с файловой системой, межпроцессное взаимодействие, многопоточность, сигналы, сокеты и создание демонов. Студенты научатся разрабатывать эффективные и безопасные приложения для Linux, используя системные вызовы и механизмы ОС.
Для кого курс разработки на C под Linux и чем он будет полезен?
Разработчики C/C++
До курса.
Имеют базовые знания о Linux и C/C++, но не владеют техниками оптимизации, взаимодействия процессов и потоков, работы с памятью.
После курса.
Способны разрабатывать эффективные и оптимизированные сервисы, управлять ресурсами системы, использовать сокеты, отображаемую память и синхронизацию потоков
Инженеры встраиваемых и высоконагруженных систем
До курса.
Умеют писать код на C/C++, но не понимают, как работают системные вызовы и потоки, как происходит взаимодействие процессов и управление памятью в Linux.
После курса.
Уверенно пишут системные приложения, используют межпроцессное взаимодействие, многопоточность и сигналы, работают с файловой системой и могут разрабатывать демоны
Программисты, изучающие системные механизмы и взаимодействие процессов в Linux
До курса.
Знают базовые команды Linux, но не понимают, как устроены механизмы работы с файлами, процессами, сигналами и IPC.
После курса.
Разбираются в низкоуровневом взаимодействии с ОС, могут писать сложные серверные приложения и разрабатывать производительные многопоточные программы
Как проходит обучение?
В формате видеолекций в записи с преподавателем и домашними заданиями
Записи лекции с расшифровкой
В каждом курсе –живые примеры, реальный опыт авторов и немного самоиронии.
Объясняют просто, учат на кейсах, делают обучение понятным и интересным.
Бесплатная часть:
Основы разработки в Linux:
В этом уроке узнаете:
Как устроена компиляция и сборка проектов
Познакомитесь с редакторами и инструментами Linux
Напишете и собрете проект из одного и двух C-файлов
Разберетесь с Makefile и объектными файлами
Узнатете, как анализировать бинарники через nm и cat
+ домашнее задание
Статические и динамические библиотеки в Linux:
В этом уроке узнаете:
Модель KISS (клиент-интерфейс-сервер) и роль заголовочных файлов как интерфейса между main и библиотеками
Научитесь собирать статические библиотеки с помощью утилиты ar и подключать их через Makefile
Разберетесьь с назначением флага -fPIC и сборкой динамических библиотек (.so)
Выясните, как работает линковка и зачем нужны ключи -l, -L, -Wl,rpath
Сравните плюсы и минусы статической и динамической компоновки: автономность, объем, производительность, необходимость пересборки
Освоите навык оформления заголовочных файлов с защитой от повторного подключения (ifndef, define, endif)
+ домашнее задание
Переменные окружения и низкоуровневый ввод-вывод:
На этом занятии вы разберете, как в Linux работают переменные окружения и низкоуровневый ввод-вывод:
Изучите переменные окружения: environ, getenv, setenv, putenv, unsetenv
Научитесь читать и записывать данные через системные вызовы open, read, write, close, lseek
Познакомитесь с файловыми дескрипторами и стандартными потоками (0, 1, 2)
Сравните поэффективности побайтовое и блочное чтение
Спойлер: Часто задаваемые вопросы
1. Сколько длится обучение?
Среднее время прохождения курса составляет 3 месяца.
Программа:
Основы разработки в Linux:
Компиляция и сборка программ в Linux, ручная и автоматическая сборка с использованием Makefile
Модель "Клиент-Интерфейс-Сервер"
Статическая сборка библиотек
Совместно используемые библиотеки (динамические библиотеки в Linux)
Работа с переменными окружения
Межпроцессное взаимодействие:
Клонирование процессов
Замена исполняемого процесса
Неименованные каналы
Именованные каналы
Очереди сообщений
Совместно используемая память
Семафоры
Сокеты:
Сокеты в файловом пространстве имен (UNIX-сокеты)
Парные сокеты
Сетевые сокеты
Сигналы:
Устройство и применение сигналов в Linux
Отличие сигналов от других механизмов межпроцессного взаимодействия
Обработка сигналов
Зомби-процессы, причины возникновения и способы их устранения
Потоки:
Потоки и процессы
Специфика построения многопоточных приложений
Досрочное завершение потока
Создание обработчика завершения потока
Средства синхронизации потоков, мьютексы
Атрибуты потоков
Демоны:
Отличие демона от консольной утилиты
Специфика разработки демонов
Создание демона, использующего сетевые сокеты
Консольный ввод-вывод и GTK:
Специфика разработки консольных приложений
Предотвращение перенаправления вывода
Управление терминалом
Сокрытие пароля пользователя при аутентификации
Отображаемая память:
Отображение обычного файла
Совместный доступ к файлу
Частные отображения
Другие применения mmap
Что получите:
Видеозаписи и домашние задания
Расшифровки лекций
Для самостоятельной отработки материала
Авторы:
Игорь Седых
Старший преподаватель института интеллектуальных кибернетических систем НИЯУ МИФИ
Профессионально преподает с 2010 года
Имеет большой опыт коммерческой разработки инженерного программного обеспечения в области нанотехнологий, включая проекты для корпорации LSI
Автор множества специализированных программ для работы с компьютерной графикой и базами данных
Преподает разработку и направления, связанные с Linux, и обучил более 6000 студентов
Среди его выпускников сотрудники таких известных организаций, как ОАО «Концерн ПВО «Алмаз – Антей», ОАО «Московский вертолетный завод им. М. Л. Миля», Департамент культурного наследия города Москвы, ОАО «Компания «Сухой» и других
Автор методических пособий, включая курс «Основы программирования и баз данных»
Глеб Коробейников
Senior Разработчик под Linux, AstraLinux
Более 5 лет разработчик ядра Linux
Работал в компаниях: Raidix, yadro, sbertech
Контрибьютор в ядро Linux
Teхстек: C, bash и инструменты для отладки ядерного кода таких как kmemleak, Kasan, kgdb, ftrace, eBPF
Опыт с архитектурой amd64, архитектурой современных операционных систем
Тариф Самостоятельный
Видеолекции в записи
Домашние задания
Расшифровки лекций
Старт 13 ноября
Цена 35000 руб.
СКАЧАТЬ СЛИВЫ КУРСОВ
Для возможности скачивать складчины и сливы курсов нужно зарегистрироваться
Возможно, Вас ещё заинтересует:
- Английский язык для профессиональных целей: Когнитивная нейробиология. Учебник [Анна Захарова, Анастасия Мищук]
- Андрагогика развития. Образование на пути в великое неизвестное [Андрей Теслинов]
- ИИ-сериалы для писателей [Елена Микушкина]
- Гипнотерапия при созависимом поведении у женщин. Психо-эмоциональные нарушения и возможности коррекции [Светлана Хореманс]
- Все хорошо, но ничего не радует. Как понять, что это не просто усталость, и вернуть интерес к жизни [Татьяна Сысоева]
- Не испортить всё одной фразой. Психология общения в ситуациях, когда каждое слово имеет значение [Сергей Антонов]
- Подписка на контент «Фит „Формула идеального тела“» (на 1 месяц) [Алина Аблязова]
- Новогодний 26/27 [СыроварКрым]
- Автономное вождение и ROS 2 — учимся на практике! Восприятие и зрение [Udemy] [Антонио Бранди]
- С деньгами на ты [Тариф Сама] [Юлия Трус]