Gudleifr: Все сообщения за 12 Марта 2014 года

 
ПнВтСрЧтПтСбВс
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

Gudleifr

опытный

Veden12> На каждое ядро процессора...
Ну это уже никак не подходит под термин "встраивание". Это уже будет целиком своя ОС.

Да, кстати, вопрос встраивания содержит любопытную ловушку:
mak44> Как правило, для работы с файлами в ядре ОС используются стандартные Си функции.
Это неверно. Стандартные Си функции идут через файловую систему и, очевидно, в ядре использованы быть не могут. (В ядре Linux, например, вместо обычной printf() используется специальная ядреная kprintf()).
Очень часто в подобных рассуждениях встречается замкнутый круг: FORTH вызывает низкоуровневую (как он думает) функцию, а та - снова FORTH. Любой, писавший свой FORTH, вспомнит, как при развертывании системы хотелось использовать еще не определенное слово.
 3.63.6
Это сообщение редактировалось 12.03.2014 в 11:19

Gudleifr

опытный

Veden12> Ни в коем случае.
Ну, я пытался провести границы между писанием ОС, внедрением (тьфу, встраиванием) в ОС и писанием под ОС. Вопрос отсутствия ОС не рассматривался.

Veden12> ОС - конструктор, не имеющий своей цели.
Почему же? "Оболочка железа", которая должна обладать требуемыми параметрами.
Этак, любая "программа с вводом" (по Муру) "не имеет цели".
 3.63.6
Это сообщение редактировалось 12.03.2014 в 20:55

Gudleifr

опытный

Veden12> Некогда это [отсутствие ОС] было нормой... ОС - программа для программ. Поэтому простой и понятной человеческой цели у неё нет.
Все зависит от определения ОС... Нет, вру, от качества. Хорошей ОС любой источник/приемник сигналов/данных/команд - пользователь. (Например 'nix-ам и устройства, и программы, и пользователи кажутся файлами).
С другой стороны, за каждым документом, программой и устройством стоит человек, который рассчитывает, что ОС правильно поймет то, что он сделал. И считать, что "на том" конце программа, а не человек, ее написавший, это одна из самых больших ошибок, которую может сделать программист.
В общем, как говаривал классик, программы (тьфу, машины) прибавочной стоимости не производят.
 3.63.6

Gudleifr

опытный

mak44> Зи-за реального режима, не так проста. Вроде, был 32-х разрядная DOS.
Это каким местом защищенный режим проще реального?

mak44> Если разработчики ядра DOS не представляют зачем пользователям может понадобятся недокументированный доступ, это не значит, что сами пользователи не найдут ему применения.
Речь не о документировании, а о закрытии.

mak44> Среди интерпретаторов тоже только Форт предоставляет свое тело в качестве библиотеки
Неверно. Это всегда было нормой. Например, входные точки BASIC-библиотек Спектрума были широко известны.

mak44> Словарь нужен не драйверу, а компилятору с помощью которого он создается. Причем любому, и Си в том числе. Имена меток где-то хранить надо.
Эти замечательные фразы сводят на нет все "FORTH-своеобразие". Если "словари" у всех одинаковые, в чем FORTH-бонус? (И, понятно, FORTH, компилирующий драйвер, не нуждается ни в каком "встраиваниии").

mak44> Только Си не предоставляет прямого доступа к своему словарю.
Это как это? Я не могу в программе использовать адреса функций и метки?
Доступ к процедурам компилятора? Но ведь на момент исполнения его в памяти нет, а на момент компиляции он и так все компилирует...

mak44> С сопрограммами в Форте все в порядке.
С пользовательскими сопрограммами. В ОС все немного не так.

mak44> Проблема при написании обработчика прерываний на форте, при прерывании программы, которая не имеет стека данных.
В чем проблема, если программа не может испортить стек? Вот, если может... см. предыдущий абзац.

mak44> [оптимизатор] заменяет хранение данных на стеке на хранение в регистрах.
Т.е. оптимизированная Вами FORTH-ОС будет работать только немного хуже, чем обычная. За счет удаления из FORTH-ОС FORTH-а. Логично.

mak44> Удалив все кроме поддержки FORTHа мы и получаем ОС уровня DOS-32.
Мы получаем фигню. Систему, которую, с одной стороны, очень трудно исследовать, т.к. ко всем интересностям все равно нет доступа (FORTH о них все равно ничего не знает), а во-вторых, все, что можно легко исследовать (что лежало бы выше), Вы отрезали. И, как я писал ранее, нет никакой нужды во "встраивании". Обрезаете ОС. Пишете под этот обрубок FORTH - и получаете тоже самое.

mak44> Ну можно посмотреть, как в ядре просматриваются конфигурационные файлы.
Никак, но они тут не при чем. Ввод-вывод Си работает по-другому.

P.S. Боюсь, что, Ваш эксперимент по встраиванию того, что Вы плохо понимаете, в то, что Вы тоже плохо понимаете, приведет к тому, что у Вас самого начнут требовать микроплатежи за объяснение матчасти. Извините.
 3.63.6
Это сообщение редактировалось 13.03.2014 в 11:39

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru