програм. Архитектура фон Неймана. Была предложена в 1945 году
Скачать 20.6 Kb.
|
Архитектура фон Неймана. Была предложена в 1945 году: -модуль обработки, состоящий из арифметико-логического утройства (алу) и регистров операндов; -модуль управления, состаящий из регистра команд и счетчика команд; -память, хранящая данные и инструкции; -внешнее хранилище; -механизмы ввода/ввывода Внутри корпуса: Системный блок называется Основная плата (материнская или системная)- обеспечивает взаимодействите всех устройств Процессор (скрыт под вентилятором) Оперативная память- место где хранятся данные и хранятся программы во время исполнения. Работает только когда работает компьютер, при выключении все содержимое обнуляется. Жесткий диск- накопитель, который представляет собой устройство долговременного хранения энергонезависимого. Блок питания- блок, который позволяет преобразовать обычное питание из разетки в те напряжения, которые требуются для работы компьютера. Видеокарта-устройство, которое позволяет создавать изображения на экране монитора Прочие компоненты (камеры, монитор, клавиатура,мышка, микрофон и тд- перифирийные устройства) Материнская плата. Выполняет интеграцию между остальными компонентами компьютера. Она является основой компьютера. -место для процессора; -слоты памяти; -разъемы для подключения внешних устройств; -слоты для дополнительных устройств; -разъемы для подключения жестких дисков; -разъем питания. Процессор (мозги компьютера) -архитектура набора команд (ISA): .х86 .ARM -производитель; -тех. процесс; -тактовая частота; -наличие и размер кэшей L1, L2, L3; -обычно нужен кулер (прикреплен к радиатору и тот к вентилятору) 22nm он. Оперативная память- устройство для хранения программ и данных в момент исполнения -набор ячеек, каждая из которых имеет свой адрес (порядковый номер ячейки); - оперативная память энергозависима; -различают память: .с коррекцией ошибок (ЕСС); .без корекции ошибок (non-ECC). Накопители По типу: -жесткие диски (hard disk drive); -3,5 дюйма (IDE\SATA); -2,5 дюйма (IDE\SATA). -твердотельные накопители (Solid-State Drive); -2,5 дюйма (sata); -различные форм- факторы (NVMeM2, SATA M2, Msata). Видеокарта. Решаемые задачи: -вывод изображения на монитор (традиционно); -формирование изображения (графический ускоритель); -проведение математичесиких расчетов. Видеокарты играют решающую роль в: -компьютерной графике; -разработкие и использовании искусственного интелекта; -майнинге криптовалют, подборе паролей и других тяжелых вычислительных задачах. Периферийные устройства. К компьютеру можно подключать различные устройста: -монитор/проектор (HDMI, VGA, DISPLAY PORT); -мышь и клавиатура (PS/ 2, USB, BLUETOOTH); -принтер и/или сканер (USB, ETHERNET) -веб-камера (USB); -колонки/ наушники/ микрофон (mini jack 3,5); -флешки/ картридеры/ внешние диски (usb); -игровые манипулятора (usb); -графический планшет (usb); -VR- шлем. Одноплатные компьютеры (single-board computer) Самодостаточный компьютер на одной плате: -изготавливаются в качестве демонстрационных систем, систем для разработчиков или образования, или для использования в роли промышленных или встреиваемых компьютеров; -с одном стороны устройство более компактно и дешево, с другой стороны, расширение возможностей затруднено- компоненты напаяны на плату. Система-на- кристалле (System-on-a-Chip, SoC)- электронная схема, выполняющая функции целого устройства (например, компьютера) и размещенная на одной интегральной схеме. Структура компьютера. Включает в себя: -один или несколько центральных процессоров; -контроллеры устройств; -общая шина; -оперативная память. Как справиться со сложностью? Каждая часть компьютера может быть разной: -центральные процессоры: Intel\ AMD, PowerPC, ARM, MIPS… -количество: памяти, места на диске… -периферийные устройства :мышь, клавиатура, веб-камера, считыватель отпечатка пальца -сетевое окружение: кабельное, DSL, беспроводное, оптическое. Вопросы: -нужно ли программисту создавать единую программу, для решения независимых задач? -должна ли программа учитывать все многообразие аппаратного обеспечения? -позволять ли одной некачественной программе сломать всю систему? -должна ли любая программа иметь доступ ко всему оборудованию? Развитие операционных систем. Разработка операционной системы- очень затратное дело, поэтому все современные операционные системы ведут свою историю с незапамятных времен: -Multics-> AT&T UNIX-> BSD UNIX-> Ultrix->SunOS-> NetBSD->… -Mach (микроядро)->BSD->NextStep-> XNY->Apple OS X, iphone ios -minix->linux->android os, Chrone OS, RedHat, Ubuntu, Fedora, Debian, Suse… -CP\M->QDOS->MS-DOS->WINDOWS 3.1-> NT-> 95 ->98 -> 2000 -> XP-> Vista->7 -> 8-> 10->… Абстракция виртуального компьютера. Приложение …………………. Интерфейс виртуального компьютера Операционная система ……………………… интерфейс физического компьютера Оборудование Операционная система обеспечивает: -улучшеный общий интерфейс (виртуальный), скрывающий разнообразные (физические) интерфейсы; -оптимизацию удобства использования, надежности, защищенности и т.д. Приложения, использующее виртуальный интерфейс, не зависят от оборудования, на котором выполняются. Программная эмуляция абстрактной вычислительной машины: -можно «сделать» оборудование таким, каким хочется; -программы могут переноситься с одного физического компьютера на другой. Упрощения при программировании: -каждое приложении (процесс) «считает», что владеет всеми ресурсами; -различные устройства, служащие одной цели имеют одинаковые виртуальные интерфейсы: .видеокарта->оконный графический интерфейс; .сетевая карта->стек протоколов TCP\IP. Изоляция отказов: -процессы независимы; -ошибки «не роняют» всю систему. Определение операционной системы. Универсального определения нет. Хорошая аппроксимация- «все, что вы получаете при покупке операционной системы и есть операционная система»: - сильно различается «Программа, которая всегда работает при работе компьютера»- это ядро. -все остальное- это либо системные программы (поставляемые с операционной системой), либо приложения пользователя. Особый слов программного обеспечения, предоставляющий приложениям пользователя доступ к аппаратным ресурсам: .удобная абстракция сложных аппаратных устройств; .защищенный доступ к общим ресурсам; .безопасность и аутентификация; .среда взаимодействия. Что же делает операционная система? -управление памятью; -управление вводом/ выводом; -планирование нагрузки на процессор; -коммуникации? -многозадачность? А Файловая система (обеспечивает храние файлов), поддержка мультимедиа? Пользовательский интерфейс? Браузер? Не понятно.. Операционная система это фокусник так как: -предоставление ясных, легких в использовании абстракций физических ресурсов; -неограниченное количество памяти, выделенный компьютер; -объекты высокого уровня: файлы, пользователи, сообщения; -сокрытие ограничений, виртуализация. -«вычислительная машина» приложения- это процесс в операционной системе. -каждая работающая программа, выполняется в собственном процессе. -процессы предоставляют улучшенные интерфейсы «голого железа». Что такое процесс? – абстракция операционной системы, описывающая выполняемую задачу: -адресное пространство; -одна или несколько нитей (потоков), выполняющихся в этом адресном пространстве; -состояние системы: .открытые файлы .открытые сокеты (сетевые соединения) Еще она является арбитром: -управление защитой, изоляцией и общим доступом к ресурсам; -распределение ресурсов и взаимодействие Защит ядра ОС от процессов -ОС изолирует процессы друг от друга; -ОС изолирует себя от процессов; -… хотя они работают на одном и том же аппаратном обеспечении (железе). -ОС обеспечивает общие сервисы для операций ввода\ вывода 4 фундаментальных концепции: Нить (поток): .единичный уникальный контекст исполнения: полностью описывает состояние исполнения Адресное пространство (с преобразованием): .программа выполняется в адресном пространстве, которое отличается от пространства памяти физической машины; Процесс: .экземпляр запущенной программы; состоит из адресного пространства и одной или нескольких нитей (потоков); Двойной режим операций (механизм защиты): .только «система» может доступиться до некоторых ресурсов; .операционная система и оборудование защищены от пользовательских программ; только операционная система может управлять преобразованием виртуальных адресов адресного пространства в адреса ячеек физической памяти. Операционная систума- АРБИТР, ФОКУСНИК И КЛЕЙ. КЛЕЙ Т.К.: общие сервисы( хранение файлов, графический интерфейс, сетевое взаимодействие; управление общим доступом, авторизация; общий внешний вид и ощущения от использования). Абстракция над «железом»: процессор-> нить (поток); Память- >адресное пространство; Накопитель -> файлы и директории; Сетевая карта-> сокеты Компьютер-> Операционные системы: -обеспечивают удобные абстракции для работы с различными аппаратными средствами, -удобство, защита, надежность, полученная при создании абстрактного интерфейса. -координируют распределение ресурсов и защищают пользователей друг от друга, -использование нескольких важных аппаратных механизмов; -опрощают разработку приложений, предоставляя стандартные сервисы, -локализация неисправностей, отказоустойчивать и восстановление работоспособности. Операционные системы: Windows, Linus (Ubuntu, RED HAT), android, free bsd, reactOS, macOS, ios. |