Раздел: SCO UNIX

Основы Unix/Linux программирования. Вводный курс

Цена
Цена для организаций 32000 руб.
Цена вебинара 32000 руб.
Цена для частных лиц 32000 руб.

Длительность курса: 40/4 часов/дней.

Аудитория:

  • Разработчики, собирающиеся создавать ПО на Unix/Linux платформе
  • Опытные администраторы и инженеры
  • Специалисты, решающие вычислительно-инженерные задачи на Unix-компьютерах
  • Студенты, интересующиеся проблемами разработки ПО

Обязательная предварительная подготовка:

  • Знание синтаксиса языка Си
  • Знания и умения использования Unix/Linux систем в пределах курсов "Использование и администрирование Unix-систем для программистов" или "Администрирование FreeBSD" или "Администрирование Oracle SUN Solaris 10" или "Администрирование GNU/Linux"
  • Небольшой опыт программирования на любом языке
  • Знание английского языка в пределах чтения компьютерно-ориентированного материала

Содержание курса:

  • Введение

    • Архитектура Unix с точки зрения программиста
    • Системные вызовы и библиотечные функции
    • Обработка ошибок
    • Аргументы командной строки
    • Oружение оболочки
    • Лабораторная работа
  • Инструменты

    • Использование компилятора GNU cc (gcc)
    • Утилита make
    • RCS и CVS — поддержка версий
    • Редакторы
    • Отладчик gdb
    • Создание библиотек
    • Утилиты autoconf и automake
    • Лабораторная работа
  • Ввод/вывод

    • Низкоуровневый ввод/ввывод
    • Лабораторная работа
    • Работа с файлами с помощью библиотеки stdio
    • Лабораторная работа
  • Управление памятью
  • Процессы

    • Создание процессов
    • Сигналы
    • Завершение процессов
    • Лабораторная работа
  • Потоки

    • Создание потоков
    • Отмена потоков
    • Взаимодействие потоков
    • Потоки и процессы. Сравнение
    • Лабораторная работа
  • Взаимодействие между процессами

    • Каналы (pipes)
    • Oчереди сообщений
    • Механизм разделяемой памятью (shared memory)
    • Семафоры
    • Локальные сокеты
    • Лабораторная работа
  • Создание безопасных программ

    • Причины наличия уязвимостей, безопасность и обеспечение с открытыми исходными текстами
    • Проверка ввода данных
    • Переполнение буфера
    • Подходы и принципы, используемые для написания безопасных программ, инженерный подход к проектированию безопасного ПО
    • Языки программирования и безопасные программы
    • Криптография
    • Инструменты для обнаружения брешей в безопасности программ