Форум программистов, компьютерный форум, киберфорум
ОС на Assembler
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
 Аватар для pgb
-508 / 32 / 0
Регистрация: 22.09.2015
Сообщений: 1,232

Создание ОС, языка и софта с нуля

09.10.2016, 20:38. Показов 28342. Ответов 197
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте уважаемые программисты!

_ У многих время от времени возникает идея создать свою операционную систему. Вот и я пришёл к такой мысли Я самоучка, в детстве программировал на асме в ZX-Spectrum, после армии увлёкся сайтостроением, затем форексом(писал советники). Создал большой интернет проект, но средств на раскрутку и найм персонала не было, понятно, почему полез в форекс. Далее сменив работу, постепенно забросил свои проекты. Но данный опыт мне очень сольно помогает в моих новых разработках.
Поначалу захотелось сделать удобную программу подобно 1С, но удобнее и проще. Сделал небольшие модули, мини базу данных custodem(только запись и чтение простых типов данных), публикатор publisher(своего рода веб-сервер), bucinator(передача данных по сети и между модулями базы данных и публикатором), cerebrum(язык программирования подобный PHP для веб сайтов, но проще).

_ Всё это писал на Lazarus, так как делал разные приложения для упрощения своей работы на Delphi, привык к паскалю, а так как Lazarus c кросплатформенной компиляцией и свободно распространяемый, решил написать приложение для работы на нём, но из идеи приложения для работы переросло во что-то большее. Со временем создам сайт проекта, опишу всё более подробно, выложу модули.
Далее на основе этих модулей можно сделать простые приложения для производств(подобно 1С), торговли(подобно торговому терминалу форекс), поликлиник(для карточек пациентов) и др. Это сможет сделать даже школьник, который знает Паскаль, всё можно написать также в Lazarus. Сайты, которые будут размещаться на личных компьютерах.

_ Теперь ближе к теме. Работая над своими проектами я всегда искал единомышленников, но так и не находил, так как живу на периферии и в ближайшем кругу нет программистов которые хотят что-то сами сделать. Также время от времени, возникала мысль о более продуманной системе. Сейчас изучаю ассемблер и есть желание написать свою ОС.

Итак, если тут есть желающие написать свою удобную операционную систему, то предлагаю следующее:
  1. собрать команду специалистов
  2. обсудить структуру ОС
  3. распределить задачи
  4. приступить к реализации
Моя идея операционной системы такая:
  1. создать драйвера для работы с дисками, видеобуфером, звуком, мышкой и др. периферийных устройств по мере надобности
  2. ядро управления памятью, базу данных, передача данных по сети
  3. интерпретатор языка программирования, напрашивается название EMPEROR , так как на этом языке будут писаться все программы для нашей операционной системы

Язык EMPEROR будет создавать окна, вставлять нужные компоненты в приложении и тд. Это будет очень простой язык, на котором сможет писать кто угодно.

Если соберётся хорошая команда, то думаю за год, максимум два мы создадим СУПЕР операционку Итак, кто согласен участвовать в этом?

Добавлено через 6 часов 4 минуты
Наверняка у многих уже есть наработки. По себе знаю в одиночку такой грандиозный проект не реализовать. Если вы откажитесь от применения своих знаний и наработок в создании работающей ОС, то считайте, вы зря делали, то, что сделали и это окажется никому не нужным, так как чтобы это работало, надо ещё очень многое создать на что у вас не хватит и жизни, это, во-первых. А во-вторых, предлагаю написать лицензионное соглашение по созданию и распространению исходных кодов по принципу свободного распространения, а также договор долевого участия в капитализации операционной системы, то есть распределения дохода от участия разработчиков. В третьих если будет хорошая команда, то эта операционка будет очень быстро написана и доступна всем, на основе чего уже можно будет создавать полезные коммерческие приложения (платёжная система, бизнес приложения, социальные и частные приложения, подробнее о идеях могу рассказать позже).

Если вы не зарегистрированы на форуме можете написать мне на email: del

Добавлено через 54 минуты
Кто в деле пишем о своём опыте в той или иной области, например:
Есть опыт в создании больших проектов, создании языка программирования, базы данных, платёжной системы.

Это я о себе В ассемблере у меня на данный момент мало опыта, но думаю наверстаю, указанный опыт может применим в разработке ОС. То есть я хочу заняться созданием ядра ОС. Если вы имеете опыт в работе с дисками, видео, звуком и тд. отписывайтесь кто желает включиться в разработку.
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.10.2016, 20:38
Ответы с готовыми решениями:

