RetroBSD в видеожурнале
2015-12-25 01:02RetroBSD попал под лошадь в видеожурнал BSD Now.
Аж целых три с половиной минуты народ прикалывался над возможностью втиснуть многозадачность в 128 килобайт памяти.
Аж целых три с половиной минуты народ прикалывался над возможностью втиснуть многозадачность в 128 килобайт памяти.

no subject
Date: 2015-12-31 00:48 (UTC)Спасибо, вроде мыслю подключиться к вам с компиляторами.
Очень сейчас заботят идеи Ритчи, то есть это его самый первый "старый и дремучий" компилятор Си, сильное желание "разобраться", сурово и по-мужски :) В нем. Узнать что и как там уютно устроено-обустроено. Но для его освоения, я думаю, переписать на ANSI Си, и перепилить генератор кода для PIC32. Вот это как раз подойдет, как кажется, чтобы размахнуться и помахать немного крыльями. :) В общем, получится, что благодаря ANSI Си будет возможность кросс-компиляция с чего угодно. Даже если это не всем угодно. Многие старые программки Reseach Unix'ов смогут снова свободно зажить и начать резвиться на RetroBSD. По задумке, вроде все складно. И получится как бы неплохая теория-практика. Я так думаю, что я к вам загляну на огонек retrobsd.org, как только напишу, что задумал, вот :)
no subject
Date: 2016-01-01 00:23 (UTC)Ровно с такой же целью я начал проект RetroBSD пять лет назад - продемонстрировать, что идеи, заложенные в основу юникса, имеют смысл на современных микроконтроллерах. Просто их нужно аккуратно адаптировать к современному уровню развития технологии. Но за основу я взял не самую первую, а наоборот, в некотором смысле "последнюю" версию юникса - 2.11BSD.
Для изучения внутренностей юникса могу посоветовать пару книжек. Первая: Maurice Bach, "The Design of The Unix Operating System" - всестороннее иписание архитектуры построения системы. Вторая: John Lions, "Lions Commentary on UNIX: 6th (sixth) Edition" - глубокий анализ и комментарии к исходному коду. Обе книжки можно купить б/у на Амазоне за относительно разумные деньги.
С компилятора Си я когда-то начинал: это была моя дипломная работа. Но я бы не советовал браться за компилятор Ритчи, он далеко не лучший образец кода. Посмотрите pcc или lcc - в них есть чему поучиться. Тем более что для lcc имеется хорошая книжка: David Hanson, Christopher Fraser, "A Retargetable C Compiler: Design and Implementation". Сейчас как раз народ занялся адаптацией pcc для LiteBSD - можно приложить руку к реальной разработке.
no subject
Date: 2016-01-01 00:31 (UTC)Документация лежит в каталоге doc.
no subject
Date: 2016-01-01 20:25 (UTC)Кстати, слышал, что при работе над ДЕМОС среди участников ходила переводная иностранная литература по юниксу. Переведенный UNIX Programmer's Manual был точно (http://gorod.tomsk.ru/index-1284111232.php). Может даже был также переводная "Lions Commentary on UNIX". Но, увы, я даже тех мануалов не видел в Сети, искал, искал... ну,и про второе уж вообще упоминать нечего. Правда, все же от этого проекта, в котором вы принимали непосредственное участие, кое-что полезное осталось, это всякая интересная документация http://www.lib.ru/MAN/DEMOS210/ плюс сами исходники системы (смотрел, мало чего понял).
Следы оригинального компилятора бестипового языка B я тоже когда-то искал по Интернету. Не найдя его самого - понял, что скорее всего он утрачен. Есть только бинарные программки в образах систем v1-v6 (echo вроде на нем скомпилирован).
Очень жаль, что многое вот так просто теряется.
Да, я глянул ваш проект. Интересно, я тоже люблю обращатся к старым идеям, к якобы "отжившим" и уже несовременным, ведь по сути все новое это хорошо забытое старое, ничего нового просто так из ниоткуда не появляется, как правило.
Хочу сказать, что кажись, но уже реализация языка В наличиствует https://github.com/Leushenko/ybc , и с некоторыми малыми отличиями от оригинала. А все из-за адресуемой единицы памяти х86. Написан он на каком-то странном диалекте бэйсика. Можно, по идеи, синтезировать из вашего и его проекта, компилирующую штуку под ту самую оригинальную машину PDP-11. :) Язык B мне, конечно, по душе, Ритчи упоминает, что компилятор был весьма-весьма компактным в размере, что очень таки радует, для меня это значимое свойство. Но Си в данный момент желается больше. А lcc и pcc как проекты, по ощущениям, великоваты. Не по мне "шапка". Не знаю, может следующим проектом и будет B. Но уже сейчас я настроился поработать с Ancient C. Вот. Как закончу, и если получится, то сразу отпишу вам на retrobsd.org (я немножко не эктраверт).
no subject
Date: 2016-01-02 06:19 (UTC)Я изучал pcc по исходникам, плюс небольшая статья на английском (ftp://pcc.ludd.ltu.se/pub/pcc-docs/porttour.ps). Несмотря на объем кода, разобраться в pcc гораздо проще, чем в творении Ритчи.
Интровертность это полезное качество, помогает в работе. :)
no subject
Date: 2016-01-02 06:35 (UTC)В том числе исправлено несколько существенных багов.
no subject
Date: 2016-01-02 10:09 (UTC)И за информацию. В особенности за https://github.com/sergev/bk0012/tree/master/toolchain/ccom Будем смотреть.
Хм, проект БК0012. Вроде там у них (БКшников-юниксофобов :) уже зародилось альтернативное течение. Будут, возможно, что-то строить на основе полной симуляции разогнаного 1801вм1, отреверсированного. Ну это так сказано, к слову, со стороны наблюдателей.