Курс проверен службой качества Schoolmart.ru

asic Linux programming with GCC

Операционная система Linux давно занимает лидирующие позиции в программном обеспечении суперкомпьютеров, она занимает второе место в сегменте интернет-серверов и стремительно набирает популярность в корпоративном сегменте. Этому способствуют главные преимущества Linux по сравнению с коммерческими операционными системами — высокая экономическая эффективность, мобильность, гибкость, оптимальные условия для установки СУБД.

На нашем курсе «Linux (Ubuntu). Уровень 2. Программирование в Linux на C» Вы получите знания и навыки, необходимые для разработки программного обеспечения для стремительно набирающей популярность операционной системы Linux. Вы станете понимать процесс сборки ПО и специфики компилятора C из состава GCC. Вы научитесь разбираться в различиях между процессами и потоками, использовать многопоточность и ее специфики. Вы узнаете, кто такие «демоны» и в чем их отличие от прикладного программного обеспечения.

В Центре «Специалист» обучение Linux проводится на примере популярнейшего дистрибутива Ubuntu. Однако изучать Вы будете именно Linux, и после обучения в нашем Центре Вы легко сможете работать с любым дистрибутивом Linux: Debian, Mandriva, Red Hat, Mint, Alt Linux, Open SUSE, ASP Linux, МСВС и многие другие.
По окончании курса Вы будете уметь:
- Понимать процесс сборки ПО и специфики компилятора C из состава GCC
- Разрабатывать и использовать разделяемые библиотеки
- Использовать функции файлового ввода-вывода
- Использовать механизмы обеспечения многозадачности и межпроцессного взаимодействия
- Использовать файловые и сетевые сокеты
- Использовать механизм сигналов
- Разбираться в различиях между процессами и потоками, использовать многопоточность и ее специфики
- Создавать демонов, понимать различия между демонами и прикладным ПО
- Понимать специфику консольного ввода-вывода и уметь ее использовать
- Понимать специфику отображаемых в память файлов и уметь их использовать

  • Выдают аттестат
  • Есть возврат налогового вычета 13% после обучения
  • Есть практические задания
  • Рядом с метро
  • Есть рассрочка на обучение
Наименование темы Часов
Модуль 1. Введение Ознакомление со спецификой сборки ПО в GNU/Linux (Ubuntu) Ознакомление с консольными текстовыми редакторами (vi,nano,mcedit) Ручная и автоматическая сборка ПО (Makefile) Модель Клиент-Интерфейс-Сервер (КИС) Статическая сборка библиотек 3
Модуль 2. Низкоуровневый ввод-вывод и файловые операции Обзор механизмов ввода-вывода в Linux (Ubuntu) Файловые дескрипторы Системные вызовы: open, close, write, read и lseek Типы файлов Индексные дескрипторы и жесткие ссылки Права доступа к файлу Файло 3
Модуль 3. Межпроцессное взаимодействие Механизмы межпроцессного взаимодействия Linux (Ubuntu) Неименованные каналы (pipes) Именованные каналы (named pipes) Сообщения (message queue) Разделяемая память (shared memory) Семафоры (semaphores) 3
Модуль 4. Сокеты Сокеты в файловом пространстве имен (UNIX-сокеты) Парные сокеты (pair sockets) Сетевые сокеты (sockets) 3
Модуль 5. Сигналы Знакомство с сигналами (signals) Отличие сигналов от других механизмов межпроцессного взаимодействия Специфика обработки сигналов (signal handling) 3
Модуль 6. Процессы Клонирование процессов — fork() Замена исполняемого процесса — exec() Зомби (zombies) — причины возникновения и способы их устранения 3
Модуль 7. Потоки Потоки и процессы Специфика построения многопоточных приложений (multithreading) Досрочное завершение потока 3
Модуль 8. Потоки (продолжение) Создание обработчика завершения потока Средства синхронизации потоков (synchronize primitives) Атрибуты потоков 3
Модуль 9. Демоны (службы) Отличие демона от консольной утилиты Специфика разработки демонов (daemons) Создание демона использующего сетевые сокеты 3
Модуль 10. Консольный ввод-вывод Специфика разработки консольных приложений Предотвращение перенаправления вывода Управление терминалом Сокрытие пароля пользователя при аутентификации 3
µМодуль 11. Отображаемая память Отображение обычного файла Совместный доступ к файлу Частные отображения Другие применения mmap 3
Модуль 12. Домашнее задание Специфика разработки 64-битных приложений Использование библиотеки ncurses Программирование графического интерфейса с помощью GTK+ 3

ежедневно вечер 18:30 — 21:30

Направления

Адрес

  • г. Москва, 3-я ул. Ямского Поля, д. 32
  • Метро: Белорусская

Записаться на консультацию

Ваш запрос отправлен.

как записаться на курс