Создание игры и софта
Скажите пожалуйста какие книги можете порекомендовать на с++ я хочу написать игру в шахматы для виндоус но не знаю с чего начать код то я...

Посоветуйте с чего начать создание USB устройства, софта и драйвера для Андроид
Доброго дня всем кто читает! В небольшом творческом коллективе возникла неведомая ранее креативная задача. Надо оживить некоторый...

Создание локалки с нуля
Добрый день. Появилась необходимость поставить невыключаемый системник между Интернет и компом, также подоткнуть к нему приставку ТВ и...

197
1 / 2 / 0
Регистрация: 29.10.2020
Сообщений: 27
27.12.2025, 23:54
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от ФедосеевПавел Посмотреть сообщение
Есть хороший цикл статей о развитии ЭВМ в СССР
https://topwar.ru/user/Sperry/

Вкратце, просто не повезло - отставание в развитии общества на 200 лет сократили до 50 лет, но надорвались.



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

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

Добавлено через 4 минуты
Мне кажется, востребованность в отечественной ОСРВ типа QNX трудно переоценить.
Ещё 20 лет назад QNX поражала воображение стабильностью, компактностью, высокой скоростью, а её развитие не остановилось.
Цитата Сообщение от ФедосеевПавел Посмотреть сообщение
Вкратце, просто не повезло - отставание в развитии общества на 200 лет сократили до 50 лет, но надорвались.
Все надорвались и японцы и европейцы. только англо-саксы не как уже более 30 лет надорваться не могут (все создают свои языки программирования и ОС). А может дело не в том, что надорвались?
Цитата Сообщение от ФедосеевПавел Посмотреть сообщение
А что плохого в попытке?
Моцарт появился в среде, где было обыденностью музицирование и сочинение новых пьес к очередному дворянскому собранию. Моцарт превосходил современников на голову и из нашего времени кажется титаном. Но он опирался на очень высокую музыкальную культуру окружающих его людей, представителей элиты общества.
Так обстоит во всех сферах деятельности.
Плохого не чего нет, наоборот. Только надо, наверное, слушать умных людей и не врать им. Но нельзя объяснить первокласнику как решать квадратные уравнения.
0
фрилансер
 Аватар для Алексей1153
6500 / 5731 / 1134
Регистрация: 11.10.2019
Сообщений: 15,339
28.12.2025, 08:09
Цитата Сообщение от Dmitriy_SD Посмотреть сообщение
надеюсь лучше чем виндовс
а что не так с виндовс? Работает, вроде, не жужжит. Вин10 у меня сейчас
0
1 / 2 / 0
Регистрация: 29.10.2020
Сообщений: 27
31.12.2025, 13:35
Цитата Сообщение от Алексей1153 Посмотреть сообщение
а что не так с виндовс? Работает, вроде, не жужжит. Вин10 у меня сейчас
Разве я жаловался на виндовс? Просто, если человек хочет написать операционную систему и для этого собирает команду... Зачем делать хуже? Например калибри вмещается всего на одну дискету 1,44Мб.
0
фрилансер
 Аватар для Алексей1153
6500 / 5731 / 1134
Регистрация: 11.10.2019
Сообщений: 15,339
31.12.2025, 15:10
Dmitriy_SD, эм... Я даже компакт диск лет 15 уже не видел, и сунуть его некуда. А уж дискета, горячая молодость
0
Эксперт .NET
 Аватар для Usaga
14733 / 9507 / 1363
Регистрация: 21.01.2016
Сообщений: 35,861
31.12.2025, 15:26
Цитата Сообщение от Dmitriy_SD Посмотреть сообщение
Например калибри вмещается всего на одну дискету 1,44Мб.
Это какое-то ценное потребительское качество?..
0
Эксперт .NET
 Аватар для Rius
