Эмуляция и история вычислительной техники. Копирование стартовой системы

Бесплатная программа для отображения поверхности Земли. С её помощью можно виртуально побывать в любом уголке мира. Была презентована компанией Google в 2011 году. Она имеет небольшой размер. Пользователь может скачать Google Earth на компьютер даже с минимальными системными требованиями.

Сегодня благодаря интернету и высоким технологиями каждый человек может побывать в любом уголке нашей планеты. Виртуальные путешествия можно совершать абсолютно бесплатно, всего лишь загрузив небольшую программу. Горные склоны Гималаев, тихая гладь Атлантического океана, пустыня Сахара, густонаселенная Бангладеш — все это доступно из Google Earth для Windows. Эта программа максимально проста и удобна в использовании. Её функционал рассчитан на среднестатистического пользователя. Скачать бесплатно Google Earth рекомендуется каждому, кто хочет увидеть всю красоту нашего мира.

Скачать Google Earth бесплатно

Google Earth для Windows (35,7 МБ)

Google Earth для macOS (85,8 МБ)

Google Earth для Android (8,6 МБ)

Google Earth для iOS (37,2 МБ)

Основные характеристики Google Earth:

  • Уникальный функционал;
  • Простота в использовании;
  • Возможность работы в нескольких режимах;
  • Оперативное обновление карты.

Google Earth на русском языке является уникальной в своем роде программой. Её основное окно заключается в себе 3D модель глобуса Земли. Пользователь может с помощью мышки крутить глобус в любую сторону в поисках своей страны или города. Приближать ту или иную территорию можно колесиком мышки. Скачать Google Earth может человек из любого уголка планеты. Он же в состоянии загружать фотографии своей местности или региона. Таким образом, глобус пополняется тысячами фотографий чуть ли не ежедневно.

Функционал этой программы включает в себя возможность измерять расстояние между различными объектами, подключаться к GPS и входить в имитатор полета. Также на карте можно оставлять метки интересных мест, городов и туристических маршрутов. Последняя версия Google Планета Земля поддерживает возможность выбора отображения на карте 3D-моделей зданий, мертвых зон в океане, погоды, галерей и многого другого. Также можно просматривать 3D-панорамы любых местностей и ландшафтов. Из программы можно напрямую выйти в сервис Google Maps.

Скачать программу Google Планета Земля без регистрации и SMS можно на нашем сайте. Софт хорошо работает на ОС Windows и macOS. Разработчик регулярно улучшает и совершенствует эту программу. На официальном сайте можно найти множество полезной информации.

Проект моделирования истории компьютеров и SIMH

Я получил свой первый компьютер в конце 1978 года в качестве подарка на день рождения. Это был TRS-80 модели 1 с 4 Кбайт памяти и кассетным накопителем, который я позже заменил на флоппи-дисковод Exatron. За несколько недель мои навыки программирования на BASIC углубились настолько, что я превысил объем доступной памяти в своей еще не скомпилированной программе. Знай я тогда столько же, сколько знаю 30 лет спустя, будучи инженером по микропрограммному обеспечению, я все равно тратил бы большую часть времени на то, чтобы втиснуть как можно больше кода и данных в меньшее адресное пространство.

История вычислительной техники завораживает, как и некоторые из ранних моделей компьютеров. Многие из первых машин были простыми калькуляторами, такие как Z1, построенная Конрадом Цузе в 1931 году, а еще раньше ― механическая сортировочная машина Германа Холлерита, которая использовалась в переписи населения 1890 года; шесть лет спустя компания Холлерита стала одной из составляющих IBM. Цузе изобрел также первый алгоритмический язык программирования Plankalkül для своего компьютера Z4. Z4 был электромеханическим (на основе реле), поддерживал 64 слова памяти и работал с умопомрачительной скоростью 40 Гц (при потребляемой мощности 4 КВт). Профессор Джон Атанасов разработал первый цифровой компьютер, который начал строить в 1937 году и закончил в 1941 году ― он использовал двоичную систему счисления для расчетов в Колледже штата Айова. Идеи, положенные в основу компьютера Атанасова-Берри (ABC), были применены в первой ЭВМ общего назначения ENIAC. Программирование этих систем было бы чуждо большинству из нас, выросших с Pascal, C или LISP. Например, при программировании первого ENIAC, чтобы внести изменения в программу, требовалось физически переписать ее. Википедия содержит увлекательную информацию об эволюции компьютеров (см. раздел).

Проект моделирования истории ВТ

Как и мой старый TRS-80, который безжизненно покоится в заппыленной коробке, история вычислительной техники может легко уйти в небытие. К счастью, есть люди, такие как Боб Супник, которые тратят время и энергию на спасение наиболее важных моментов истории вычислительной техники. Супник создал Проект моделирования истории компьютера, чтобы восстановить значимые вычислительные системы с помощью моделирования. Проект Супника, в котором участвуют энтузиасты со всего мира, привел к созданию многосистемной структуры, называемой SIMH , имитирующей большое количество вычислительных систем. В их числе Nova от Data General, PDP и VAX от DEC, IBM 1401 и 7090/7094, системы Interdata и даже компьютеры Altair компании MITS (на процессорах 8080 и Z80). Другие моделируемые системы перечислены по ссылке, приведенной в разделе .

