«Операционные системы: зачем они инженеру»

Подвигло меня к написанию этого материала публикация «История языков программирования: как Fortran позволил пользователям общаться с ЭВМ на «ты».

И тут я вспомнил, что почти 30 лет назад я вел рубрику «ИНЖЕНЕР И КОМПЬЮТЕР» в журнале «Техника и наука». Первой публикацией в этой рубрике была статья в №7 журнала с названием «Операционные системы: зачем они инженеру». И этой статье говорится о том, что именно операционные системы позволяют перейти на «ты» с ЭВМ. Но одно другому не противоречит. Перечитав статью, я понял, что за 30 лет она не потеряла своей актуальности, но при этом позволяет взглянуть, что же происходило 30 лет назад в нашей стране в области информатизации, когда еще не было Linux, но был UNIX/ЮНИКС и уже был MS/DOS, и оправдались ли надежды. Мне кажется, что страна опять наступает на грабли: тогда это было ЕС ЭВМ от IBM, а сегодня MS Windows от Microsoft. Что еще примечательно? Иллюстрировал эту серию мой коллега Блажнов В.Ю. Ниже предлагается материал этой статьи без купюр вместе с иллюстрациями.

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

Г.Р. Громов, (Национальные информационные ресурсы: проблемы промышленной эксплуатации. М., Наука, 1985, с. 166).

СЕГОДНЯ мы открываем рубрику «Инженер и компьютер». Первая, вводная, статья — о системе ЮНИКС. У читателя могут возникнуть вопросы: почему операционные системы, а не устройство современных ЭВМ, почему операционные устройства, а не языки программирования? И наконец, почему система ЮНИКС, а не любая другая! Попытаемся ответить.

С 1949 года, когда заработала первая электронно-вычислительная машина с запоминаемой программой, и до наших дней ЭВМ сделали поистине грандиозный скачок.

На первые ЭВМ, так же как и на первый самолет братьев Райт, люди смотрели как на чудо. А сегодня говорят о наступлении «компьютерной эры», звучат серьезные предупреждения о том, что если специалист не будет обучаться компьютерной грамотности, то он отстанет от жизни, не получит продвижения по службе. Становится привычным, что на рабочем столе инженера мы видим либо дисплей, подключенный к большой ЭВМ, либо персональную ЭВМ (ПЭВМ), которые служат то пишущей машинкой, то суперкалькулятором, то информационно-справочной системой, то кульманом, то средством управления экспериментальной установкой. В такой промышленно развитой стране, как США, один терминал сегодня приходится на 10 работающих, для пользователей ЭВМ фирмы ИБМ это число составляет 6, а в самой фирме ИБМ один терминал имеют в среднем два сотрудника.

С появлением на рынке ПЭВМ насыщенность ЭВМ становится еще более высокой. В ведущих фирмах США на одного научно-технического сотрудника приходится уже 1,5 дисплея или ПЭВМ. Руководители фирм считают дисплей на столе инженера необходимым предметом оргтехники, так же нужным, как телефон.

В нашей стране эти цифры пока не столь впечатляющи, однако подготовка к этапу широкомасштабного внедрения ЭВМ во все сферы жизни должна вестись уже сейчас: в школах, высших и средних специальных учебных заведениях, на производстве, на курсах повышении квалификации. За годы двенадцатой пятилетки выпуск средств вычислительной техники в нашей стране увеличится в 2,3 раза, только в вузах будет создано около 130 тыс. рабочих мест, оборудованных ПЭВМ и дисплеями.

Какими же знаниями о вычислительной технике должен обладать современный инженер? Здесь уместно сравнение ЭВМ с автомобилем. Легковые автомобили покупают миллионы людей, и большинство из них порой имеют самые общие сведения о машине, только те, которые нужны при покупке: максимальная скорость, мощность двигателя, вместимость салона, расход горючего и т. п.

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

