МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • Ответы на вопросы по курсу Системное программирование

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

    ОТВЕТЫ НА ВОПРОСЫ ПО КУРСУ “СИСТЕМНОЕ ПРОГРАММИРОВАНИЕ”, 1997 г.

    1. История развития ВТ в связи с историей развития системного программного

    обеспечения.

    Современные компьютерные системы наряду с прикладным ПО всегда содержат

    системное, которое обеспечивает организацию вычислительного процесса.

    История системного программного обеспечения связана с появлением первой

    развитой в современном понимании ОС UNIX.

    1965 - Bell labs разрабатывает операционную систему Multix - прообраз UNIX,

    имеющий далеко не все части современной системы. До этого времени не

    существовало мобильных ОС (переносимых на разные типы машин) и Multix также

    не был мобильной ОС.

    1971 - написан UNIX для работы на мощнейшей платформе того времени PDP - 11

    1977 - Становится переносимой системой, т.к. переписан на языке C (AT&T

    system V)

    1981 - платформа Intel начинает резко наращивать свои возможности.

    Колоссальным прорывом было создание 8088, затем 8086, 80286, etc.

    Появляется однопользовательская ОС MS-DOS, на 10 лет ставшая стандартом де-

    факто для пользователей персональных компьютеров. Но для машин с

    процессором Intel появляются и версии UNIX.

    Конец 80 – начало 90 гг. – аппаратные средства резко увеличивают свою

    мощность. Microsoft создает новую ОС Windows NT и появляется стандарт

    Win32. Позже появляется Windows 95 – ОС для одного рабочего места, но

    имеющая многие возможности NT, призванная вытеснить MS-DOS. Аппаратные

    средства позволяют создавать 64-битные версии такой ОС, как UNIX, и в

    скором времени она появляется и используется на платформе Alpha фирмы DEC.

    С наращиванием мощности аппаратных средств системное программное

    обеспечение становится все более изощренным и имеющим большие возможности.

    2. Общая классификация вычислительных машин. Современные архитектурные

    линии ЭВМ. Системное ПО и его место в современной информатике.

    ЭВМ являются преобразователями информации. В них исходные данные задачи

    преобразуются в результат ее решения. В соответствии с используемой формой

    представления информации машины делятся на два класса: непрерывного

    действия - аналоговые и дискретного действия - цифровые. В силу

    универсальности цифровой формы представления информации цифровые

    электронные вычислительные машины представляют собой наиболее универсальный

    тип устройства обработки информации. Основные свойства ЭВМ - автоматизация

    вычислительного процесса на основе программного управления, огромная

    скорость выполнения арифметических и логических операций, возможность

    хранений большого количества различных данных, возможность решения широкого

    круга математических задач и задач обработки данных. Особое значение ЭВМ

    состоит в том, что впервые с их появлением человек получил орудие для

    автоматизации процессов обработки информации. Управляющие ЭВМ –

    предназначены для управления объектом или производственным процессом. Для

    связи с объектом их снабжают датчиками. Непрерывные значения сигналов с

    датчиков преобразуются с помощью аналогово-цифровых преобразователей в

    цифровые сигналы, кот. вводятся в ЭВМ в соотв с алгоритмом упр-я. После

    анализа сигналов формируются упр. воздействия, которые с пом. цифро-

    аналоговых преобразователей преобразуются в аналоговые сигналы. Через

    исполнительные механизмы изменяется состояние объекта.

    Универсальные ЭВМ – предназначены для решения большого круга задач,

    состав которых при разаработке ЭВМ не конкретизируется.

    Пример современных архитектурных линий ЭВМ: персональные ЭВМ (IBM PC и

    Apple Macintosh – совместимые машины), машины для обработки специфической

    информации (графические станции Targa, Silicon Graphics), большие ЭВМ

    (мэйнфреймы IBM, Cray, ЕС ЭВМ).

    Общее назначение системного ПО - обеспечивать интерфейс между

    программистом или пользователем и аппаратной частью ЭВМ (операционная

    система, программы-оболочки) и выполнять вспомогательные функции (программы-

    утилиты) Современная операционная система обеспечивает следующее:

    1) Управление процессором путем передачи управления программам.

    2) Обработка прерываний, синхронизация доступа к ресурсам.

    3) Управление памятью.

    4) Управление устройствами ввода-вывода.

    5) Управление инициализацией программ, межпрограммные связи.

    1) Управление данными на долговременных носителях путем поддержки файловой

    системы.

    См. также стандарты в (1).

    1. Общее понятие архитектуры. Принципы построения ВС 4-го поколения.

    Архитектура – совокупность технических средств и их конфигураций, с

    помощью которых реализована ЭВМ. ЭВМ 4 поколения, имеет, как правило,

    шинную архитектуру, что означает подключение всех устройств к одной

    электрической магистрали, наз. шиной. Если устройство выставило сигнал на

    шину, другие могут его считать. Это свойство используется для организации

    обмена данными. С этой целью шина разделена на 3 адреса – шина адреса, шина

    данных и шина управляющего сигнала. Все современные ЭВМ также включают

    устройство, наз. арбитром шины, которое определяет очередность занятия

    ресурсов шины разными устройствами. В PC распространены шины ISA, EISA,

    PCI, VLB.

    ШИНА

    2. Состав и функции основных блоков ВС: процессора, оперативной памяти,

    устройства управления, внешних устройств.

    Структурная схема машины фон Неймана:

    |Арифм.-логич. |, и сборка прекратится.

    Использование многомодульной структуры необходимо:

    а) для разбиения большого текста на модули по функциональному

    назначению;

    б) для создания библиотек процедур;

    в) для написания подпрограмм в языки высокого уровня.

    34. Технология разработки программ – трансляция и редактирование связей.

    Понятие об исходном, объектном, выполняемом модулях.

    Исходный код программы – код, написанный на языке программирования.

    Может включать модули на ЯВУ и модули с подпрограммами на языке ассемблера.

    Объектный модуль – код программы после трансляции (компиляции),

    преобразованный в машинные коды. Помимо них содержит внешние ссылки и

    информацию для редактора связей и может также содержать отладочную

    информацию (debug info).

    Исполняемый модуль –модуль, содержащий готовую к выполнению программу

    – м.б. 2 видов:

    а) точный образ памяти программы с привязкой к абсолютным адресам (в

    MS-DOS – формат файла *.COM)

    б) перемещаемый исполняемый формат, см. 17.

    Трансляция – получение объектного кода из исходного.

    Редактирование связей – разрешение внешних ссылок и создание

    исполняемого модуля из объектных.

    35. Основные функции редактора связей – распределение памяти,

    разрешение внешних ссылок – см. 17, 33.

    36. Программные сегменты и их атрибуты, способы распределения памяти

    под сегменты.

    Собственно сегменты и распределение памяти см. 30.

    Атрибуты сегментов

    Атрибут комбинации сегмента предназначен дляуказания компоновщику, каким

    образом объединять сегменты, находящиеся в разных модулях и имеющие

    одинаковые имена. М.б. PRIVATE (сегмент не будет объединяться с

    одноименными из др. модулей), PUBLIC (будет) и некоторые другие.

    Атрибут класса сегмента представляет собой строку, заключенную в кавычки,

    которая позволяет определить компоновщику нужный порядок размещения

    сегментов при помещении их в программу из разных модулей. Он группирует

    вместе сегменты с одинаковым классом.

    Атрибут выравнивания сегмента – сообщает компонаовщику, чтобы он

    позаботился о том, чтобы сегмент начинался с указанной границы. Возможное

    выравнивание: BYTE – выравнивание не делается, сегмент начинается со

    следующего байта, WORD (DWORD) – выравнивание погарнице слова (двойного

    слова), PARA – выравнивание по границе 16-байтового параграфа, и т.п.

    Атрибут размера сегмента – показывает размер, 16 или 32-битные сегменты.

    Атрибут доступа – показывает возможность доступа к сегменту в защищенном

    режиме – доступен как кодовый, для чтения, записи, чтения и записи.

    37. Разрешение внешних ссылок, функция автовызова, библиотеки объектных

    модулей и их использование.

    Разрешение внешних ссылок – см. 33, 17.

    Библиотеки объектных модулей – пакет объектных модулей, собранных в один

    файл и подключаемый к программе на этапе разрешения внешних ссылок (все

    идентификаторы, которые должны быть доступны из библиотек, объявляются в

    модулях как PUBLIC). Компоновщик может просматривать библиотеку и

    самостоятельно находить нужные модули, избавляя от этого программиста.

    Библиотеки делаются с помощью программы-библиотекаря. Библиотекарь может

    добавлять и извлекать модули, а также получать список доступных

    идентификаторов.

    Любой компилятор ЯВУ имеет в комплекте несколько стандартных

    библиотек, например, библиотеки ввода-вывода, работы с плавающей точкой,

    графическую и т.п.

    38. Типы внешних ссылок и общих имен. Статическое и динамическое разрешение

    ссылок.

    Внешние ссылки см. 17, 33, 34.

    Статическое и динамическое разрешение внешних ссылок.

    Процесс разрешения внешних ссылок на этапе создания исполняемого модуля –

    статическое разрешение ссылок. Возможно и динамическое подсоедиение нужных

    модулей на этапе работы программы.

    а) Динамически вызываемый загрузчик, т.е. программа вызывает загрузчик и

    подсоединяет недостающие части. Такой подход невыгоден (сложен и требует

    много времени)

    б) DLL – принцип разделяемых библиотек. DLL – это пакет функций,

    отредактированный для исполнения в позиционно-независимом стиле. Имеет

    таблицу всех содержащихся функций. Для работы с ним программа выполняет 1)

    функцию загрузки DLL, 2)переход по смещению в таблице функций.

    При работе с DLL несколько программ могут использовать одну ее копию в

    памяти.

    39. Динамическое распределение памяти, оверлейные программы. Общая

    структура объектного модуля.

    Стандартный исполняемый псевдоперемещаемый модуль (например, типа EXE

    для DOS) содержит сегменты в том виде, в котором они будут размещены в

    памяти. Такое распределение памяти называется статическим. В ситуации

    нехватки памяти, отдельный код или данные, которые могут быть нужны не все

    вместе, а по очереди, разумнее было бы подгружать в память в процессе

    выполнения. Выделение памяти под выполняемый код в процессе работы

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

    распределением памяти. Программы, содержащие динамически подгружаемые

    модули, называются оверлейными, а сами такие модули – оверлеями. Загрузка

    данных из модуля в общем случае не представляет проблем, в случае загрузки

    кода перед выполнением он должен быть особым образом подготовлен (например,

    с учетом местоположения вызывающей программы в памяти для подпрограмм

    должны быть образованы правильные ссылки). Такую подготовку выполняет

    специальная программа – менеджер оверлеев. Он может поставляться, а) как

    библиотека компилятора [в Borland Pascal 7.0]. В этом случае оверлейный

    модуль, как правило, имеет какой-то свой специфический формат, работа с ним

    ведется с помощью стандартных подпрограмм. Код оверлейных подпрограмм и

    данных размещается в памяти [в BP буфер оверлеев имеет плавающую границу с

    кучей] и по окончании работы с ним может быть удален. б) Может быть внедрен

    в структуру оверлейного модуля. В этом случае модуль имеет формат

    исполняемого файла, и для инициализации он должен быть запущен стандартным

    для ОС способом из-под вызывающей программы.

    Оверлеи имеют широкое распространение в системе MS-DOS, при подгрузке

    используется не только основная память, но и DOS-спецификации расширенной:

    XMS, EMS. В развитых многозадачных системах используется, в основном, очень

    похожая технология DLL. Ее отличие в том, что она функционирует в

    защищенном режиме и позволяет использовать одну свою копию в памяти разным

    программам. DLL можно рассматривать как следущее поколение оверлейной

    технологии.

    40. Основные функции ОС. Принципы мультипрограммирования. Системные

    ресурсы.

    Основные функции ОС:

    1) Управление процессором путем передачи управления программам.

    2) Обработка прерываний, синхронизация доступа к ресурсам.

    3) Управление памятью.

    4) Управление устройствами ввода-вывода.

    5) Управление инициализацией программ, межпрограммные связи.

    6) Управление данными на долговременных носителях путем поддержки файловой

    системы.

    Ресурс – какой-либо объект или показатель надежности какого-либо объекта.

    Системные ресурсы – совокупность аппаратных ресурсов и системных сервисов.

    Основными потребителями системных ресурсов являются процессы, выполняемые в

    системе.

    41. Защита программ и данных в мультипрограммных средах. Режимы управления.

    Защита и распределение памяти.

    Защита программ и данных в многозадачных ОС означает малую

    вероятность того, что сбой одной из выполняющихся программ не вызовет

    повреждения данных или кода других программ, и по возможности изолировать

    процессы друг от друга. Во всех ОС сущ. хотя бы 2 режима процессора –

    системный и пользовательский. Программа исп. в пользовательском режиме и не

    может использовать ряд команд. В системном режиме доступно все.

    Переключение режимов работы осуществляется системными вызовами. Системный

    вызов – специальная команда, приводящая к прерыванию, и в ядре ОС

    существует несколько точек, куда перейдет управление по этому прерыванию.

    386 имеет встроенный механизм для этих переключений – шлюз.

    Защита памяти – осуществляется путем блокировки доступа к памяти

    других процессов, а также блокировки доступа к памяти ядра. Один из

    способов – вся память делится на страницы, и у каждой есть замок – 4-

    битовый признак, который можно установить только привелигированной

    командой. В процессоре есть 4-битовый регистр – ключ, который также можно

    установить только привелигированной командой. При обращении происходит

    сравнение замка и ключа.

    С появлением многозадачности появилась проблема распределения памяти.

    При работе реальной программы обращения к ОП имеют тенденцию к локализации.

    Память можно разделить на используемую и неиспользуемую. Чтобы отследить

    использование области памяти, всю ОП можно разбить на страницы

    фиксированного размера (4К) и с каждой страницей связать бит, который

    устанавливать при обращении к данной странице.

    42. Управление ЦП – фоновая обработка, пактная обработка, прерывания.

    43. Общая схема функционирования ОС – супервизор, диспетчер, планировщик.

    Виртуализация.

    Супервизор – программа многозадачной ОС, обеспечивающая наилучшее

    использование ресурсов ЭВМ при одновременном выполнении нескольких задач.

    Планировщик – программа, выполняющая алгоритм планирования процессов.

    Планирование очередности предоставления выполняющимся процессам времени

    центрального процессора (диспетчеризация). Процессы работают с центральным

    процессором в режиме разделения времени.

    44. Виртуальная память и способы ее реализации. Страничная память. Свопинг.

    Виртуальная память отличается от обычной ОП тем, что какие-то ее

    редко используемые фрагменты могут находиться на диске и подгружаться в

    реальную ОП по мере необходимости. Такая организация памяти позволяетс

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

    на ЭВМ. Для реализации ВП используют, например, динамическю переадресацию.

    Сегментом в терминах ВП называется область памяти из 2L страниц. Вначале по

    номеру в таблице сегментов отыскивается сегмент. Таблица сегментов содержит

    начальный адрес таблицы страниц. Вторая часть адреса используется для

    обращения в эту таблицу, и по ней находится физический адрес данной

    страницы. Результаты поизка по таблицам запоминаются в быстродействующем

    ассоциативном ЗУ, называемом TLB. Наиболее часто употребляемые адреса

    откладываются в TLB и поэтому 98-99% обращений к памяти идут без просмотра

    таблиц.

    Страничная организация памяти – организация, при которой адресное

    пространство памяти разбивается на малые участки – страницы. Используется

    для управления памятью в системах, работающих в защищенном режме. Как

    правило, такая организация памяти подразумевает пейджинг – механизм

    виртуальной памяти, при котором страницы вытесняются на диск и

    подкачиваются с диска.

    Свопинг – алгоритм реализации виртуальной памяти. Его можно разбить

    на три части: управление пространством на устройстве выгрузки, выгрузка

    процессов из основной памяти и подкачка процессов в основную память. В

    качестве устройства выгрузки используют раздел на устройстве типа жесткого

    (swap-partition) или дисковый файл (swap-file) на таком устройстве.

    45. Системная архитектура 80386: сегментирование, страничная организация,

    средства авторизации и защиты.

    Возможности 80386 полностью раскрываются, когда он работает в

    защищенном режиме. В этом режиме адресное пространство расширяется до 4Т, а

    виртуальное – до 64Т. 80386 использует сегментацию – один из методов

    управления памятью. Сегменты – самостоятельные области памяти, имеющие

    собственные атрибуты. В сегменте м.б. код программы или данные. Вся

    информация о сегменте запоминается в спец. структуре, наз. дескриптором.

    Дескрипторы используются аппаратно и не доступны из программ. Межсегментные

    вызовы в 80386 происходят с учетом защиты. Помимо сегментации, 80386

    поддерживает другой вид организации памяти – страничную организацию.

    Страницы – это малые блоки памяти одинакового размера, не имеющие

    логической связи со структурой программ. Они используются в основном на

    уровне ОС. Страницы могут подкачиваться с диска и вытесняться на диск

    (пейджинг).

    В 80386 есть режим виртуального 8086 – режим, эмулирующий 8086 в

    защищенном режиме, при котором у каждого пользователя многозадачной системы

    создается иллюзия монопольного владения ресурсами машины.

    80386 поддерживает 4-уровненвую систему защиты, управление защитой

    осуществляется с помощью уровней привелигированности. Уровень

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

    ввода-вывода и доступом к сегментным дескрипторам.

    -----------------------

    Процессор

    Уст-ва ввода-вывода

    Опер. память


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.