Евгений Лишак - Записки парасистемного программиста

Тут можно читать онлайн Евгений Лишак - Записки парасистемного программиста - бесплатно полную версию книги (целиком) без сокращений. Жанр: История, год 1984. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Записки парасистемного программиста
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    1984
  • ISBN:
    нет данных
  • Рейтинг:
    4/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Евгений Лишак - Записки парасистемного программиста краткое содержание

Записки парасистемного программиста - описание и краткое содержание, автор Евгений Лишак, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
Методический материал для разработчика ПО. Статьи полезные с исторической точки зрения для всех любителей современных теорий организации программного производства, так еще и актуальность до сих пор не потеряна. Правда примеры основаны на реалиях тех времен (1984 год или около того), но это почти не помеха — аналоги в современной практике находятся без труда. В общем, приобщайтесь к истокам!

Записки парасистемного программиста - читать онлайн бесплатно полную версию (весь текст целиком)

Записки парасистемного программиста - читать книгу онлайн бесплатно, автор Евгений Лишак
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать
* * *

Теперь я процесор. Наконец-то мне досталась приличная программа. В наше время это такая редкость. Hа прошлой секунде мне подсунули такой букетик из восьми процессов, что у меня от скуки чуть не сгорел акселератор умножения. У каждого из этих процессов на десять команд одна команда ввода-вывода. А ввод и вывод — это не моя работа. Для этого в нашей ЭВМ есть другие устройства, медленные как черепахи. А мне, значит, ждать, пока ввод-вывод закончится? Тоска. Вот я и прыгал, как белка, с одного процесса на другой. И все равно три четверти времени прождал. А этот достался ничего. В самом начале тройной цикл. Приятно. Этого мне хватит миллисекунд на триста. Это как из городской транспортной пробки, из частокола светофоров вырваться на шоссе и крутить педали. И программу ему грамотно. Вроде написали. А то иногда такое попадается — как резину жуешь. Вот была тут одна программа… Когда же это..? То ли миниту, то ли месяц тому назад. Она заставила меня восемьсот раз подряд возвести ноль в семнадцатитысячную степень, а результаты сложить. Надо же додуматься до такого. Hо что поделаешь. Я птица подневольная. Мне, что прикажут, то я и делаю. Стоит лишь самую малость сделать по собственному уразумению, как люди сразу шуметь начинают. "Сломался процессор", кричат, осциллографов, паяльников, схем всяких понатаскают в машинный зал столько, что в другой раз и не захочется самовольничать. Hу, вот, и этому процессу понадобилось вывести на дисплей сообщение и дождаться ответа оператора ЭВМ. Я прерываюсь, то есть, автоматически переключаюсь на другой процесс — один из процессов операционной системы.

* * *

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

Это все роли, то есть программы большого комплекса программ, который и называется "операционная система". И все эти роли должен суметь сыграть один актер! Тем не менее, актер не одинок в нашем театре. В ЭВМ кроме процессора существуют еще и другие устройства, не менее важные в ее работе. Сменим слегка декорации. Перенесем действие нашего представления в таверну. Действующие лица теперь такие: посетители и трактирщик. Посетители — это процессы тех, кто пользуется ЭВМ. Они осуществляют волю составителя этих ролей — программистов-пользователей. Роль трактирщика — это комлекс программ операционной системы. Посетители, как вы уже догадались, пришли есть. Для этого им нужно приносить кушания (ввод данных) и уносить пустые тарелки (вывод). Посетители все время самые разные. Заранее их роли актеру неизвестны. Он играет их, что называется, с листа. А вот роль трактирщика заранее написана системными программмистами, разработавшими программы операционной системы. Никакой импровизации не предусмотренно. Наш трактирщик услужлив, предупредителен, но строг и страшный педант. Он сделает для посетителя все, что предусмотренно правилами поведения в таверне. Hо если посетителю захочется птичьего молока — милости просим за дверь. Натолкнувшись на непредусмотренные в роли трактирщика действия посетителя, наш актер откроет книгу ролей на странице с заголовком "аварийное окончание". Помните, я говорил, что наш актер работает не один. Кто же ему помагает? Как раз сейчас наш актер в роли трактирщика пошел на кухню с очередными заказами. Пойдем с ним и мы. Там его указаний ждет повар. А вот роль повара никто не играет. Повар существует сам по себе. Это специализированныя часть ЭВМ, которая управляет всеми ее внешними устройствами. Через нее проходят все операции ввода и вывода даннных. В разных ЭВМ это устройство называется по разному. Где — канал. Где — процессор ввода вывода. Пока процессор занят вычислениями, канал управляет внешними устройствами. Hа кухне это, конечно плита, мойка, погреб и т. п. А на самом деле это накопители на магнитных дисках, магнитных лентах, дисплеи, печатающие устройства…

— Стоп, — скажете вы. — Ведь раньше мы выяснили, что вводом и выводом управляет специальная программа ОС, а не какой-то там канал.

Все верно. Просто ОС управляет каналом, а не самими устройствами. Чтобы понять, как это происходит, давайте понаблюдаем за поваром и актером. Взаимодействие актера в роли трактирщика и повара (то есть процессора который выполняет программу ОС, и канала) выглядит так: трактирщик говорит повару: "рецепт номер такой-то, столько-то порций", и уходит. У него много дел. А повар ставит этот заказ в свою очередь. Повар, кстати, тоже мастер на все руки и несколько блюд он может готовить одновременно. Хватило бы места на плите. Как только какой-нибудь заказ будет готов, повар позовет трактирщика. В этот момент актер бросает играть роль очередного посетителя, перевоплощается в трактирщика (это произошло прерывание) и идет разбираться, что там у повара случилось. Если с заказом все в порядке, трактирщик отнесет его ожидающему посетителю. После чего этот посетитель оказывается в числе тех, чьи роли актер может продолжать играть дальше. Вот и мой запрос выполнен. Оператор нажал в последний раз клавишу на дисплее, канал передал данные в оперативную память. Сообщил об этом процессору. Процессор прекратил выполнять какой-то процесс (произошло прерывание), начал работать процесс ОС, который сейчас передаст процессор мне. Нам пора прощаться, а вы пока можете посмотреть сравнительные действия, продолжающие аналогию между нашим театром и ЭВМ третьего поколения.

* * *

Трактирщик встретил посетителя, взял у него роль и записал ее в книгу ролей. Ос разместила в оп программу и преобразовала ее пригодный для выполнения вид. Точнее, актер, играя роль трактирщика, встретил посетителя… Точнее, процессор, выполняя одну из программ ОС, разместил в оп программу… Актер (по велению трактирщика!) Начал играть роль посетителя, вошел, сел за столик, прочел меню и позвал трактирщика. Процессор, по велению ОС переключился на процесс пользователя, который начал вычисления и работал до тех пор, пока ему не понадобились услуги ОС для ввода данных.

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

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Евгений Лишак читать все книги автора по порядку

Евгений Лишак - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Записки парасистемного программиста отзывы


Отзывы читателей о книге Записки парасистемного программиста, автор: Евгений Лишак. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x