13824 / 7867 / 1703
Регистрация: 25.05.2015
Сообщений: 23,893
Записей в блоге: 14
31.12.2025, 15:29
Ну как же? Каждый уважающий себя программист должен написать программу, состоящую исключительно из одного exe.
Влезание на одну дискету это рядом, почти то же самое.
0
1 / 2 / 0
Регистрация: 29.10.2020
Сообщений: 27
31.12.2025, 15:47
Цитата Сообщение от Usaga Посмотреть сообщение
Это какое-то ценное потребительское качество?..
Поддерживает множество вариантов загрузки, в том числе с флеш-накопителя, компакт-диска и дуал-бут с основной ОС.
GUI на основе VESA. Портированы открытые драйверы AMD и Intel.
Среда разработки: в официальный дистрибутив входят текстовый редактор tinypad и макроассемблер fasm для разработки, сборки ядра и приложений.
Поддержка TCP/IP-стека и некоторых сетевых карт[5].
Основной дистрибутив имеет размер 1,44 Мб (помещается на одной 3,5″ дискете).
Для запуска достаточно 12 мегабайт оперативной памяти и процессора Pentium I.
Вытесняющая многозадачность, возможность создания потоков, параллельное исполнение системных вызовов.
Страничная адресация.
Поддержка файловых систем на чтение и запись FAT12, FAT16, FAT32, NTFS, Ext2[6], Ext3, Ext4, только для чтения XFS[7] и ISO 9660 (в том числе мультисессию).
Поддержка звуковых кодеков AC'97 и Intel HD Audio для большинства популярных чипсетов.
Поддержка USB (OHCI, UHCI, EHCI).

Добавлено через 6 минут
Цитата Сообщение от Rius Посмотреть сообщение
Ну как же? Каждый уважающий себя программист должен написать программу, состоящую исключительно из одного exe.
Влезание на одну дискету это рядом, почти то же самое.
калибри больше чем ехе. Ехе еще надо запустить, а самое интересное нужны еще системные вызовы и прерывания (хотя и не обязательно, но в нормальном 32 битном ехе их хватает)
0
Эксперт .NET
 Аватар для Usaga
14733 / 9507 / 1363
Регистрация: 21.01.2016
Сообщений: 35,861
31.12.2025, 15:48
Цитата Сообщение от Dmitriy_SD Посмотреть сообщение
Основной дистрибутив имеет размер 1,44 Мб (помещается на одной 3,5″ дискете).
Для запуска достаточно 12 мегабайт оперативной памяти и процессора Pentium I.
Это может иметь значение только для древних ПК. А в 2025м году видеть ценность в этих пунктах... Ну я хз.
0
1 / 2 / 0
Регистрация: 29.10.2020
Сообщений: 27
31.12.2025, 16:03
Цитата Сообщение от Usaga Посмотреть сообщение
то может иметь значение только для древних ПК. А в 2025м году видеть ценность в этих пунктах... Ну я хз.
Оптимизация кода, я думаю, будет ещё долго ценным качеством.
1
Эксперт .NET
 Аватар для Usaga
14733 / 9507 / 1363
Регистрация: 21.01.2016
Сообщений: 35,861
31.12.2025, 16:22
Dmitriy_SD, тут не оптимизация, а минимизация и упрощение. Голяк ресурсов действительно будет потреблять меньше. Но будет ли он при этом полезен - вопрос открытый.
0
1 / 2 / 0
Регистрация: 29.10.2020
Сообщений: 27
31.12.2025, 17:36
Цитата Сообщение от Usaga Посмотреть сообщение
тут не оптимизация, а минимизация и упрощение. Голяк ресурсов действительно будет потреблять меньше.
Оптимизация конечно же есть (на ассемблере ехе меньшего объема получается). Минимизация и упрощения, ну не знаю, виндовс тоже на первых порах уступал досу. ну о об ОС\2 вообще молчу.
Цитата Сообщение от Usaga Посмотреть сообщение
Но будет ли он при этом полезен - вопрос открытый.
Тут только покажет время. Хотя я думаю, что не обгонит калибри виндовс по популярности.
0
Эксперт .NET
 Аватар для Usaga
14733 / 9507 / 1363
Регистрация: 21.01.2016
Сообщений: 35,861
01.01.2026, 16:14
Цитата Сообщение от Dmitriy_SD Посмотреть сообщение
Оптимизация конечно же есть (на ассемблере ехе меньшего объема получается).
Так меньший объём не значит "быстрее работает". Часто это вообще ортогональные понятия. А в 2025м году упор на размер дистрибутива (радикальный) - это не особо можно оптимизацией назвать.

Особенно с учётом того, что оно, якобы, на первом пне может работать. Это значит, что оно про более новые инструкции процессоров и не слышало? И тем более про х64?