Продолжим аналогию между автомобилем и ЭВМ. Для того чтобы человек смог ездить на автомобиле, он должен изучить правила вождения и правила дорожного движения. Не зная правил вождения, вы не тронетесь с места, а езда без знания и соблюдения правил дорожного движения может привести к аварии.

Аналогичные правила должен знать и любой человек, начинающий работу с ЭВМ. ЭВМ — это сложная техническая система, состоящая из ряда функциональных элементов — логических, запоминающих, индикационных и других. ЭВМ не могут осуществить связь и обмен информацией с дисплеем и другими внешними устройствами, ввести и выполнить необходимые программы.

Вычислительным машинам, так же как и автомобилю, кроме «мотора» (центрального процессора), требуется «рулевое управление», которое обеспечило бы согласованное функционирование их узлов и дало возможность использовать их человеку. Такое «рулевое управление» для ЭВМ — операционные системы (ОС) — одно из самых выдающихся достижений в области вычислительной техники, которое позволило по-новому взглянуть на возможности и сферу применения вычислительных машин. Операционные системы сегодня неотделимы от ЭВМ, они являются ее естественным продолжением, и порой бывает трудно определить, где кончается машина и где начинается операционная система.

Операционные системы разрабатываются системными программистами и представляют собой организованную совокупность программ, реализующих сложные алгоритмы управления функционированием ЭВМ. Эти программы, по сути дела, скрывают от пользователя всю сложность вычислительных машин. Для работы с машиной достаточно знать возможности ОС, предоставляемые пользователю в виде некоторого языка взаимодействия с ней. Сразу оговоримся, что языки взаимодействия с ОС и языки программирования не имеют между собой ничто общего. Язык взаимодействия с операционной системой — это просто набор команд.

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

Перечень этих команд операционной системы и составляет «правила вождения» вычислительной машины, а правила и особенности их применения — «правила дорожного движения» в системе. Без знаний первых вы не сможете работать с ЭВМ, а несоблюдение вторых может привести к „аварии“, например, уничтожению очень нужной вам программы. Сразу оговоримся, что целью нашего семинара не является изучение того, как устроена ОС, это является прерогативой системных программистов. В рамках серии последующих публикаций мы будем вести речь о том, какие возможности предоставляет операционная система пользователю и как их применять на практике.

Но почему все же операционная система, а не просто языки программирования высокого уровня? Здесь несколько причин. Сегодня, спустя почти 40 лет после начала эксплуатации ЭВМ, когда во всех вузах, а теперь и в школах, дают основы информатики и вычислительной техники и в первую очередь учат программированию хотя бы на одном из языков высокого уровня, когда в стране действует широкая сеть курсов по обучению искусству программирования, когда массовыми тиражами и различными издательствами выпускается литература по программированию, когда чуть ли не в каждом издаваемом журнале введена рубрика, в рамках которой ведется обучение программированию, когда принята национальная программа по обеспечению всеобщей компьютерной грамотности, трудно представить себе инженера, который не знал хотя бы одного языка программирования высокого уровня или не имел бы дома соответствующей литературы (хотя бы у детей или внуков).

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

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

image К таким средствам ОС можно отнести редакторы текстов, с помощью которых легко и просто готовить, корректировать и размножать различные документы; электронную почту, посредством которой вы можете обмениваться информацией с другими пользователями; так называемые файловые системы и системы управления базами данных, на основе которых вы сможете построить информационно-поисковые системы, и ряд других. Даже не умея программировать, вы можете использовать в своей работе готовые программы. Но и здесь не обойтись без знания ОС: как ввести программу в память машины, как ее выполнить, где и как подготовить для нее исходные данные, где и как сохранить результаты счета, — все это «рычаги управления» современной вычислительной машины.

