Использование Linux при программировании 1

Содержание

Слайд 2

Содержание

Общие сведения об ОС Linux
Командная строка Linux
Файлы и каталоги в Linux. Команды

Содержание Общие сведения об ОС Linux Командная строка Linux Файлы и каталоги
для работы с файлами и каталогами
Процессы в Linux. Команды для работы с процессами
Перенаправления ввода-вывода и команды-фильтры
Командные файлы и язык Shell
Управление пакетами и менеджеры пакетов
Компилятор GCC
Утилита Make
Отладчики GDB и DDD
Система управления версиями Git

Слайд 3

Лекция 1.

Общие сведения об
Операционной системе Linux

Лекция 1. Общие сведения об Операционной системе Linux

Слайд 4

Лекция 1. Общие сведения об ОС Linux
Обзор возможностей ОС Linux
История

Лекция 1. Общие сведения об ОС Linux Обзор возможностей ОС Linux История
создания Unix и Linux
Области применения Linux
Дистрибутивы Linux
Инсталляция ОС Linux
Графическая подсистема Linux
Графические оболочки: GNOME, KDE

Слайд 5

Обзор возможностей ОС Linux

Linux как операционная система имеет следующие особенности:

изначально многопользовательская система,
многозадачная

Обзор возможностей ОС Linux Linux как операционная система имеет следующие особенности: изначально
операционная система,
может работать с большим количеством различных файловых систем,
широкие возможности для работы в сети,
имеет системы управления программными пакетами, позволяющими автоматизировать процедуры установки и удаления программ
имеет средства эмуляции других операционных систем, позволяющие запускать разработанные для них программы,
может работать на очень большом количестве аппаратных платформ.

Слайд 6

Многопользовательская и многозадачная система

Linux изначально создавалась как многопользовательская система, т.е. на одном

Многопользовательская и многозадачная система Linux изначально создавалась как многопользовательская система, т.е. на
и том же компьютере может работать несколько пользователей (в том числе и одновременно).
В многопользовательских системах для каждого пользователя хранятся его личные настройки. Каждый пользователь может определить правила доступа к своим данным других пользователей, а так же, для каждого пользователя задаются полномочия, в пределах которых он может заниматься настройкой компьютера.
Linux (как и практически все современные операционные системы) является многозадачной операционной системой, т.е. позволяет выполнять несколько программ одновременно.

Слайд 7

Работа с файловыми системами

В Linux реализован принцип "Все является файлом".
В ядре Linux

Работа с файловыми системами В Linux реализован принцип "Все является файлом". В
существует специальная подсистема Virtual File System (VFS), позволяющая работать с большим количеством различных файловых систем.
Linux может использовать диски:
с собственными файловыми системами Linux (ext, ext2, ext3, ext4),
с файловыми системами Windows (ntfs),
с файловыми системами Mac OS (hfs),
с файловыми системами старых версий Unix (sysv),
с файловыми системами DOS (msdos),
с файловыми системами CD-ROM, DVD- и flash-устройств (iso9660 и др.),
Так же Linux может работать с сетевой файловой системой NFS, и специальными файловыми системами (ProcFS и др.).

Слайд 8

Работа в сети

Linux поддерживает большое количество сетевых протоколов (практически все распространенные протоколы)

