Слайд 1Информационные технологии
Ханин Андрей Геннадьевич,
ст. преподаватель кафедры ИБ НГУЭУ,
ст. преподаватель кафедры
Автоматики НГТУ
Часть 1. Операционные системы
Слайд 2Краткое содержание курса (семестр IV)
Основные концепции операционных систем;
Архитектура и пользовательский
интерфейс современных ОС:
- Windows 2000 /
XP / 2003 / Vista / 2008 /2008 HPC/ 7 / 8,
- Windows Embedded (Windows CE.NET, Windows XP Embedded),
- Linux,
- Solaris (Sun),
- ОС для мобильных устройств: Windows Mobile, Google Android,
- ОС для облачных вычислений: Microsoft Windows Azure;
Практические знания и навыки по использованию операционных систем и сетей;
Основные концепции прикладного программного обеспечения.
Слайд 3Литература
Silbershatz A., Galvin P., Gagne G. Operating System Concepts. –
John Wiley & Sons, 2012 (9th ed.);
Таненбаум Э. Современные операционные
системы. – Питер, 2010;
Таненбаум А. Компьютерные сети. – Питер, 2012;
Цикритзис Д., Бернстайн Ф. Операционные системы. – М.: Мир, 1977;
Драуби О., Моримото Р., Ноэл М., Амарис К., Мистри Р. Microsoft Windows Server 2008. – Вильямс, 2008;
Соломон Д., Руссинович М. Внутреннее устройство MS Windows: Windows Server 2003, Windows XP и Windows 2000. 4-е изд. – Русская редакция (Microsoft Press), 2008;
Майерс С. MacOS X 10.5 Leopard. – БХВ, 2008;
Баррет Д. Дж. Linux: Основные команды. – Кудиц-Пресс, 2008;
В. О. Сафонов. Операционные системы и сети. Материалы курса. http://www.microsoft.com/rus/msdnaa/curricula.
Слайд 4Лекция 1
Понятие операционной системы (ОС),
Понятие компьютерной системы,
Краткая история развития ОС,
Цели,
компоненты, задачи современной ОС.
Слайд 5Понятие операционной системы
Операционная система, ОС (operating system, OS) – базовое
системное программное обеспечение, управляющее работой ЭВМ и являющееся посредником (интерфейсом)
между аппаратурой (hardware), прикладным программным обеспечением (application software) и пользователем ЭВМ (user).
ЭВМ – обобщающий термин.
В рамках курса рассматриваются ОС, предназначенные для персональных и промышленных компьютеров, серверных платформ, а также информационно-вычислительных систем и сетей.
Цели работы операционной системы:
- обеспечить удобство, эффективность, надежность, безопасность использования компьютера в целом и отдельных его устройств в частности,
- обеспечить удобство, эффективность, надежность, безопасность использования прикладных программ,
- обеспечить удобство, эффективность, надежность, безопасность использования данных.
Особая важность безопасности, надежности и защиты данных: инициатива Trustworthy Computing фирмы Microsoft (2002).
Слайд 6Компоненты компьютерной системы
Аппаратура (hardware) – процессор (CPU), материнская плата, память
(memory), устройства ввода-вывода (I/O devices)
Операционная система (operating system) – управляет
использованием аппаратуры различными программами и пользователями
Прикладное программное обеспечение (applications programs) – программы, предназначенные для решения различных классов задач (компиляторы, СУБД, графические библиотеки, игровые программы и др.)
Пользователи (users) – люди и другие компьютеры
Слайд 7Общий принцип функционирования компьютерной системы
(C) В.О. Сафонов, 2010
Слайд 8Классификация компьютерных систем
Суперкомпьютеры (super-computers),
Многоцелевые компьютеры (mainframes),
Кластеры компьютеров (computer clusters),
Настольные
компьютеры (desktops),
Портативные компьютеры (laptops, notebooks),
Карманные портативные компьютеры (КПК) – handhelds
Мобильные
устройства (mobile intelligent devices) – мобильные телефоны, коммуникаторы,
Носимые компьютеры (wearable computers),
Распределенные системы (distributed systems),
Системы реального времени (real-time systems).
Слайд 9История ОС
Многозадачность, разделение времени, управление
процессами
1970-е г.: UNIX – первая “мобильная” ОС (AT&T, B. Kernighan,
D.Ritchie), работавшая на многих аппаратных платформах
1980-е гг.: CP/M (8-разрядная), MS DOS (16-разрядная) – первые ОС для персональных iомпьютеров с процессорами Intel 8080/8086 (x86)
1980-е гг.: Macintosh/MacOS (Apple) – первая компьютерная и операционная система с развитой поддержкой GUI
1990-е гг.: Windows, Windows 3.x, Windows for Workgroups, Windows NT, Windows 98
В настоящее время: Windows XP/2003/Vista/Windows 2008, Windows 7, Windows 8, Linux
Самая распространенная в мире ОС – Google Android. Windows – только на втором месте…
Слайд 10Активное развитие ОС в 2000-х гг.
ОС для ПК, серверов, вычислительных
систем и сетей
Microsoft: Windows XP, Windows 2003, Windows Vista (2007),
Windows 2008, Windows 2008 HPC, Windows 7, Windows 8,
Oracle/Sun: Solaris 10 для платформ SPARC, x86, x64,
Linux: многочисленные диалекты (Red Hat, Fedora, Mandrake, Ubuntu, SuSE и др.– сотни диалектов). Ядро Linux распространяется свободно с исходными кодами,
Unix: FreeBSD, NetBSD, OpenBSD.
Apple: MacOS.
ОС для мобильных устройств:
Microsoft Windows Mobile, Google Android и др.
ОС для облачных вычислений:
Microsoft Windows Azure.
ОС с открытым исходным кодом (уникальная возможность изучить современные ОС “изнутри”):
Microsoft: Windows Embedded Shared Source, Windows Research Kernel,
Sun: OpenSolaris (на ее основе будет выпущена Solaris 11),
Linux: большинство диалектов доступно вместе с исходным кодом.
Слайд 11Основные компоненты ОС
Ядро (kernel) – основа ОС, загружаемая в память
один раз и постоянно (резидентно) находящаяся в памяти
Подсистема управления ресурсами
(resource allocator) – часть ОС, управляющая вычислительными ресурсами (оперативной и внешней памятью и др.)
Управляющая программа (control program, supervisor) – подсистема ОС, управляющая исполнением пользовательских программ и функционированием устройств ввода-вывода
Слайд 12Основные задачи ОС
Управление процессами
Управление основной памятью
Управление файлами
Управление системой ввода-вывода
Управление
внешней памятью
Поддержка сетей (networking)
Организация системы защиты (protection)
Организация системы поддержки командного
интерпретатора (Windows: MS DOS Prompt; UNIX: shells – sh, csh, ksh, bash)
Организация графической оболочки
Слайд 13Управление процессами
Процесс (process) - это программа при ее исполнении. Для
процесса требуется ряд ресурсов, включая время процессора, память, файлы, устройства
ввода-вывода, сетевые устройства и др.
Обычно при создании процесса для него создается новое пространство виртуальной памяти
ОС отвечает за следующие действия, связанные с управлением процессами:
Создание и удаление процессов.
Приостановка и возобновление процессов.
Обеспечение механизмов для:
Синхронизации процессов,
Взаимодействия процессов.
Слайд 14Управление основной памятью
Основная (оперативная) память может рассматриваться как большой массив.
Операционная система распределяет ресурсы памяти между процессами, выделяет память по
запросу, освобождает ее при явном запросе или по окончании процесса, хранит списки занятой и свободной памяти в системе.
Слайд 15Управление файлами
Файл – это логическая единица размещения информации на внешнем
устройстве, например, на диске. ОС организует работу пользовательских программ с
файлами, создает файлы, выполняет их открытие и закрытие и операции над ними (чтение и запись), хранит ссылки на файлы в директориях (папках) и обеспечивает их поиск по символьным именам.
Слайд 16Управление устройствами ввода-вывода
ОС управляет аппаратными и программными компонентами компьютера, обеспечивая
надежность работы внешних устройств, эффективность их использования, диагностику и реконфигурацию
в случае их сбоев и отказов. Для этого ОС хранит и использует таблицу состояния устройств.
Слайд 17Управление внешней памятью
При управлении внешней памятью ОС решает задачи, аналогичные
задачам управления основной памятью, - выделение памяти по запросу, освобождение
памяти, хранение списков свободной и занятой памяти и др. ОС поддерживает также использование ассоциативной памяти (кэш-памяти) для оптимизации обращения к внешней памяти.
Слайд 18Поддержка сетей
Операционная система обеспечивает использование сетевого оборудования (сетевых карт, адаптеров),
вызов соответствующих драйверов, поддержку удаленного взаимодействия с файловыми системами, находящимися
на компьютерах сети, удаленный вход на другие компьютеры сети и использование их вычислительных ресурсов, отправку и получение сообщений по сети, защиту от сетевых атак.
Слайд 19Организация системы защиты
При работе ОС должны быть обеспечены надежность и
безопасность, т.е. защита от внешних атак, конфиденциальность личной и корпоративной
информации, диагностика и исправления ошибок и неисправностей и др.
ОС обеспечивает защиту компонент компьютерной системы, данных и программ, поддерживает фильтрацию сетевых пакетов, обнаружение и предотвращение внешних атак, хранит информацию обо всех действиях над системными структурами, полезную для анализа атак и борьбы с ними.
Слайд 20Организация поддержки командной строки
Любая операционная система поддерживает командный язык (или
набор командных языков), состоящих из пользовательских команд, выполняемых с пользовательского
терминала (из пользовательской консоли).
Типичные команды – это получение информации об окружении, установка и смена текущей рабочей директории, пересылка файлов, компиляция и выполнение программ, получение информации о состоянии системы и выполнении своих процессов и др.
В системе Windows для выполнения команд по традиции используется окно пользовательской консоли MS DOS (MS DOS Prompt), в системе Linux – специальное окно "Терминал" (Start / System Tools / Terminal).
Слайд 21Организация графической оболочки
Использование одного лишь командного языка и системных вызовов
неудобно, поэтому простой и наглядный графический пользовательский интерфейс с ОС
необходим. Имеется много известных графических оболочек для операционных систем, причем их возможности очень похожи друг на друга - настолько, что подчас не вполне понятно, какая именно ОС используется. Среди графических оболочек, используемых в системах типа UNIX, можно назвать CDE, KDE, GNOME. ОС Windows и MacOS имеют собственные, весьма удобные графические оболочки.