Курс «Программирование на языке C в Linux»

Программирование на языке C в Linux Курc включает в себя изучение основных современных компьютерных инструментов, таких как R и Python, используемых для преподавания математики в средней и старшей школе. Курс направлен на использование данного инструментария в среде Linux.

Описание курса обучения «Программирование на языке C в Linux»

О программеБлижайшее обучениеУчебный планПодробнееНовости
Полное наименование:«Программирование на языке C в Linux»
Срок обучения:40 часов.
Итоговый документ: Удостоверение о повышении квалификации
Стоимость обучения:Очно: 29000 ₽ 25000 ₽
Ответственный за обучение: Тоболин Дмитрий Юрьевич
Телефон:+7 (343) 287-14-16 доб.102
Электронный адрес: tdy@academdpo.ru

Академия ДПО внесена в реестр аккредитованных организаций, оказывающих услуги в области охраны труда, под регистрационным номером № 2410 от 10 июля 2012 г.

Лицензия на право ведения образовательной деятельности, регистрационный номер № Л035-01277-66/00195362 от 11 ноября 2015 г.

График обучения курса «Программирование на языке C в Linux»

  • Пн
    14
    Ноя
    2022
    Чт
    17
    Ноя
    2022

    Программирование на языке C в Linux

    Удостоверение о повышении квалификации
    Очное обучение

Программа обучения по курсу «Программирование на языке C в Linux»

Модуль 1

Занятие № 1

Компилятор gcc для программирования на С. Использование редактора nano для написания кода на C. Компиляция программа. Ключи компиляции. Получение ассемблерного кода. Сборка проекта с использованием make. Использование gdb, ddd для отладки кода. Команды nm, ldd и их использование.

Занятие № 2

Создание статических библиотек и подключение их к проекту. Команда ar. Создание и использование динамических библиотек. Ключи fPID, -shared. Подключение динамических и статических библиотек к проекту. с использованием командной строки и Makefile.

Занятие № 3

Интерфейс прикладного программирования операционной системы Linux. Общий обзор возможностей Linux API. Наиболее распространенные команды Linux API. Написание программ с использованием простых функций Linux API. Функция system(), написание minishell.

Занятие № 4

Работа с переменными окружения. Команда env и ее ключи. Написание программы для просмотр всех переменных окружения. Получение, просмотр и изменение отдельных позиций переменной окружения. Использование функций getenv(), setenv(), putenv() для для работы с переменными окружения.

Модуль 2

Занятие № 5

Ввод-вывод в операционной системе Linux с использованием языка С. Низкоуровневый POSIX ввод-вывод и высокоуровневый ANSI C ввод-вывод. Особенности написания программ с использованием низкоуровневого и высокоуровневого ввода-вывода.

Занятие № 6

Файловая система Linux. Типы файлов в операционной системе Linux. Обзор основных команд необходимых для программирования на С под Linux. Изучение прав доступа к файлам. Использование низкоуровневых функций open, create, write, read, lseek для работы с файлами в операционной системе Linux.

Занятие № 7

Написание программ с использованием функций высокоуровневого и низкоуровневого ввода-вывода. Файловые дескрипторы и использование функций dup, dup2 для работы с файловыми дескрипторами. Работа со ссылками. Работа с каталогами. Создание, удаление каталогов.

Занятие № 8

Файловая система /proc. Работа с командами уровня ядра. Получение данных о состоянии ядра системы. Разреженные файлы. Блокировки областей файла с использованием языка C.

Модуль 3

Занятие № 9

Процессы. Команды и программы операционной системы Linux для работы с процессами. Запуск процесса, остановка процесса. Удаление процесса.

Занятие № 10

Изучение и использование функций Linux для работы с процессами и потоками. Функции fork(), kill().Создание дочернего процесса. Создание двух и более дочерних процессов. Написание компьютерных программ на языке C по работе с процессами.

Звнятие № 11

Потоки (threads) Потоки POSIX. Атрибуты потоков. Использование потоков в программах. Многопоточное программирование. Написание программ с использованием потоков.

Занятие № 12

Синхронизация потоков. Семафоры. Использование функций для работы с семафорами. Мьютексы. Написание программ на C, использующих мьютексы.

Модуль 4

Занятие № 13

Межпроцессное взаимодействие (IPC) в Linux. Каналы (pipes). Сообщения и очереди сообщений. Разделяемая память (shared memory). Написание программ для различных механизмов межпроцессного взаимодействия.

Занятие № 14

