- Фантастика и фэнтези
- Ироническое фэнтези
- Стимпанк
- Детективная фантастика
- Киберпанк
- Попаданцы
- LitRPG
- Космоопера
- Технофэнтези
- Городская фантастика
- Русское фэнтези
- Юмористическая фантастика
- Космическая фантастика
- Боевое фэнтези
- Эпическая фантастика
- Зарубежная фантастика
- Книги магов
- Мистика
- Разная фантастика
- Разное фэнтези
- Любовное фэнтези
- Романтическая фантастика
- Городское фентези
- Историческая фантастика
- Историческое фэнтези
- Социально-философская фантастика
- Сказочная фантастика
- Иностранное фэнтези
- Романтическое фэнтези
- Ироническая фантастика
- Ужасы и Мистика
- Постапокалипсис
- Героическая фантастика
- Фэнтези
- Научная Фантастика
- Социально-психологическая
- Альтернативная история
- Боевая фантастика
- Разная литература
- Пословицы, поговорки
- Шахматы
- Визуальные искусства
- Фанфик
- Авто и ПДД
- Военное
- Отраслевые издания
- Гиды, путеводители
- Зарубежная образовательная литература
- Военная история
- Цитаты из афоризмов
- Современная литература
- Великолепные истории
- Начинающие авторы
- Современная зарубежная литература
- Боевые искусства
- Изобразительное искусство, фотография
- Кино
- Литература 19 века
- Недвижимость
- Музыка, музыканты
- Готические новеллы
- Истории из жизни
- Культура и искусство
- Спецслужбы
- Зарубежная прикладная литература
- Музыка, танцы
- Подростковая литература
- Прочее
- Военная техника, оружие
- Газеты и журналы
- Периодические издания
- Домоводство, Дом и семья
- Любовные романы
- Экономическая литература
- Научные и научно-популярные книги
- О животных
- Биохимия
- Культурология
- Юриспруденция
- Политика
- Психотерапия
- Языкознание
- Научпоп
- Медицина
- Психология, личное
- Радиотехника
- Филология
- Педагогика
- Образовательная литература
- Деловая литература
- Физика
- Науки: разное
- Химия
- Воспитание детей, педагогика
- Детская психология
- Зарубежная публицистика
- Биология
- Архитектура
- Зарубежная психология
- Науки о космосе
- Социология
- Математика
- География
- Беременность, ожидание детей
- Литературоведение
- Транспорт, военная техника
- Обществознание
- Зоология
- География
- Альтернативная медицина
- Иностранные языки
- Ветеринария
- Рефераты
- Астрология
- Биофизика
- Экология
- История Европы
- Учебники
- Шпаргалки
- Государство и право
- Ботаника
- Религиоведение
- История
- Техническая литература
- Прочая научная литература
- Психология
- Детективы и Триллеры
- Справочная литература
- Проза
- Новелла
- Юмор
- Проза
- Историческая проза
- Русская современная проза
- Советская классическая проза
- Повести
- Очерки
- Эссе
- Рассказы
- Зарубежная современная проза
- Сентиментальная проза
- Зарубежная классика
- Афоризмы
- Эпистолярная проза
- Феерия
- Семейный роман/Семейная сага
- Разное
- Антисоветская литература
- Магический реализм
- Русская классическая проза
- Современная проза
- О войне
- Контркультура
- Классическая проза
- Поэзия, Драматургия
- Детская литература
- Детская фантастика
- Детские остросюжетные
- Детские стихи
- Детские приключения
- Внеклассное чтение
- Учебная литература
- Зарубежные детские книги
- Бизнес
- Загадки
- Книги для подростков
- Школьные учебники
- Детский фольклор
- Книги для дошкольников
- Детские детективы
- Детская познавательная и развивающая литература
- Буквари
- Прочая детская литература
- Сказка
- Детская проза
- Детская образовательная литература
- Юмор
- Документальные книги
- Бизнес
- Внешнеэкономическая деятельность
- Тайм-менеджмент
- Кадровый менеджмент
- О бизнесе популярно
- Управление, подбор персонала
- Бизнес
- Менеджмент и кадры
- Продажи
- Экономика
- Ценные бумаги и инвестиции
- Малый бизнес
- Делопроизводство, офис
- Корпоративная культура, бизнес
- Банковское дело
- Финансы
- Зарубежная деловая литература
- Ораторское искусство / риторика
- Личные финансы
- Интернет-бизнес
- Поиск работы
- Государственное и муниципальное управление
- Бухучет и аудит
- Работа с клиентами
- Менеджмент
- Краткое содержание
- Личная эффективность
- Переговоры
- Приключения
- Старинная литература
- Религия и духовность
- Компьютеры и Интернет
- Блог
Читаем без скачивания Программное обеспечение и его разработка - Фокс Джозеф М.
Шрифт:
Интервал:
Закладка:
Из рис. 4.16 очень хорошо видно, что основную часть памяти машины занимают системные программы, управляющие работой этой машины и ее внешним окружением.
На большинстве машин программы пишутся таким образом, чтобы они соответствовали действующей операционной системе, работали именно в ней, выполнялись совместно с ней. Программисты, работающие в какой-то фирме, разрабатывают и пишут программы выдачи платежных ведомостей фирмы. Когда работает программа составления платежной ведомости, одновременно с ней работает операционное и другое системное программное обеспечение.
Рис. 4.16. Схема распределения памяти в фазе использования. В самом начале процесса выполняется операционная система, которая определяет вид работы, сообщает операторам, какие ленты и куда надо поставить и т. д. В дальнейшем начинает выполняться собственно программа печати ведомости. Если возникает прерывание (например, встречается ошибка), управление опять передается операционной системе, которая обрабатывает ошибку, а затем возвращает управление программе печати.
Но этот пример слишком прост. Очень часто бывает так, что в одно и то же время в памяти машины размещается несколько, а то и несколько десятков различных прикладных заданий.
В случае мультипрограммирования операционная система управляет одновременно работой дюжины прикладных программ, распределяет между ними все ресурсы машины, доводя до максимума просто «работу» — работу, выполняемую за определенное время. Подробнее этот вопрос будет изучаться в гл.7.
Плохая операционная система может обесценить сколь угодно хорошую аппаратуру, в то время как хорошая система может спасти и плохую. Часто системные программы оказываются медленными просто из-за того, что им приходится разбираться с огромным количеством возможных пользователей, данных и т. д., а для этого нужны тысячи и даже миллионы команд. Иногда они бывают медленными, потому что плохо разработаны или плохо скомпонованы.
Стандартное и нестандартное системное обеспечение. Существуют две группы задач — для одних используется стандартное системное обеспечение, а для других нет. В операционные системы и системы управления базами данных уже вложено столько денег и усилий, что их нужно использовать везде, где только возможно. Писать новые программы для выполнения их функций очень разорительно.
В то же время существует часть пользователей вычислительных машин, которые обязаны создавать свои собственные системные программы, — это пользователи систем реального времени типа V. Необходимость выполнить цикл вычислений за определенное время — миллисекунды в оборонных системах, системах гражданской авиации и NASA или секунды в системах резервирования, — а также необходимость высокой надежности делают невозможным использование стандартного программного обеспечения. Поэтому многие пользователи систем реального времени должны создавать обеспечение сами.
Системные программы индивидуального пользования пишутся довольно часто. Иногда такие системные программы могут применяться более чем одним пользователем. Разработанная фирмой IBM для резервирования авиационных билетов операционная система PARS (или АСР) используется более чем двумя десятками авиакомпаний и несколькими банками. Создание системы PARS было обусловлено тем фактом, что система ОС/360 оказалась слишком большой и медленной.
Система диспетчеризации воздушного транспорта, управляющая рейсовым авиационным транспортом, была написана один раз, а используется в 20 авиапортах Соединенных Штатов и в одном из авиапортов Великобритании. ОС/360 не смогла обеспечить необходимую надежность и подходящую схему распределения ресурсов; пришлось FAA (Federal Aviation Agency) (с помощью отделения федеральных систем IBM) писать собственные системные программы.
Такая необходимость писать специализированное системное обеспечение является одной из причин высокой стоимости и трудоемкости больших программных систем типа V.
Не так давно сразу в двух разных книгах я встретил утверждение о том, что вычислительные машины не сбиваются при работе. Это явно абсурдное утверждение; конечно же, у них бывают сбои. Все электронные устройства подвержены сбоям.
Один из авторов пытался утверждать, что оправдание типа «произошел сбой вычислительной машины» представляет собой не более чем мошенничество; ошибка обычно заключена в процедурах или командах программ.
Хотя я согласен, что фраза «виновата машина» просто отговорка, но все же утверждение, что у машин не бывает сбоев, представляется слишком вредным, особенно в книге вводного характера.
Поскольку руководство знает, что вычислительные машины все же выходят из строя, оно должно позаботиться о том, чтобы включать процедуры проверки функционирования. Любой «сбой машины» означает недостаточно квалифицированное руководство, поскольку оно не обеспечило достаточно надежную защиту системы с помощью как программного, так и аппаратного контроля.
Для обеспечения правильного, своевременного и бесперебойного выполнения задачи руководство вольно выбирать либо стандартное, либо изготовленное специально программное обеспечение. Сегодня такой выбор вполне возможен.
От пакетного режима к режиму реального времени. Переход от пакетной обработки к работе в режиме реального времени не требует слишком больших переделок прикладных программ и их логики. Баллистические траектории остаются баллистическими траекториями. А вот реорганизация системных программ действительно необходима.
Очень часто эта капитальная реорганизация не предусматривается заранее, что приводит к ужасным последствиям. Люди думают, что если они отладили свои программы в пакетном режиме, то сам переход к режиму реального времени не составит для них затруднения. Графики перехода не разрабатываются, сметы с затратами не составляются.
В системах реального времени основным фактором является само время. В пакетных системах данные, например данные от радиолокационных станций, собранные на магнитной ленте, сначала вводятся в машину, а затем обрабатываются в ней. Как только будут обработаны все данные, случись это через 24 ч. или даже через неделю, машина закончит свою работу. Время при этом не принимается во внимание.
В системах же реального времени данные радиолокаторов должны быть обязательно обработаны не более чем, скажем, за 6 с, иначе система утеряет часть жизненно необходимых ей данных. Это обязывает операционную систему вести распределение работ таким образом, чтобы обеспечить обработку всех данных именно за 6 с. И точка! И конечно же, нужно иметь программы, обеспечивающие достаточную надежность (возврат и восстановление).
Переход от хорошей пакетной системы к системе реального времени — это переход к новым концепциям.
Преимущества системного программного обеспечения
1. Системное программное обеспечение увеличивает модульность и улучшает защиту информации, значительно упрощая процесс внесения изменений в программы.
2. Системное программное обеспечение избавляет прикладных программистов от необходимости затрачивать большие усилия на сопровождение стандартных программ.
3. Уменьшая простои, системное обеспечение доводит до максимума использование аппаратуры.
4. Исключая дублирование информации во внешних файлах, системное программное обеспечение лучше использует память.
Недостатки системного программного обеспечения
1. В силу универсальности системных программ снижается скорость их выполнения по сравнению со специализированными системами.
2. Системные программы велики, сложны, их часто трудно использовать надлежащим образом.
3. Системное программное обеспечение не всегда обладает гибкостью, достаточной, чтобы удовлетворять всем индивидуальным требованиям.
Таблица 4.5. Эволюция системного программного обеспечения