Работа в сети Linux поддерживает большое количество сетевых протоколов (практически все распространенные
и огромный перечень сетевой аппаратуры.
В большинство дистрибутивов Linux входит множество программ, предназначенных для работы в сети, например, web-серверы, ftp-серверы, средства сетевой диагностики и настройки и т.п.
Поэтому Linux очень широко применяется в качестве операционной системы для сетевых серверов, а так же для различных сетевых устройств, например, роутера D-Link DIR-320 и других устройств.

Слайд 9

Системы управления программными пакетами

Одной из удобных особенностей Linux является наличие систем управления

Системы управления программными пакетами Одной из удобных особенностей Linux является наличие систем
пакетами.
Они позволяют автоматизировать процессы установки, удаления и обновления программ, загрузки программ из локальных или удаленных репозиториев. При установке программ автоматически обрабатываются ситуации, связанные с конфликтами версий различных пакетов.
В мире Linux существуют два основных формата программных пакетов и систем управления пакетами, построенных на их основе:
формат RPM, характерный для Red Hat Linux,
формат DEB, характерный для Debian Linux и его производных, в частности Ubuntu и Mint.

Слайд 10

Средства эмуляции других операционных систем

Наличие средств эмуляции других операционных систем позволяет выполнять

Средства эмуляции других операционных систем Наличие средств эмуляции других операционных систем позволяет
в ней большое множество прикладных программ, уже разработанных для других операционных систем.

В Linux существует программа WINE, представляющая собой независимую реализацию программных интерфейсов Windows (WinAPI). WINE позволяет запускать в Linux многие Windows-программы, однако есть и те, которые не выполняются с помощью WINE.

Для Linux разработано несколько виртуальных машин, позволяющих эмулировать выполнение на Linux-машине других операционных систем. Примерами виртуальных машин являются QEMU, VirtualBox и VmWare.

Слайд 11

Поддержка аппаратных платформ

Linux портирована на очень большое количество аппаратных платформ.
Это:
платформы для

Поддержка аппаратных платформ Linux портирована на очень большое количество аппаратных платформ. Это:
персональных компьютеров – Intel x86, IA-64,
платформы для встроенных систем – ARM, MIPS, AVR32,
платформы для мейнфреймов, на которых работали старые версии Unix, например, IBM System/390,
платформы, характерные для рабочих станций, Power PC, Spark и др.

Слайд 12

История создания Unix и Linux

источник – wikipedia.org

История создания Unix и Linux источник – wikipedia.org

Слайд 13

Дистрибутив Linux – набор программного обеспечения,
готовый для конечной установки на пользовательское

Дистрибутив Linux – набор программного обеспечения, готовый для конечной установки на пользовательское

оборудование.
В состав дистрибутива обычно входят:
Ядро - это основная, определяющая часть ОС, которая управляет аппаратными средствами и выполнением программ.
Файловая система - это система хранения файлов на запоминающих устройствах.
Интерпретатор команд или оболочка - это программа, организующая взаимодействие пользователя с компьютером.
Служебные утилиты - это просто отдельные программы, которые, ничем принципиально не отличаются от других программ, запускаемых пользователем, кроме своего основного назначения - они выполняют служебные функции.
Прикладные программы,

Дистрибутивы Linux

Слайд 14

Дистрибутивы Linux

источник – wikipedia.org

Дистрибутивы Linux источник – wikipedia.org

Слайд 15

Основные дистрибутивы Linux

источник – distrowatch.com

Основные дистрибутивы Linux источник – distrowatch.com

Слайд 16

Области применения Linux

Персональные компьютеры (desktop, notebook),
Серверы (LAMP),
Суперкомпьютеры,
Встроенные системы.

Области применения Linux Персональные компьютеры (desktop, notebook), Серверы (LAMP), Суперкомпьютеры, Встроенные системы.

Слайд 17

Графическая подсистема Linux

Графическая подсистема Linux

Слайд 18

Графическая подсистема Linux

Графическая система X Window представляет доступ другим программам к аппаратным

Графическая подсистема Linux Графическая система X Window представляет доступ другим программам к
графическим ресурсам – экрану монитора, мыши, клавиатуре по специально оговоренному интерфейсу (X-протоколу).
Сейчас используется 11-я версия системы X Window, разработанная еще в 1987 году.
Начата работа по переходу на более новую альтернативную систему Wayland.

Слайд 19

Графическая подсистема Linux

Менеджер окон работает поверх системы X Window. Он реализует основные

Графическая подсистема Linux Менеджер окон работает поверх системы X Window. Он реализует
операции по работе с окнами - выполняет отрисовку основных элементов окна, позволяет изменять размер и положение окна во время выполнения программы, реализует возможность максимизации и минимизации окна, управляет тем, какое из окон является активным и получает поток ввода с клавиатуры от пользователя и т.п. Так же к функциям оконного менеджера относится поддержка нескольких виртуальных рабочих столов.

Слайд 20

Графическая подсистема Linux

Библиотеки графических элементов расширяют возможности стандартной библиотеки Xlib, которая содержит

Графическая подсистема Linux Библиотеки графических элементов расширяют возможности стандартной библиотеки Xlib, которая
средства для отрисовки основных графических примитивов, автоматизируют операции по использованию в прикладных программах распространенных графических элементов (виджетов) – кнопок, полей ввода и других графических элементов управления. Наиболее распространенными библиотеками графических элементов в Unix-подобных системах являются библиотеки Motif, Qt и GTK+.

Слайд 21

Графическая подсистема Linux

Графическая среда рабочего стола является конечным приложением, которое, в итоге,

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

Слайд 22

Среда рабочего стола GNOME (1)

Изображение с www.gmone.org

Среда рабочего стола GNOME (1) Изображение с www.gmone.org

Слайд 23

GNOME – среда рабочего стола для UNIX-подобных систем, основанная на библиотеке GTK+.

GNOME – среда рабочего стола для UNIX-подобных систем, основанная на библиотеке GTK+.
Является частью проекта GNU.
Проект GNOME предоставляет две вещи: рабочую среду GNOME, интуитивно понятную и привлекательную для пользователей; и платформу разработки GNOME  – обширный каркас для создания приложений, интегрируемых с рабочей средой.
Оболочка GNOME включает в себя следующие приложения:
Nautilus – файловый менеджер,
GNOME Terminal – эмулятор терминала, поддерживающий текстовые функции терминала, а так же цветной вывод и работу с мышью.
gedit – текстовый редактор с поддержкой Unicode.
Epiphany – стандартный веб-браузер среды GNOME начиная с версии 2.4.
Evolution – приложение для управления электронной почтой, расписанием и адресной книгой.
Ekiga – приложение IP-телефонии и проведения видеоконференций, которое ранее называлось GnomeMeeting.
Empathy – приложение мгновенного обмена сообщениями.
Totem – мультимедиа-проигрыватель среды GNOME.
GNOME System Tools – это комплект графических средств для администрирования UNIX-систем.

Среда рабочего стола GNOME (2)

Слайд 24

Среда рабочего стола KDE (1)

Изображение с www.kde.org

Среда рабочего стола KDE (1) Изображение с www.kde.org