Как стать автором
Обновить

Комментарии 44

Вот это уже круто!

К слову, совоеменные шустрые мк легко гоняют не только эмуляторы z80/6502 и иные архитектуры, но и целые системы типа NES

Не, неспортивно - linux запустили на mips, а то, что 4004 заставили извращенным способом mips эмулировать - это другое (с) ;)

но ведь линукс работает. И процессор на плате 4004 :)

Дмитрий, народ интересуется как организована эмуляция виртуальной памяти, и присутствует ли она.

Также интересно, существуют ли новоделы i4004 работающие на более вывсоких частотах ?

Первая часть описана в прошлой статье “LinuxCard” когда я первый раз писал эмулятор этого процессора R3000. Да всё эмулируется правильно.

Более быстрых аналогов 4004 я не знаю и нигде не видел. Но даже если они бы существовали, это было бы бесполезно потому что также нужны будут быстрые 4002 и 4289

Да и смысла в этом — 4004 не самый проработанный четырёхбитник, ибо очень уж исторический :)

Но если говорить о четырёхбитниках как таковых, то да, реализовать на PECL или каком-нибудь там арсениде галлия — неплохо было бы. Там, где нужно очень мелко квантовать время и/или иметь мизерное время реакции на внешние события — отличная была бы штука (предполагая логику обработки всего этого достаточно простой для четырёхбитника).

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

А когда такой сигнал придёт — прерывание отвлечёт его от каких-нибудь там преобразований Фурье и через наносекунду он даст команду, что дальше делать :) то есть и сложные задачи, но медленно, и простые, но быстро, и это одновременно — отличная штука была бы! Эдакий x86 на стероидах, с доступным программисту микрокодом.

Насколько я помню, для работы linux ключевой является поддержка виртуальной памяти. Если его переписали так, что её не требуется — это уже не linux, а своё ядро с похожими апи. Если она появилась на 4004 — это в любом случае прослойка эмуляции шириной со слона.

На палате обозначен блок MIPS TLB, что как бы намекает на наличие эмуляции MMU.

Да. TLB полностью эмулируется. В оригинальной статье на английском я об этом написал немного

Картинка с троллейбусом из буханки.

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

Картинка с троллейбусом из буханки.

конечно. Это челлендж. Потому что смог.

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

Они тоже могут решать задачу вроде посадки на Луну.

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

А такие вот очень уже не дешевые. Ну прям очень-очень...

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

Ну теперь точно Интел спасётся

Осталось физически реализовать машину Тьюринга

и запустить на ней Doom ❤️

Кстати, вот его более ранний проект, там запускали на МК ATMega: https://dmitry.gr/?r=05.Projects&proj=07. Linux on 8bit

Вообще, разработчик этот невероятно крут. Чего стоят, например, его опыты с пальмами...

А есть ли от этого практическая польза? Или это из ряда "потому что я могу "?

Мне реально интересно, а не попытка "обосрать".

Единственная практическая польза это получение знаний.

Во-первых, это прекрасная демонстрация возможности эмуляции сложной системы средствами более простой.

Узнать предел возможностей того или иного железа или софта?

железа врядли, скорее отработка алгоритмов привязки софта к любому железу

А ведь если сейчас эмуль оптимизировать до блеска — его и на масочном ПЗУ можно будет сделать… и если там 25 команд на одну эмулируемую — при частоте 250 ГГц (соединения галлия, на которых даже четырёхбитник уже запредельно сложная вещь) получаем эмуляцию 10 ГГц камня.

В общем, вроде бы игрушки, а вот так вот возьмёт и «выстрелит» вдруг. С трудом, правда, представляю, как проектировать даже четырёхбитный проц в условиях откровенно волновых свойств сигнала. Но теперь у нас есть мотивация об этом думать :)

Инженерное искусство и спорт - смотря с какой стороны посмотреть.
Зачем граждане пилят и вешают наличники на окна? - им нравится!
Зачем граждане работают на кубиками пресса - им нравятся кубики пресса!
А вообще, этот чувак памятник воздвиг себе нерукотворный. Нас все забудут, а его - нет!
Практическая польза для этого чувака тоже есть: вот он ща ходит и чувствует как его квадратные огромные чугунные яйца стукаются углами и звенят - это офигеть как поднимает его позитивный эмоциональный фон, улучшая психологическое состояние и личную "мораль": "не тварь я дрожащая, но право имею!", и звон этот хорошо слышен в узких кругах!