И наконец, почему система ЮНИКС? До последнего времени для каждого типа ЭВМ разрабатывались собственные операционные системы: ОС РВ для СМ ЭВМ, ДОС ЕС и ОС ЕС для ЕС ЭВМ, MS/DOS и СР/М для ПЭВМ, — имеющие различные языки взаимодействия, запросы на выполнение системных функций, директивы ввода-вывода, то есть у разных вычислительных машин были свои «рычаги управления». Если учесть, что смена поколений ЭВМ происходит каждые 5—7 лет, что инженеру приходится обращаться за помощью как к большой, так и к персональной ЭВМ, что у инженера может быть накоплена большая библиотека программ (например, имитационного моделирования), которую он хотел бы использовать на любой ЭВМ и сохранять при переходе на новую машину, то понятно, какой ужас его охватывает при виде такого многообразия машин, и самое главное — операционных систем. Часто даже в том случае, когда несколько ОС предназначены для машин одного и того же типа, они имеют существенные различия в языке взаимодействия пользователя с системой.

Все это приводило (да и сейчас часто приводит) к тому, что даже профессиональному программисту при переходе с одной системы на другую требуется серьезная переподготовка. Еще большие накладные расходы связаны с переносом пользовательских программ, без которых уже невозможна нормальная работа инженера, в новую ОС.

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

imageДолжна была появиться мобильная операционная система, функционирующая на всех типах ЭВМ — больших и персональных — и имеющая унифицированный язык взаимодействия. Такой ОС в настоящее время стала система ЮНИКС, которая с начала 8О-х годов уверенно выходит по числу приложений на уровень «стандарта-де-факто» мировой индустрии ЭВМ в целом. В Японии, например, система ЮНИКС рассматривается как основной претендент а качестве стандартной операционной системы для ЭВМ пятого поколения.
Совместимые с системой ЮНИКС операционные системы созданы или создаются и в нашей стране. Это инструментальная мобильная операционная система ИНМОС для СМ ЭВМ, мобильная операционная система МОС для ЕС ЭВМ, диалоговая мобильная единая операционная система ДЕМОС для СМ ЭВМ, ЕС ЭВМ и ПЭВМ. В двенадцатой пятилетке мобильные операционные системы типа ЮНИКС будут реализованы для всех типов и классов отечественных ЭВМ.

Таким образом, созданы предпосылки для того, чтобы пользователь, освоив унифицированное «рулевое управление», а точнее, язык взаимодействия с системой ЮНИКС, мог успешно работать на различных ЭВМ, безболезненно переходя от одной машины к другой.

Однако объяснять феномен системы ЮНИКС только необходимостью стандартизации было бы не совсем верным. Как правило, операционные системы создаются большими коллективами профессиональных программистов, которые далеки от проблем рядовых пользователей ЭВМ, поэтому их в первую очередь заботит, как бы «выжать» максимум возможностей из ЭВМ, а в последнюю — нужны ли эти возможности пользователю и как он эти возможности будет применять.

Удачным исключением из этого правила стала операционная система ЮНИКС, которая с самого начала в отличии от других систем проектировалась с учетом потребностей рядового пользователя. Не последнюю роль в простоте и обозримости системы ЮНИКС сыграло то, что в ее разработке, по сути дела участвовало два человека. Учет накопленного опыта, а также ряд новых и плодотворных идей позволили авторам создать принципиально новую ОС, которая в полной мере отвечает принципу «все гениальное просто». Она стала антиподом операционной системы OS/360 (читай ОС ЕС), которая для многих системных программистов, не говоря уже о рядовых пользователях, осталось «вещью в себе» из-за эклектичности и громоздкости. Несмотря на то что ОС ЮНИКС, как и любая другая ОС, является сложной программной системой, ее часто называют «системой для домохозяек» — настолько прост язык взаимодействия с ней.

ОСНОВНОЙ режим работы системы ЮНИКС — диалог. В отличие от традиционных систем (типа ОС ЕС) в системе ЮНИКС вы не найдете языка управления заданиями, который создавал дополнительные трудности для инженера на его тернистом пути к освоению ЭВМ.

