Понятие операционных систем (40-е – 60-е годы 20 века).



Принято выделять исторические поколения операционных систем, приведенные ниже.

  • Нулевое поколение. В первых компьютерах операционные системы отсутствовали. Это период с момента появления первых компьютеров по середины 50-х годов XX века.
  • Первое поколение. Пакетная обработка, мультипрограммные операционные системы. Появились в середине 50-х годов XX века.
  • Второе поколение. Многорежимные операционные системы, операционные системы реального времени. Появились в середине 60-х годов XX века.

 

Интенсивное создание различных моделей ЭВМ относится к началу 50-х годов прошлого века. В эти годы одни и те же группы людей участвовали и в проектировании, и в создании, и в программировании, и в эксплуатации ЭВМ. Программирование осуществлялось исключительно на машинном языке (а затем на ассемблере), не было никакого системного программного обеспечения, кроме библиотек математических и служебных подпрограмм. Операционные системы еще не появились, а все задачи организации вычислительного процесса решались вручную каждым программистом с примитивного пульта управления ЭВМ.

В конце 50-х годов прошлого века ведущие фирмы изготовители поставляли операционные системы со следующими характеристиками:

• пакетная обработка одного потока задач;

• наличие стандартных программ ввода-вывода;

• возможности автоматического перехода от программы к программе;

• средства восстановления после ошибок, обеспечивающие автоматическую "очистку" компьютера в случае аварийного завершения очередной задачи и позволяющие запускать следующую задачу при минимальном вмешательстве оператора;

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

 

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

Основные понятия и определения ИСИС: программа, пользователь, задача, условное деление программ на небольшие (простые) и большие.

Программа (program) – это последовательность команд, реализующая алгоритм решения задачи. Программа может быть записана на языке программирования, в этом случае она хранится на диске в виде текстового файла с расширением, соответствующим языку программирования. Также программа может быть представлена при помощи машинных команд; тогда она хранится на диске в виде двоичного исполняемого файла. Исполняемый файл генерируется из текста программы при компиляции.

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

Задача (problem, task) – проблема, подлежащая решению в интересах пользователя.

Термин “задача” в программировании означает единицу работы вычислительной системы, требующую выделения вычислительных ресурсов (процессорного времени, оперативной и внешней памяти, файлов и т.п.).

Условное деление программ на небольшие (простые) и большие.

Принято (весьма условно) делить программы на небольшие (простые), средней сложности и большие.

Программа считается “небольшой”, как по размерам, так и по другим признакам, если она удовлетворяет следующим признакам:

1) решает одну четко поставленную задачу в хорошо известных ограничениях, к тому же, не очень существенную для какой-либо практической или исследовательской деятельности;

2) неважно, насколько быстро она работает;

3) ущерб от неправильной работы программы практически нулевой (за исключением возможности обрушения ею системы, в которой выполняются и другие, более важные задачи);

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

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

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

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

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

2) существенно, чтобы программа была удобной в использовании. В частности, она должна включать достаточно полную и понятную пользователям документацию, возможно, также специальную документацию для администраторов, а также набор документов для обучения работе с программой;

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

4) неправильная работа программы наносит ощутимый ущерб пользователям и другим организациям и лицам, даже если сбои происходят не слишком часто;

5) для выполнения своих задач программа должна взаимодействовать с другими программами и программно-аппаратными системами и обеспечивать работу на разных платформах;

6) пользователи, работающие с программой, приобретают дополнительные выгоды от того, что программа развивается, в нее вносятся новые функции и устраняются ошибки. Необходимо наличие проектной документации, позволяющей развивать ее, возможно, вовсе не тем разработчикам, которые ее создавали, без больших затрат на обратную разработку (реинжиниринг);

7) в разработку программы вовлечено значительное количество людей (более 5-ти человек). Большую программу практически невозможно написать с первой попытки, с небольшими усилиями и в одиночку;

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

Примером большой программы может служить стандартная библиотека классов Java или C#, соответствующих систем программирования.


Дата добавления: 2019-07-15; просмотров: 262; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!