Архитектура SIMH

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

Архитектура SIMH

Описание SIMH можно найти в документе "Написание имитатора для системы SIMH". В нем представлены основные функции SIMH и характеристики различных машин, моделируемых системой (см. раздел ).

SIMH ― это среда, в которую встраиваются эмуляторы систем. Исследуя иерархию дерева исходного кода SIMH, вы найдете набор общих файлов имитатора с рядом подкаталогов, содержащих модели машин (или классов машин). Как показано на рисунке 1, имитатор состоит из пакета управления имитатором (содержащего такие элементы, как консоль имитатора, терминал и библиотеки файлов ввода/вывода, а также таймеры и сокеты) и набора устройств. Дух устройства ― это набор регистров для хранения состояния устройства (когда оно включено) и блоки, отображающие наборы данных (обычно, файлов, которые используются для представления устройства). Могут присутствовать не все устройства, например, сетевое оборудование не моделируется.

Рисунок 1. Базовая архитектура SIMH

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

Настройка SIMH

Давайте посмотрим, каким образом SIMH возвращает нас к заре компьютерной эры. В этом разделе сначала объясняется, как установить и собрать SIMH, а затем рассматриваются пакеты программ.

Установка SIMH

Следующий сеанс иллюстрирует, как загрузить и построить SIMH. Он демонстрирует версию SIMH 38.1, и на сайте нужно проверить, не появилась ли новая версия пакета. Как отмечается в листинге 1, прежде чем составить пакет, мне пришлось создать подкаталог./BIN.

Листинг 1. Установка и сборка SIMH
$ mkdir simh ; cd simh $ wget http://simh.trailing-edge.com/sources/simhv38-1.zip $ unzip simhv38-1.zip $ mkdir BIN $ make -f makefile

Выполнив шаги, перечисленные в листинге 1, вы получаете набор двоичных файлов в подкаталоге./BIN, которые соответствуют отдельным имитаторам (например, ibm1130 и vax780).

Комплекты программного обеспечения

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

Навигация по имитатору

Запустив имитатор (по имени моделируемой машины, например, altairz80), вы увидите командную строку sim> . Это приглашение говорит о том, что вы находитесь в основном имитаторе, который нужно настроить на моделируемый объект. В этой статье рассматриваются лишь некоторые из многочисленных исполняемых команд. Чтобы увидеть обширный список, можно воспользоваться командой help . Важно также отметить, что во время эмуляции одной из поддерживаемых машин можно воспользоваться клавишей Ctrl-E, чтобы вернуться в имитатор. Здесь можно устанавливать контрольные точки, изучить регистры, посматривать очередь событий имитатора и т.п.

Использование SIMH

Теперь, имея общее представление о SIMH, можно поговорить о его применении с различными компьютерными системами. Мы рассмотрим работу LISP на системе IBM 1130, UNIX® на 32-разрядной системе Interdata, CPM на машине Altair от MITS и Focal на PDP-15.

IBM 1130

Система IBM 1130 была популярным компьютером на рынке не очень дорогих систем. Она опиралась на перфокарты и перфоленту, но также использовала дисковую память (общей емкостью 1 МБ). На диске хранились операционная система и данные.

Система 1130 появилась в 1965 году, когда основным языком программирования был Фортран (компилятор которого, написанный целиком на языке ассемблера, занимал всего 4000 слов в памяти). Система работала с адресным пространством на базе 15-разрядных слов, что ограничивало емкость оперативной памяти машины 64 Кбайт.

Один из интересных аспектов системы IBM 1130 заключался в поддержке альтернативных языков. Кроме Фортрана, 1130 можно было программировать на APL и RPG. Гай Стил, имевший доступ к 1130 в Латинской (средней) школе Бостона, написал интерпретатор LISP, который можно использовать и сегодня. Начнем с получения загрузки интерпретатора LISP с сайта, посвященного системе 1130 ibm1130.org (см. листинг 2). Заметьте, я предполагаю, что вы находитесь в подкаталоге./SIMH, где установлен SIMH.

Листинг 2. Установка ПО интерпретатора LISP
$ mkdir kits/ibm1130 ; cd kits/ibm1130 $ wget http://media.ibm1130.org/lisp.zip $ unzip lisp.zip

Это эмуляция скрывает многие детали работы с SIMH, но служит интересным историческим экскурсом в одну из областей применения 1130. Это пакетная обработка данных, когда имитатору ставится задача, а результат распечатывается в файле листинга. Задача ― очень простой пример использования интерпретатора LISP (результат можно видеть на выходе). Сеанс пакетной обработки приведен в листинге 3.

