Forth http://fforum.winglion.ru/ |
|
обсуждение идей by mOleg http://fforum.winglion.ru/viewtopic.php?f=16&t=1342 |
Страница 1 из 1 |
Автор: | mOleg [ Пт июн 06, 2008 18:00 ] |
Заголовок сообщения: | |
Alexander писал(а): Так и не долго до организации базы данных... Идея не нова. я не утверждал, что идея нова;) я уверено, что она лучше всего подходит для решения поставленной задачи. Alexander писал(а): Надо в ядре организовать менеджер динамической памяти, потом немного механизмов из создания баз даных, тогда любой процесс есть таблица с полями одно из которых надо исполнить.
а вот это перебор. Не надо одно из полей исполнять но менеджер динамической памяти должен быть в ядре, об этом я уже давно говорю |
Автор: | вопрос [ Пт июн 06, 2008 18:12 ] |
Заголовок сообщения: | |
Цитата: Я предлагаю использовать модель памяти по типу сегментной, точнее, механизма, аналогичного селекторам, которые поддерживает ix86 архитектура. А именно, любой адрес в памяти ОС представлять парой чисел: id:disp - идентификатор блока и смещение внутри него. Это должно бы значить: инженеры Интел хорошо думали, предлагая модель. И, пожалуй, это правда.
Теперь спросим - как это реализуется на процессорах, не поддерживающих аппаратно интеловские механизмы ? |
Автор: | mOleg [ Пт июн 06, 2008 18:25 ] |
Заголовок сообщения: | |
вопрос писал(а): Теперь спросим - как это реализуется на процессорах, не поддерживающих аппаратно интеловские механизмы ?
а это уже было, можно сравнительно быстро. В любом случае переключение между кольцами задач будут больше времени жрать. А тут можно на любой проц, даже без поддержки многозадачности, даже на 16битный один и тот же алгоритм работы кроме того, критичный по времени код можно перетаскивать в область ядра без нарушения защиты. |
Автор: | mOleg [ Пт июн 06, 2008 18:37 ] |
Заголовок сообщения: | |
mOleg писал(а): а это уже было, можно сравнительно быстро.
правда там, я пошел еще дальше, и предложил вариант ФВМ который может быть и другим |
Автор: | Alexander [ Пт июн 06, 2008 18:44 ] |
Заголовок сообщения: | |
А насчет памяти мыслится так: конечно плоская модель уступает модели с сегментацией, только вот что понимать под сегментом? Предлагаю под сегментом понимать адресное пространство выделенное для процесса. Следовательно в ядре должна быть некая таблица для хранения инфы. По поводу ID:DISP, тут мне мыслится, что под ID надо понимать идентификатор процесса, а под DISP точки входа в функции, к которым можно обращаться из вне, по началу из ядра. |
Автор: | mOleg [ Пт июн 06, 2008 18:52 ] |
Заголовок сообщения: | |
Alexander писал(а): А насчет памяти мыслится так: конечно плоская модель уступает модели с сегментацией, только вот что понимать под сегментом? еще раз, не сегментная, а ТИПА СЕГМЕНТНАЯ, в данном случае есть некая ячека в памяти, которая содержит базовый адрес, блока памяти, а мы адресуем память относительно содержимого этой ячейки и смещения внутри блока. Читайте про селекторы в ix86 архитектуре. Alexander писал(а): Предлагаю под сегментом понимать адресное пространство выделенное для процесса. НЕТ! для каждого процесса будет потенциально 2^32 селекторов (понятно, что не все их придется в реальности использовать). Alexander писал(а): По поводу ID:DISP, тут мне мыслится, что под ID надо понимать идентификатор процесса,
нет, ID - это точка входа, а DISP смещение при доступе к памяти по записи и чтению. |
Автор: | mOleg [ Пт июн 06, 2008 18:54 ] |
Заголовок сообщения: | |
короче, таблиц трансляции адресов (или как их лучше обозвать? ) будет столько, сколько у нас пользовательских процессов + количество процессов ядра (их может быть много, так как это зависит в частности от того, как устроено ядро). |
Автор: | Alexander [ Пт июн 06, 2008 19:01 ] |
Заголовок сообщения: | |
Глобальная таблица трансляции адреса, локальная таблица трансляции адреса, а они не перекроются? эффективный адрес относителен по отношению к локальной таблице, а адрес последней относителен по отношению глобальной, т.е. для вычисления адреса надо два сложения применить. Правильно?! |
Автор: | Pretorian [ Сб июн 07, 2008 07:04 ] |
Заголовок сообщения: | |
Это все хорошо, что дошли до памяти, но надо же с инструментами для форт ос определится. |
Автор: | mOleg [ Сб июн 07, 2008 17:45 ] |
Заголовок сообщения: | |
Pretorian писал(а): Это все хорошо, что дошли до памяти, но надо же с инструментами для форт ос определится.
что понимать под инструментами? Начинать НЕОБХОДИМО с модели памяти - это база, остальное частично вытекает из того, как система видит память. |
Автор: | Pretorian [ Пн июн 09, 2008 06:01 ] |
Заголовок сообщения: | |
mOleg писал(а): что понимать под инструментами?
На чем писать будем код. |
Автор: | mOleg [ Пн июн 09, 2008 07:40 ] |
Заголовок сообщения: | |
смотря что. Для того, чтобы отладить ФВМ, и менеджер памяти можно использовать СПФ. Собственно, прелестью предложенной модели является возможность отлаживать практически всю многозадачку без привлечения большого количества инструментов - достаточно СПФа |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |