Решил писать свою ОС. Знаний хватает, но не хватает опыта В общем попрошу подсказать мне, с какими проблемами придется столкнуться.
02.07.2003 19:17:57
Решил писать свою ОС. Знаний хватает, но не хватает опыта В общем попрошу подсказать мне, с какими проблемами придется столкнуться.
|
|
|
|
02.07.2003 19:19:33
Первая и ИМХО единственная проблема с которой тебе придется столкнуться - это понять зачем ты это делаешь
Остальное уже дело техники. ;------- ;NK |
|
|
|
02.07.2003 19:30:28
Еще добавлю, что отлично знаю С++ и на нормальном уровне ассемблер. Но хотелось бы писать на с++ с ассемблерными вставками
|
|
|
|
02.07.2003 19:37:40
Первая проблема при написании ядра ОС проявляется в отсутствии системно независимой библиотеки стандартных функций Си. Таким образом всё необходимое из привычных средств придётся написать самому.
Нужно обратить внимание на формат исполняемых модулей, генерируемых компилятором и/или компоновщиком. Так, например, использование Win32 PE формата в своей ОС врядли вас удовлетворит — слишком много DOS/Windows-зависимых фрагментов, сложность применения. Но и использование простого неформатированного ядра (BINARY или аналогичного MS-DOS COM) невозможно в ряде случаев, например, если ОС предполагает использование единого общего адресного пространства. В общем, выбор определяется системной организацией памяти будущей ОС: если используется страничная адресация или другой метод изоляции и позиционирования адресного пространства программ, то формат PLAIN BINARY нам подойдёт (см. MenuetOS). Если же используется единое адресное пространство или возможность динамического связывания (DLL), то нам нужен перемещаемый (relocatable) формат, такой, например, как COFF Object, ELF Object, Win32 DLL, содержащий ссылки на адреса, которые необходимо исправлять при размещение исполняемого модуля в памяти. |
|
|
|
02.07.2003 19:43:52
Вопрос зачем определит дальнейшую политику написания ОС. Если она не должна быть многофункциональной, то возможно не понадобится вообще думать на тему GUI, multitasking и т.д. Существует мнение, что для решения расчетных задач на мощных вычислительных системах лучше вообще обходиться без OC а писать расчетную программу, которая будет напрямую использовать железо.
|
|
|
|
02.07.2003 19:47:10
Верно, но вопрос стоит именно про ОС, а не расчетную программу. Но и расчетная программа должна как-то выполняться, иметь какой-нить интерфейс для получения / сохранения данных... В реале я не встречал подобных комплексов. Как правило такой софт работает под управлением микроОС, либо выполнен полностью в железе (ИМО транспьютеры так и сделаны). |
|||
|
|
02.07.2003 20:22:42
Однокурсник на дипломку ОСь писал, получилось смесь nixа и ДОСа. Ушло у него на это 2 года GUI нету, сетивой поддержи тоже, однопоточная. Писал он ее полностью на асме.
|
|
|
|
02.07.2003 20:28:42
2User_4x: долго ж он её писал... =) Видно пива было слишком много... =)
Реально такая фишка пишется где-то за четыре-пять месяцев, потом ещё пару-тройку на отладку. Правда надо очень хорошо знать ассемблер. |
|
|
|
02.07.2003 20:45:28
Кстати, Unix первоначально писалась американскими спец службами для внедрения в СССР, чтобы отбросить нашу науку на несколько лет назад. Но что из этого вышло...
Я это к тому, что вдруг товарищ напишет свою ОСь и переплюнит Билли по продажам? А? Будет Freeman OS. Звучит! |
|
|
|
02.07.2003 20:47:37
Ты не прав. Юникс разрабатывался в недрах DARPA как внутренняя OS, но никак не диверсионная штука.
Звучит, конечно, здорово, только много лет товарищ упустил, да и один он... |
|||||
|
|
02.07.2003 21:03:28
Операционная системв Unix ведет свое происхождение от разработанной Ф.Корбато(F.Corbato) из MIT'a в начале 60-х годов системы CTSS(Comprehensive time-Sharing System). Оценив преимущество многопользовательной многозадачной системы, компания General Electric AT&T Bell Labs и MIT начали проект названный MULTICS....
В начале 1968 года Руд кенедей,Дуг МакИлрой,Денис Ричи и кен Томпсон подробно обсудили, что нужно сделать для спасения некоторых идей, связанных с проектом MULTICS и начили собственное иследование..... Питер Нейман назвал новую операционную систему Uniplexed Information and Computer Service(UNICS далее кто то изменил это название на UNIX)...... Hungry Minds - Unix |
|
|
|
02.07.2003 21:06:14
А это ][акер писал.
|
|
|
|
03.07.2003 18:37:30
Будет время - тоже поробую.
|
|
|
|
03.07.2003 19:07:25
MishaSt, все попробовать не только времени - жизни не хватит лучше бы пробовать более насущные вещи...
|
|
|
|
04.07.2003 07:06:21
Осей много, и кому они нужны, а вот ось с ногами - это рулёз
|
|
|
|
04.07.2003 07:44:20
Есть у меня планы приладить к одной emedded OS, "ноги" Только вот ещё не определился со способом размножения... А если ещё под ней будет управляющая программа работать с AI, вообще электронно-виртуальный кибер-организм получится. Вот на это я считаю стоит потратить личное свободное время. ОС с сетевыми драйверами (самых распространённых сетевых адаптеров)+ FS: FAT, + linux native, telnet, ftp ~ занимает 500-800 Кб. Осталось программы размножения и управляющую придумать и запускать ОС по сетям. |
||||
|
|
|||