Цитата Сообщение от Dmitriy_SD Посмотреть сообщение
Тут только покажет время.
Так оно давно показало. Калибри - интересный проект с академической точки зрения. Этим оно и ценно.
0
1 / 2 / 0
Регистрация: 29.10.2020
Сообщений: 27
02.01.2026, 11:30
Цитата Сообщение от Usaga Посмотреть сообщение
Так меньший объём не значит "быстрее работает".
Как то давно в году 95-96 написал программку для себя. Программка выводила ASCII коды. Формат вывода (ASCII код) - (шестнадцатеричное или десятеричное значение). То есть выводился ASCII символ (нулевой) потом пробел, потом тире, опять пробел и потом десятеричное значение. Далее переход на следующую строчку брался следующий символ и операция повторялась и т.д. Получилось что то типа таблицы в несколько колонок. Писал я программку в машинных кодах (почти). Клавиши управления (D-десятичное значение, H-шестнадцатеричное значение, стрелка вверх\вниз-на строчку вниз\вверх, и две клавиши сразу на начало таблицы и на конец таблицы). Все это удовольствие заняло 294 байта. Это ехе файл (минус 32 байта ехе заголовок). Мне стало интересно, сколько место займет этот же алгоритм на других языках? На ассемблере больше 2 Кб. На Паскале около 6 Кб. Если на ассемблере похоже было, то на Паскале движение только вниз и только десятичный вывод.
0
Эксперт .NET
 Аватар для Usaga
14733 / 9507 / 1363
Регистрация: 21.01.2016
Сообщений: 35,861
02.01.2026, 12:00
Цитата Сообщение от Dmitriy_SD Посмотреть сообщение
Мне стало интересно, сколько место займет этот же алгоритм на других языках?
А это правда имеет значение?.. Это же не речь о прошивке микроконтроллера...

На Go такая программка займёт примерно 1.5МБ, на C# - несколько десятков килобайт, но нужен будет рантайм (+90Мб или больше).

Выжимание каждого байта имеет цену - время разработки и, иногда, снижение производительности (разворачивание циклов, инлайнинг, таблицы переходов - всё в таком духе).
0
1 / 2 / 0
Регистрация: 29.10.2020
Сообщений: 27
02.01.2026, 16:10
Цитата Сообщение от Usaga Посмотреть сообщение
А это правда имеет значение?.. Это же не речь о прошивке микроконтроллера...
Если разговор идет об операционной системе, то думаю да, особенно для написания ядра.
Цитата Сообщение от Usaga Посмотреть сообщение
Выжимание каждого байта имеет цену - время разработки и, иногда, снижение производительности (разворачивание циклов, инлайнинг, таблицы переходов - всё в таком духе).
Выжиманием каждого байта я не занимался. Если бы я этим занялся, думаю ещё бы байт 100 убрал, примерно. Время разработки бесспорно увеличиться, но не на много. Особенно если подойти к этому с умом.
0
Эксперт .NET
 Аватар для Usaga
14733 / 9507 / 1363
Регистрация: 21.01.2016
Сообщений: 35,861
04.01.2026, 15:16
Цитата Сообщение от Dmitriy_SD Посмотреть сообщение
Особенно если подойти к этому с умом.
Это ключевой момент) Если начать подходить с умом к работе, то может оказаться, что не везде и всюду это выжимание байтов нужно)
0
Заблокирован
25.03.2026, 23:52
Цитата Сообщение от Dmitriy_SD Посмотреть сообщение
Оптимизация кода, я думаю, будет ещё долго ценным качеством.
Одна минута смеха продлевает человеческую жизнь на 15 минут.
Всем здоровья.
0
Нарушитель
7097 / 2328 / 353
Регистрация: 10.12.2013
Сообщений: 8,048
26.03.2026, 09:47
Цитата Сообщение от 000d60 Посмотреть сообщение
Одна минута смеха продлевает человеческую жизнь на 15 минут.
перед казнью он любил рассказать палачу пару-тройку анекдотов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.03.2026, 09:47

создание сайта с нуля
привет форумчане, есть задача написать свой сайт, который: 1. Имеет обычную и мобильную версию 2. помимо статичной инфы, на нем...

Создание такого bg c нуля
Гайс, помогите найти урок как такой бг делать, я чет так и не смог найти

Создание сайта с нуля
Здравствуйте! Из языков программирования знаю только C и C++; С нуля создать одностраничный сайт, где на странице будет написано...

Создание шаблона с нуля!
Кто то хочет научиться?

Создание БД MySql с нуля
Есть задание сделать БД MySql в локальной сети,которая будет лежать на сервере(WINdows 2003),из которой будут тянутся данние для внешней бд...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
198
Ответ Создать тему
Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru