Курс: Программирование в Linux на C\С++
Продолжительность курса: 32 ак. ч.
Формат обучения:
• Очно - на территории нашего учебного центра или на территории Заказчика (для корпоративных клиентов)
• Онлайн обучение с помощью вебинаров в режиме "здесь и сейчас"
• Дистанционно с помощью системы СДО в любое удобное для вас время
Аудитория:
Этот курс предназначен для специалистов, обладающих базовыми навыками работы с Linux и знаниями языка C\C++, желающих расширить свои знания в программировании в ОС Linux
Необходимая подготовка:
• Хорошее знание языка C\C++
• Базовые знания ОС Linux, файловой системы, работа с командной строкой
• Базовые знания английского языка, чтение технической документации
Результат обучения:
После изучения курса слушатель будет уметь:
• Понимать процесс сборки ПО и специфики компилятора C из состава GCC
• Использовать функции файлового ввода-вывода
• Разбираться в различиях между процессами и потоками, использовать многопоточность и ее специфики
• Использовать механизмы обеспечения многозадачности и межпроцессного взаимодействия
• Создавать демонов, понимать различия между демонами и прикладным ПО
• Понимать специфику консольного ввода-вывода и уметь ее использовать
Программа курса:
Модуль 1. Сборка программ в GNU/Linux
Модуль 2. Знакомство с API (интерфейс прикладного программирования) ОС Linux
Модуль 3. Работа со статическими библиотеками
Модуль 4. Работа с переменными окружения
Модуль 5. Обзор механизмов ввода-вывода в ОС Linux
Модуль 6. Файлы, файловые дескрипторы
Модуль 7. Системные вызовы: для работы с файловой системой
Модуль 8. Файловая система proc
Модуль 9. Разреженные файлы и специфика их применения
Модуль 10. Блокировка областей файла
Модуль 11. Процессы, диаграмма процессов
Модуль 12. Создание и управление процессами
Модуль 13. Потоки и процессы, атрибуты потоков
Модуль 14. Построение многопоточных приложений
Модуль 15. Примитивы синхронизации потоков
Модуль 16. Межпроцессное взаимодействие в Linux
Модуль 17. Каналы
Модуль 18. Сообщения (message queue)
Модуль 19. Разделяемая память (shared memory)
Модуль 20. Сокеты
Модуль 21. Сигналы
Модуль 22. Отображаемая память
Модуль 23. Консольный ввод-вывод
Модуль 24. Демоны, фоновые приложения
Модуль 25. Библиотеки и модули
Модуль 26. Специфика разработки 64-битных приложений
Модуль 27. Программирование графического интерфейса с помощью библиотеки GTK+ или QT
Окончательная цена указывается в договоре на обучение.
Записаться на курс