Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]



"Создаю свою ОС сиcтему отцените это на C много че написано"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на рабочей станции (Система)
Изначальное сообщение [ Отслеживать ]

"Создаю свою ОС сиcтему отцените это на C много че написано"  +1 +/–
Сообщение от Иван (??), 23-Окт-26, 13:52 
Короче, такая тема. Я делаю свою ОС, называется LimonOS. Это не Linux, не Unix — своё ядро, на 98% на C. Четыре дня разработки. Уже есть сеть и браузер, представляешь? За четыре дня.

И да, мы добавили AI прямо в терминал. То есть в самой системе, в консоли, можно общаться с AI-помощником — не где-то сбоку в браузере, а прямо в терминале LimonOS. Это, по-моему, вообще дичь и круто одновременно.


https://github.com/AnonimusShamshiAlex/LimonOS


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

Вот ссылка на GitHub, там всё есть — код, инструкции. Если у вас Windows — нажимаете батник, всё компилируется через WSL и Limine. Посмотрите на виртуальной машине, прикольно.

И вот что я понял за эти четыре дня. Первое — сборка через батник и WSL это бомба замедленного действия. Сегодня работает, завтра WSL обновился — и всё, приехали. Надо на Docker переходить, один раз описал — и собирается везде одинаково.

Второе — тесты для ядра это не роскошь, это выживание. Если у меня в четырёхдневном ядре уже сеть, браузер и AI в терминале, значит где-то точно сидят баги с памятью и прерываниями. Надо писать проверки, пусть даже примитивные. Память, таймер, диск. Пусть выводит «тест номер такой-то ок» — потом сам себе спасибо скажу.

Третье — браузер и сеть это чёрная дыра по времени. Показывать страницы легко, а вот стабильно работать с таймаутами, ретрансмиссией, фрагментацией — это месяцы. Так что ограничиваю: только HTTP, только текст и ссылки, без HTTPS. TLS это отдельная боль, не сейчас.

Четвёртое — AI это норм, но правило железное: не принимаю сгенерированный код, пока не могу своими словами объяснить, что он делает. Иначе при первом баге сяду и не пойму, где копать. И это особенно важно теперь, когда AI у меня прямо в терминале системы — соблазн свалить всё на него большой, но так нельзя.

И пятое — схему ядра рисую прямо сейчас. Пока кода мало: как грузится, как память, как прерывания, как syscall'ы. Через месяц кода станет в десять раз больше — и я сам не вспомню, что где.

Про «стать как Linux» я забыл. Linux 0.01 это восемь тысяч строк, и ему понадобилось тридцать лет и тысячи людей. Моя цель не «как Linux», а «стабильно делает то, что мне нужно». Это достижимо.

И про Терри Дэвиса. Мне круто делать свою ОС, как он. Но он не задавал вопрос «не сойду ли я с ума». Я задаю — значит, всё в порядке. TempleOS это трагедия, а не пример для подражания. Делаю в кайф, в свободное время, не в ущерб жизни.

Короче, LimonOS живой. Темп бешеный, но теперь главное — не скорость, а стабильность и понятность. Замедляюсь, фиксирую фундамент: сборка, тесты, схема. Дальше попрёт.

Ссылка на GitHub ниже, скрины интерфейса в посте. Следите за развитием.


https://github.com/AnonimusShamshiAlex/LimonOS

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Создаю свою ОС сиcтему отцените это на C много че написано"  +1 +/–
Сообщение от Аноним (1), 23-Окт-26, 22:37 
Проект интересный. Насколько понял, делаете для себя, что вам только интересно.
Ответить | Правка | Наверх | Cообщить модератору

2. "Создаю свою ОС сиcтему отцените это на C много че написано"  +/–
Сообщение от Иван (??), 23-Окт-26, 22:56 
> Проект интересный. Насколько понял, делаете для себя, что вам только интересно.

да спасибо мне интересно это делать себе так как сделать что бы работало хорошо стабильным что бы я сам сидела и на этом ос работал

Ответить | Правка | Наверх | Cообщить модератору

3. "-"  +/–
Сообщение от Аноним (3), 24-Окт-26, 13:20 
Обязательно возникнет вопрос: где исходники какой-либо части, чтобы поправить, выброшенное автором исходников, но критически важное проекту. Т.к. проприетарный вендор и Интеренет - оба являются чёрными ящиками с плохо предсказуемым поведением.

Если обновление WSL ломает сборку, то это прямой признак жёсткой привязки к каким-то чужим зависимостям, живущим своей жизнью и ломающих проект. Проблема архитектуры. Нужно убирать. Т.к. оно будет проявлять себя в хрупкости множества внезапных изменений, по инициативе других людей. Докер образы тоже запросто убирают из доступа. Не поможет.

Странно, что TLS - боль. Может быть, это ещё один признак спутанности архитектуры. Т.к. по идее можно подключать любую готовую библиотеку, а по мере прогресса заменить на свою, если нужна именно своя.

Контрольные вопросы:

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

Как мне показалось, стабильности и поняности не возникло.

Ответить | Правка | Наверх | Cообщить модератору

4. "Создаю свою ОС сиcтему отцените это на C много че написано"  +/–
Сообщение от Аноним (3), 24-Окт-26, 13:34 
Да. Без автоматических тестов, при любом значимом изменении невозможно будет утверждать, что изменение ничего не сломало. Выполнение тестов должно быть очень быстрым, чтобы сохранялась возможность частой проверки изменений.

При редких тестах ошибка становится замеченной, когда накопилось много изменений. Количество изменений затрудняет исправления.

И ещё раз - если обновление WSL ломает сборку, то стабильность, главная цель, отсутствует.

Ответить | Правка | Наверх | Cообщить модератору

5. "Создаю свою ОС сиcтему отцените это на C много че написано"  +/–
Сообщение от Иван (??), 24-Окт-26, 13:47 
> Да. Без автоматических тестов, при любом значимом изменении невозможно будет утверждать,
> что изменение ничего не сломало. Выполнение тестов должно быть очень быстрым,
> чтобы сохранялась возможность частой проверки изменений.
> При редких тестах ошибка становится замеченной, когда накопилось много изменений. Количество
> изменений затрудняет исправления.
> И ещё раз - если обновление WSL ломает сборку, то стабильность, главная
> цель, отсутствует.

Спасибо за фидбек! Насчет архитектуры и черных ящиков (WSL, интернет) — согласна, это нужно убирать. В ближайшее время перенесу сборку на CI/Docker, чтобы убрать зависимость от WSL.

Насчет TLS и "чужого кода": я пишу всё с нуля намеренно. Да, это сложнее, но именно в этом суть проекта — показать, что можно написать криптографию и сеть самостоятельно, без гигантских библиотек.

По поводу автотестов: это справедливое замечание. Разработке всего 6 дня, и сейчас я работаю над тестами для криптографии, чтобы обеспечить стабильность.

я не Иван это просто ник

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




XSQUARE
Inferno Solutions
Hosting by Hoster.ru
Хоcтинг: