Нельзя (невозможно) сразу переделать ядро и понаписать кучу серверов/сервисов. Это должен быть постепенный процесс. Начни с планирования этого процесса. Разработай и реализуй, к примеру, инфраструктуру сервисов в ядре (системе). Тут хотелось бы предусмотреть стабильность системы, как в Minix3. Реанкарнация, вырубания процессов и пр. Это можно внедрять в текущее ядро, без его полной переделки, так ведь?
p.s. Кстати хотелось бы заиметь драйвер вроде giveio ;-).
..bw
Давайте напишем МИКРО ЯДРО
Я, в общем-то, смчитаю немного по-другому... Я считаю более нужным вынести все это постепенно из самого ядра... В текущем проекте. Т.е. вы предлагаете мне разрабатывать свое ядро? Или все-таки, есть возможность обсудить это с другими участниками проекта и уже не заниматься "отсебятиной"? А переделывать ядро придется полностью и не один раз, а много. Оно будет вылизываться непрерывно, на протяжении всей жизни проекта. Так вот, хотелось бы сделать эти переделки более редкими, и пошаговыми (внедрение в текущее ядро)...
Врядли ядро Minix3 или ядра L4 будут часто переписываться . Если говорить о текущем ядре, то да, оно еще очень долго очень часто будет подвергаться модификации. Мне вообще казалось, что я объяснился достаточно ясно, ну что ж, повторюсь. Я считаю утопией переписывать ядро с 0 и одновременно делать сервера для видео, звука и всего остального. Нужно разработать инфраструктуру микроядра для текущего и постепенно переносить "драйвера" в сервисы/сервера. Этим вполне (по моему мнению) может занять один человек, без согласования. Если бы у меня хватило квалификации, я бы занялся такой модификацией ядра самостоятельно, а не разглагольствовал тут.
p.s. Предпочтительнее на ТЫ.
..bw
p.s. Предпочтительнее на ТЫ.
..bw
Я не зря упомянул giveio. Мне проще разрабатывать (или просто ковырять) драйвера и приложения, если нет необходимости лезть в код ядра и что-то там менять. Я, например бы, попробовал написать несложное приложение для работы с тюнером на bt878. Разобрался бы с видео VMware. Может еще чем помог бы. Причем скорее всего на FreePascal, а не на Assembler'е, который я несколько не долюбливаю .
..bw
..bw
Ну, не совсем ты меня понимаешь, или я какую-то хрень совсем несу... Нужно это делать не одному человеку... По-крайней мере. прорабатывать желаемую концепцию ядра, да и всей системы в общем, разработать моджель памяти, принять внутренние стандарты... Только после этого можно начинать собственно говоря, модификацию... Чтобы не получилось нечто неудобоваримое, чтобы все было как можно более идеально. И чтобы была поддержка со стороны других разработчиков.. Ато моя модификация может повлиять на модель памяти (я считаю, что так лучше), и в результате... Это всего лишь пример...
Понятно.
Просто я недостаточно ориентируюсь в вопросах и как обсуждаемая модификация/доработка до микроядра скажется на модели памяти не понимаю.
Но перенос "драйверов" на уровень приложений подстегнуло бы разработку KolibriOS. (Лично мне было бы значительно проще.)
..bw
Просто я недостаточно ориентируюсь в вопросах и как обсуждаемая модификация/доработка до микроядра скажется на модели памяти не понимаю.
Но перенос "драйверов" на уровень приложений подстегнуло бы разработку KolibriOS. (Лично мне было бы значительно проще.)
..bw
Да, я тоже так считаю... Это было бы проще... Но нужно обговорить концепцию, да и надо ли вообще это все? Если да, то переходить к микроядру уже постепенно, от существующего, по возможности оставляя обратную совместимость...
Думаю понятно что я, да и не один я, высказался в пользу архитектуры микроядра. И понятно что мгновенный переход невозможен. Остается только вариант постепенного перехода. Буду ждать и с интересом наблюдать за переходным периодом (помогу чем смогу).
..bw
..bw
bw
Это в винде для доступа к портам ввода-вывода с прикладного уровня нужно писать драйвер типа giveio. В Menuet/Kolibri поддержка такого уже есть на уровне API (функция 46 - зарезервировать/освободить группу портов).
Это в винде для доступа к портам ввода-вывода с прикладного уровня нужно писать драйвер типа giveio. В Menuet/Kolibri поддержка такого уже есть на уровне API (функция 46 - зарезервировать/освободить группу портов).
Ушёл к умным, знающим и культурным людям.
У меня не вышло. Есть такое мнение что этими функциями можно пользоваться только из ядра или драйверов.
..bw
..bw
))) Смотри GMon
P.S. порты из диапазонов :
0x00-0x2d
0x30-0x4d
0x50-0xdf
0xe5-0xff
резервировать нельзя, см. kernel.asm reserve_irqs_ports
P.S. порты из диапазонов :
0x00-0x2d
0x30-0x4d
0x50-0xdf
0xe5-0xff
резервировать нельзя, см. kernel.asm reserve_irqs_ports
...или документацию на функцию 46. Там подробно описаны уже зарезервированные порты и возможные причины неудач.
To Mario79
х86 это вообще мазохизм, один Intel Arch Manual чего стоит, травы там немеряно
[/b]To w-tools[/b]
Увы, да, кривой. Собственно, если применять микроядро к строительству ОС на х86, то неизбежно возникнет проблема - что делать с overhead-ом при переключении контекстов на подсистемы в userspace и пересылке данных туда-сюда (ring3->ring0)?
х86 это вообще мазохизм, один Intel Arch Manual чего стоит, травы там немеряно
[/b]To w-tools[/b]
Увы, да, кривой. Собственно, если применять микроядро к строительству ОС на х86, то неизбежно возникнет проблема - что делать с overhead-ом при переключении контекстов на подсистемы в userspace и пересылке данных туда-сюда (ring3->ring0)?
Берётся в руки http://l4ka.org/projects/pistachio/l4-x2-r5.pdf и пишется по спецификации на ассемблере.
Тот, кто это сделает, увековечит своё имя в компьютерной истории. Естественно, при условии качественной реализации.
Тот, кто сможет воплотить эту спецификацию в коде на Verilog/VHDL, обеспечит себя и свою семью на несколько поколений.
Помяните моё слово.
Тот, кто это сделает, увековечит своё имя в компьютерной истории. Естественно, при условии качественной реализации.
Тот, кто сможет воплотить эту спецификацию в коде на Verilog/VHDL, обеспечит себя и свою семью на несколько поколений.
Помяните моё слово.
Учитесь! (3 days ago)
#3. OS на Rust - Создание куч (heaps). https://www.youtube.com/watch?v=PNvfh2L_BmQ
...
А, "Вы" тут в ассемблер упарываетесь.
P.S. Интересно, сколько лет автору видео.
#3. OS на Rust - Создание куч (heaps). https://www.youtube.com/watch?v=PNvfh2L_BmQ
...
А, "Вы" тут в ассемблер упарываетесь.
P.S. Интересно, сколько лет автору видео.
Who is online
Users browsing this forum: No registered users and 10 guests