В 2012-м году я поставил рекорд: Самый простой процессор на котором был запущен Linux. В 2023-м году мой рекорд побили. Я рекорд получаю обратно

Ну и к тому же это красиво будет висеть на моей стене и медленно что-то делать

Ну вот я чуть выше озвучил сценарий использования такой архитектуры в промышленных приложениях :) но, правда, с технологиями, позволяющими сделать на GaAs хотя бы четыре бита (при 250 ГГц даже четыре бита могут очень многое!) — пока туго :)

Плюс там откуда-то придётся брать прошивку с таким эмулятором, то есть должно ещё сколько-то SRAM влезть на тот же кристалл. И она должна на 250 ГГц данные отдавать.

Ещё один пример того, что есть возможность заново переписать все оптимальным образом, и слезть с тренда гонки за дорогим новым железом... в угоду монополистам...

Это вряд ли. Умение писать быстрый и нересурсоёмкий код - это полностью утраченное на сегоднящний день знание.

Ничего подобного. Нет ничего сложного в написании кода с экономией тактов процессора и байтов памяти. Просто это занимает время, а время это деньги.. Дешевле взять проц побыстрее и памяти побольше.

Бедные Гугл с Майкрософтом, видимо у них денег и сотрудников на порядки меньше, чем у тех, кто забесплатно пишет опенсорс. /s

В бесплатном опенсорсе кто-то экономит байты? Правда? Современный linux по прожорливости от windows не отличается почти ничем.

Что вы несете вы хотя бы пробовали поставить современные дистрибутивы например Debian 12 на старые пк до 2000 года, вы удивитесь как шикарно он идет на всех i386 процессорах, просто потому что задача Debian сообщества состоит в поддержке абсолютно любых архитектур, они не пытаются мгновенно похоронить поддержку старого оборудования. Да будут исключения, что браузер и множество Электрон, Node js и т.д. веб-приложений не получится запустить из-за ограниченого объема озу, как вариант использовать видеопамять как swap через vramfs, но вот всякие GTK и Qt без проблем запускаются, KDE и Gnome требования высоки, но вы пробовали обновляемый LxQt?

Запустите на своем лаптопе Windows 11, включите full hd фильм, и посмотрите, как быстро сядет батарея от 100% до 0%.

А потом повторите тот же эксперимент с Linux (дистрибутив на ваш выбор).

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

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

Что вы несете вы хотя бы пробовали поставить современные дистрибутивы например Debian 12 на старые пк до 2000 года,

Пробовал. На ноут после Windows 8.1 взгромоздил mint. Еле ворочается.

вы пробовали обновляемый LxQt?

Мне не нужно lxqt. Мне нужно чтобы пользовательский софт работал. Браузер, libre office, и всякие qt creator.

Ну да, SSD спасет отца русской демократии. Только Windows 8.1 на этом же железе работала пристойно. А опенсорсный Линукс - тормозит

Как бы... помниться, что бедный Билл получил заказ от ИБМ, изготовителя железа, ...а что нужно изготовителям железа? - чтоб оно, железо, продавалось постоянно, но оно, железо не изнашивается, как ботинки... , а спрос и обороты хочется иметь постоянные... и не важно, что на старом железе можно условно почти все... оттуда и тренд на "необходимость неоптимальности"... чтоб покупатель "почувствовал", что не зря потратился в очередной раз...

Ну а где все эти Греты Тунберг, когда реально нужно реально бороться с таким злом, как запланированное устаревание, зазря приносящее колоссальный вред экологии?

Запланированно устарели /s

Работа достойная. Но считаю это читерством! И все современные процессоры - читерство. Оказывается они все не исполняют команды x86 уже много лет. Внутри них куча risc ядер на вообще другой архитектуре! И специальная программа, которую называют - микрокод! И наши программы не исполняются на настоящем x86. Они исполняются на вот этой, почти виртуальной машине.

Давно уже так. Даже i486 работал уже на гибридном ядре.

Разве не с 75 МГц первопня это началось? Или там уже перешли от компромиссов к чистому RISC-ядру с микрокодом?

Вот раньше умели делать процессоры и живут до сих пор, не то что сейчас

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Другие новости

Истории