Листинг 3. Использование интерпретатора LISP с имитатором IBM 1130
$ ../../BIN/ibm1130 job lisptest IBM 1130 simulator V3.8-1 PRT: creating new file Loaded DMS V2M12 cold start card Wait, IAR: 0000002A (4c80 BSC I ,0028) sim> quit Goodbye $ more lisptest.lst PAGE 1 // JOB 1234 LOG DRIVE CART SPEC CART AVAIL PHY DRIVE 0000 1234 1234 0000 V2 M12 ACTUAL 32K CONFIG 32K ^L PAGE 1 // JOB LOG DRIVE CART SPEC CART AVAIL PHY DRIVE 0000 1234 1234 0000 V2 M12 ACTUAL 32K CONFIG 32K // XEQ LISP ***** 1130 LISP 1.6 ***** BOSTON LATIN SCHOOL ***** LITHP ITH LITHTENING... (SETQQ A (X Y Z)) (X Y Z) (CAR A) X (CDR A) (Y Z) (PLUS 1 2 3) 6 (QUIT) ***** 1130 LISP 1.6 ***** END OF RUN ***** THO LONG, COME AGAIN THOON $

Что дальше

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

Современные компьютеры и современные браузеры достигли серьезных высот производительности. Лет десять назад интерактивное веб-приложение казалось чудом, а теперь на JavaScript пишут не только игры или, скажем, но даже эмуляторы старых компьютеров. Мы выбрали несколько наиболее интересных эмуляторов, которые порадуют любителей старины и всех, кто интересуется историей вычислительной техники.

JSMESS

MESS (Multi Emulator Super System, часть проекта MAME) - один из старейших эмуляторов домашних компьютеров, игровых приставок и научных калькуляторов. Отличается он тем, что поддерживает не один процессор или архитектуру, а около 250 разных систем. JSMESS - это порт MESS на JavaScript, разработанный Джейсоном Скоттом по заказу Internet Archive. JSMESS доступен на archive.org вместе с внушительным каталогом игр и софта для разных старинных платформ. Интересно, что для эмуляции PC в качестве прослойки тут используется DOSBox. Но если это и сказывается на производительности, то незначительно: можешь хоть сейчас погонять в Prince of Persia , и работать он будет не хуже, чем когда-то на «двушке» у папы на работе.

PCjs



PCjs - это семейство эмуляторов старых процессоров, среди которых Intel 8080, x86, PDP-11 и одна из реализаций MOS 6502. На главной странице pcjs.org есть интересная подборка готовых конфигураций и образов, в том числе виртуалки с MS-DOS, PC-DOS, OS/2 и даже Windows. Windows 95 нам загрузить не удалось, а вот Windows 3.11 медленно, но завелась. Запустив одну из машин, не забудь заглянуть в список доступных образов дисков - там можно обнаружить подборки редкого софта и операционок (к примеру, Minix и SCO Xenix). Как вариант - можешь загрузить свой образ диска или дискеты в формате IMG.

PCE.js



Этот родственник PCjs отличается тем, что, помимо x86, эмулирует Mac Plus и Atari ST. Интереснее всего, пожалуй, демонстрация Mac OS System 7 - и не только потому, что автор не поленился добавить картинку с классическим «Макинтошем». По скорости работы система чуть ли не превосходит оригинал, а на диске HD 2 находится несколько папок с программами и играми. На том же сайте есть эмулятор IBM PC/XT с приложенными к нему демками Monkey Island, Civilization и Wolfenstein 3D.

Javatari



Если говорить о браузерных эмуляторах Atari, то Javatari - это, наверное, лучший из них. Он, в частности, используется на сайте Virtual Atari , где собрана коллекция из 550 игр. Если же ты вдруг захочешь развлечься программированием на ассемблере для Atari 2600 или просто решишь полюбопытствовать, как раньше делали игры, то обязательно загляни на сайт 8bitworkshop.com : он на одной странице позволяет править исходники и наблюдать за изменениями.

Virtual x86



Шумиха вокруг браузерных эмуляторов начала набирать обороты в 2011 году, когда Фабрис Беллар запустил проект JSLinux - эмулятор ПК с Linux, который работает на его домашней страничке. С тех пор идею Беллара неплохо развили: проект Virtual x86 предлагает на выбор список из семи дистрибутивов UNIX и Linux, а также Windows 1.01, Windows 95 и 98, Kolibri OS и Oberon. В отличие от PCjs, этот эмулятор не пытается стартовать Windows с нуля и ограничивается загрузкой образа оперативной памяти. Даже для Windows 98 это всего 12 Мбайт, так что процесс идет быстро. Увы, все операционки максимально урезаны и не имеют подключения к интернету.

Эмуляторы ZX Spectrum



Для тех, кто родился в СССР, компьютерная ностальгия часто связана с ZX Spectrum. Пока что лучший браузерный эмулятор «Спектрума» из того, что нам попадалось, - это уже упомянутый JSMESS. Помимо него, существуют