Для использования ОС ЮНИКС в повседневной работе вам не обязательно владеть каким-либо языком программирования, система располагает широким спектром программ общего назначения (утилитами), которые могут оказать вам существенную помощь. Освоив «рулевое управление» системы, вы получите в ее лице хорошего помощника, который даст возможность разрабатывать, редактировать и размножать различные документы; станет вашим электронным секретарем, ничто не забывающим и вовремя напоминающим о текущих делах; поможет в проведении инженерных расчетов и создании банка данных. Имеющиеся средства ОС ЮНИКС позволят вам обмениваться корреспонденцией с другими пользователями и проводить телеконференции. Для того чтобы начать, работу с системой, достаточно освоить 5—10 простых команд.

Однако в эпоху научно-технической революции инженеру не обойтись и без программирования. Те программы, которые сегодня используются при проектировании новых машин, линий метрополитена, жилых кварталов, управляют технологическим процессом, завтра могут оказаться безнадежно устаревшими: появились более точные методы расчета, новые материалы, изменились требования в градостроении или условия прокладки метро, ученые создали новую технологию. Что делать инженеру в этих условиях? Бежать к программисту, у которого своих дел хватает, долго объяснять ему суть проблемы и в итоге получить программу, которая делает совсем не то, что требуется инженеру? И все это притом, что на столе инженера стоит «умная» ПЭВМ, которая поможет ему написать и отладить программу.

СЕГОДНЯ проходит то время, когда программирование было прерогативой профессионалов, когда инженера отделяла от ЭВМ спина программиста. И здесь можно провести аналогию с автомобилем. Представьте себе ситуацию, когда каждый владелец автомобиля нанимает себе профессионального водителя. Вы скажете: «Абсурд!».

image А не абсурд, имея под рукой ЭВМ, зная четко постановку задачи, обращаться к человеку, далекому от вашей проблематики? Система ЮНИКС и здесь окажет неоценимую услугу инженеру. Она включает в свой состав системы программирования на языках Си, Фортран и Паскаль и располагает простыми и удобными средствами подготовки и отладки программ.

Мы надеемся, что курс по изучению ОС ЮНИКС поможет вам углубить знания в области вычислительной техники и успешно применять их на практике. В рамках курса мы будем ориентироваться на отечественную мобильную операционную систему МО С ЕС.

В цикле публикаций планируется рассмотреть вопросы, связанные с организацией взаимодействия пользователя с системой, подготовкой документов, созданием информационно-справочным систем, электронной почтой, программированием на языках Фортран, Паскаль и Си. Предполагается также рассмотреть вопрос переноса ранее разработанных вами программ на языках Фортран и Паскаль для ОС ЕС в систему ЮНИКС для дальнейшего их использования.

В. ОРЛОВ, кандидат технических наук, старший научный сотрудник