Работа с отображаемыми в память файлами. Команды и функции для работы с отображаемыми в память файлами. Функция mmap(). Копирование файлов с использованием mmap().

Занятие № 15

Сокеты в операционной системе Linux. Виды сокетов. Использование сокетов для сетевого программирования. Протоколы TCP/IP. Написание программы сетевого обмена (сервера и клиента) с использованием сокетов TCP. Написание программы (сервера и клиента) с использованием сокетов UDP.

Занятие № 16

Работа с сигналами в Linux. Типы сигналов. Создание и отправка сигналов. Написание компьютерных программ, отслеживающих сигналы. Сигнал kill. Написание программы для работы с сигналом kill.

Занятие № 17

Программирование под аппаратную платформу. Использование команд Linux для изучения аппаратного устройства компьютера. Работа с каталогом /dev. Написание программы для работы с последовательным портом и usb. Написание программы для работы со звуковой картой.

Модуль 5

Занятие № 18

Работа с терминалом. Консольные приложения. Использование библиотеки ncurses для создания графического терминала. Создание окон, диалогов и меню в консольном приложении. Переключение между окнами в консоли. Вывод графики и рисование с использованием ncurses. Использование Unicode для ввода данных на иностранных языках.

Занятие № 19

Демоны и фоновые приложения. Понятие демона. Этапы создания демона. Особенности работы компьютерных программ в фоновом режиме. Библиотеки. Инсталляция новых библиотек для разработки программного обеспечения. Специфика разработки 64 разрядных приложений под Linux.

Занятие № 20

XWindow, Создание окна с использованием библиотеки X11. Особенности XWindow. Библиотека Xt для создания графических приложений.

Занятие № 21

Использование библиотеки GTK+ для разработки приложений с графическим пользовательским интерфейсом. Создание простого графического окна приложения. Добавление и использование различных графических компонентов (widgets), для создания пользовательского интерфейса. Использование “раскладчиков” для размещения компонентов на форме. Связи (connections), сигналы и функции обратного вызова (callback) для функционирования компонентов.

Язык С, несмотря на то, что был разработан в начале 70-х годов остается одним из самых популярных и востребованных языков программирования по данным различных рейтингов и индексов популярности. Язык программирования C является основны при создании любой операционной системе в том числе и в Linux. В связи с уходом иностранных разработчиков коммерческого программного обеспечения и запрета Microsoft на установку и использование новых версий ее операционной системы происходит логичная замена операционной системы Windows на операционную систему Linux. В этой связи роль языка C, и особенно, его использование с операционной системой Linux неуклонно возрастает. В курсе Вы познакомитесь с особенностями инструментария и методов системного программирования на языке С в операционной системе Linux. В курс включено также программирование графического пользовательского интерфейса с использованием библиотек ncurses и GTK+.

Цель обучения: Освоить на практике основные принципы системного программирования на языке С в операционной системе Linux.
Категории слушателей: Лица, с высшим и средним специальным образованием желающие пройти подготовку и обучение по системному программированию в операционной системе Linux.
Форма обучения: Очная
Итоговый документ: Удостоверение о повышении квалификации
Требования для зачисления на курс: Лица, имеющие среднее специальное и высшее образование без предъявления требований к стажу работы, владеющие основами программирования на языке С и базовыми навыками использования операционной системы Linux.
Срок обучения:40 часов.
Стоимость обучения:Очно: 29000 ₽ 25000 ₽
Ответственный за обучение: Тоболин Дмитрий Юрьевич
Телефон: +7 (343) 287-14-16 доб.102
Электронный адрес: tdy@academdpo.ru

Страхи перед Linux или где кликнуть мышью?

Страхи перед Linux или где кликнуть мышью?

Автор: Тоболин Д.Ю. Академия ДПО, Екатеринбург Большинство пользователей считает операционную систему Linux чем-то чрезвычайно сложным и даже опасным. Ведь там ...
Подробнее >>
Python

Язык № 1 в программировании

Автор: Тоболин Д.Ю. Уже ни у кого не вызывает сомнения, что Python в 2022 является самым популярным языком программирования в ...
Подробнее >>
Scratch, как инновационный образовательный инструмент

Scratch, как инновационный образовательный инструмент

Не у кого не вызывает сомнения цифровая трансформация современного образовательного процесса. Мы уже привыкли к проекторам и интерактивным доскам в ...
Подробнее >>
Загрузка...

Для того, чтобы пройти обучение «Программирование на языке C в Linux», заполните заявку:

Заполнить заявку








Дополнительная информация