Вот и все. Так что же принципиально изменилось в нашем миреза эти 30 лет!
P.S. Небольшой экскурс в историю можно совершить здесь.
Метки:
Поделиться публикацией
Комментарии 26
  • +1
    Спасибо за исторический, экскурс, все так и есть.
    А другие материалы этой серии из 'Техника и наука' сохранились?
    • +3

      Вам спасибо. Да, есть еще несколько номеров. Прилагаю обложку №7 за 1987 год, именно того номера где и была опубликована статья.
      • +1
        Без купюр и с иллюстрациями, говорите.

        Самая первая иллюстрация:
        image

        Бросается в глаза сочетание нашивки с флагом России и 1987 год.

        «Прилагаю обложку №7 за 1987 год, именно того номера где и была опубликована статья»
        «P.S. Небольшой экскурс в историю можно совершить здесь

        Идем в «здесь». Смотрим фото «На отдыхе»:
        image
        Затем на фото «Отдел образца 1996 года»:
        image

        О чудо! Человек в нижнем ряду по середине за 10 лет не постарел ни грамма )
        • 0
          Не только за 10, но и 30 лет. Чудеса бывают. А так было бы лучше?
          image
          • +1
            Так было бы правдоподобнее.
            • –1
              А что было бы правдоподобнее-то?
              • +3
                То что Вы попытались скрыть затирая нашивку с флагом России на рукаве у человека на первой иллюстрации?

                З.Ы. Хабр не обманите, хабр в комментариях помнит изображение, которое было до редактирования публикации )
                • 0
                  Судя по минусу поставленному Petrovi4_UA — у пойманного на фальсификации не хило бомбануло!

                  PS наличие фальсификации вызывает вопрос: а была ли вообще эта статья в Технике Молодёжи или статья — тоже бесстыдная и наглая подделка?
                  • 0
                    Не «Техника Молодёжи», а «Техника и наука».
                  • –1
                    А зачем обманывать? Это же история. Спасибо за урок.
                  • –1
                    Аутентичнее!
                    А то что на иллюстрации, исторические реконстуркторы назвзавали бы гоблином и марисанином.
                    Потому что это как фильм про ВОВ в котором советские солдаты бегали бы с Калашниковами вместо Мосинки и ППШ.
                    • –1
                      Это не историческая реконструкция. Картинки — это иллюстрации прошлого. От того, что в фильме солдаты защищают Родину с Калашниковым, если это фильм настоящий, историческая правда от этого о Советских солдатах, их духе, их подвиге не становится менее значимой. А мальчишки, которые смотрели и смотрят эти фильмы, смотрят на Человека, его поступки и т.д.
                      • 0
                        Текст «из журнала Техника Молодёжи» — Вы тоже сами сочинили? А то мало-ли «историческая правда от этого о Советских солдатах, их духе, их подвиге не становится менее значимой» © saipr
                        • 0
                          Есть известная мудрость «Единожды солгавши, кто тебе поверит». И очень грусто, что человек моего возраста прибегает к подобным оправданиям в стиле «Важны не факты а их интерпретация».
                          Если Вы излагаете недостоверный факты и Вас легко на этом поймать, но Ваши интерпретации будут выглядеть неубедительно.
                          • –1
                            Ну и еще по тексту — я помню 1985 год и в то время статья, опубликованная в периодическом издании, должна была начинаться с ритуальной фразы «Как было отмечено в решениях ХХ Пленума ЦК КПСС и в выступлении Генерального Секретаря ЦК КПСС тов.ХХХХХХ, развитие электроники является важной составной частью всемерного ......». Вы ее опустили, по моему зря, хорошо передало бы дух эпохи.
                            • –1
                              Отсутствие подобных фраз в тексте — вызывает обоснованные сомнения, что текст не такая же фальсификация как и иллюстрации к ней.
                • 0
                  Честно говоря, я не понял для чего эта статья на хабре.
                  При всём уважении.
                  • +1
                    В итоге имеем.
                    Статья на хабре по истории программирования и вычислительной техники опубликована не на основании интерпретации исторических материалов теми, кто по объективным причинам не может знать, как обстояло дело в 1970-80-е гг., а непосредственным участников событий.
                    Хорошо это или плохо? Из чьих рук мы можем получить более достоверные факты? Много ли остается людей «в строю», которые помнят, как выглядели СМ, ЕС и каково с ними было работать?
                    Можно еще на всякий случай взглянуть на «послужной список» Владимира Николаевича Орлова, чтобы объективно составить мнение о том, является данный материал фальсификацией или нашей общей историей.
                    Опять же интересный факт — тот, кто «поймал за руку», обратил внимание на шеврон военнослужащего, а не на то, что в 1987 году не существовало в природе подобных системных блоков, клавиатур, мониторов и принтеров.
                    Да, иллюстрация 1987 г. несколько неуклюже заменена на более современное (но опять же на сегодняшний день историческое) фото. Да, когда ты первый раз делаешь публикацию на социально-профессиональном ресурсе, сложно безупречно вести полемику, и это не зависит от возраста.
                    Я бы предложил участникам дискуссии на секунду задуматься о том, что для нас важнее: факты и история или эмоции и единоразовое «yes, я его сделал!»
                    • –1
                      Нету никакого «Я его сделал».
                      Есть доказательство того, что акцентирование внимания на «без купюр» не прошло.
                      Автор мог бы сказать: «Да, для красочности я заменил фото», но он взял и зарисовал шеврон на руке.
                      А вот этот ход уже заставляет задуматься.
                      • +1
                        А меня вот заставило задуматься то, что материалу уже 30 лет и актуальности он почти не потерял. Нам всем кажется, что мы вечные и гениальные… А много ли из того, что мы сегодня делаем и пишем будет иметь смысл, пусть даже не через 30 лет, а лет через 5?
                        • –4
                          То что автор не видит ничего постыдного в фальсификации наводит на подозрение, что материал «актуальности не потерявший», сочинён вчера, а не 30 лет назад.
                          взглянуть на «послужной список» Владимира Николаевича Орлова

                          А откуда известно, что этот «послужной список» не является такой фальшивкой как и сфальсифицированное фото?
                          Если он стёр шеврон, и не видит в этом ничего плохого, то в том чтобы затереть другое имя и поставить своё, он тоже ничего плохого не увидит.
                      • –3
                        Да, иллюстрация 1987 г. несколько неуклюже заменена на более современное (но опять же на сегодняшний день историческое) фото.

                        Да?!
                        А можно я тоже своё студенческое фото фотошопом подправлю так чтобы я был на нём в обнимку с Биллом Гейтсом? А что? Будет тоже «историческое фото», где я 20 лет назад вместе с Биллом Гейтсом тоже 20 лет назад.
                        Я бы предложил участникам дискуссии на секунду задуматься о том, что для нас важнее: факты и история

                        Факты и историю — автор переврал сфальсифицировав, и не считает это постыдным.
                        • +2
                          А можете указать фрагмент текста, который автор изменил, а тем более «Факты и историю», которые «автор переврал сфальсифицировав»? А то получается совсем некрасиво. А фото — ну фото автора, я так понимаю, и что?
                      • +1
                        Распознавание текста?:
                        «взяв с собой фона фонарик»
                        «других. Да¬же не умея»
                        «роль я простоте»
                        «которая я полной»
                        "«вещью в себе""

                        Интересно было почитать про те времена. Как уж тут не вспомнить:

                        "…Одним из примеров громоздкой и, по мнению авторов, бесполезной надстройки является интегрированная система WINDOWS фирмы Microsoft. Эта система занимает почти 1 Мбайт дисковой памяти и рассчитана на преимущественное использование совместно с устройством типа мышь…
                        …Таким образом, читатель уже понял, что среди надстроек над ДОС бывают довольно бесполезные системы, которые только выглядят красиво, а на самом деле отнимают время пользователя, память на дисках и оперативную память ЭВМ. Обманчивая красота таких систем, однако, сильно воздействует на неискушенных пользователей, которые не имели практики работы на машине. Инерция мышления бывает столь сильна, что авторам приходилось наблюдать, как люди, начавшие работать с подобной настройкой, впоследствии с трудом заставляют себя изучать команды ДОС… Хочется предостеречь от этой ошибки читателей…
                        «Персональные ЭВМ в инженерной практике», 1992
                        • 0
                          Да, распознование текста! Спасибо, подправил. А цитата вообще великолепная. Да, сейчас трудно понять как на 4 Кбайтах оперативной памяти ЭВМ М-220 и барабане в 28К можно было, например, организовывать наблюдение за космическим пространством. Как тут не вспомнить таких великих программистов как Михаил Романович Шура-Бура, Владлен Николаевич Лебедев…
                        • 0
                          Да, были люди.

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