Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Пн дек 18, 2017 11:37 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 23 сообщения ]  На страницу Пред. 1 2
Автор Сообщение
 Заголовок сообщения: Re: Ядро - концепция работы
СообщениеДобавлено: Вс янв 18, 2009 11:26 pm 
Не в сети

Зарегистрирован: Вс мар 11, 2007 4:05 pm
Сообщения: 64
Есть еще маленький недостаток дело в том, что виртуальная файловая система посути отсутствует и передает код напрямую файловой системе того устройства к которому идет обращение. А та в свою очередь использует прямое чтение с диска используя свои функции. Так что NFTS не знает ничего о DMA с его кэшами. Тоже самое и для сд-дисков там ISO.

Так что пост выше относиться по большей части к FAT 32 и жестким дискам.

Полное отсутствие структуры.

Это не препядствие для введение SATA, но прежде всего необхадимость ввести структуру и начать все переписывать. Так как в противном случии SATA будет рабоать местами.

PS. Возможно мои данные устарели.

_________________
http://wiki.osdev.ru/


Вернуться к началу
 Заголовок сообщения: Re: Ядро - концепция работы
СообщениеДобавлено: Пн янв 19, 2009 2:13 am 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн ноя 28, 2005 8:00 pm
Сообщения: 1601
Насчёт того, что вышеприведённое относится только к жёстким дискам, а код поддержки iso на CD/DVD напрямую обращается к физическому чтению с CD/DVD (аналогичная ситуация с FAT12 на дискетах) и совершенно никак не связан с жёсткими дисками, согласен. А вот то, что код поддержки NTFS ничего не знает о DMA, неверно и никогда (если брать временные рамки существования и того, и другого) не было верно - всё-таки для жёстких дисков некоторая абстракция есть и все вызовы от кода поддержки файловых систем NTFS и FAT32 проходят через две конкретные процедуры (hd_read/hd_write), уже внутри которых осуществляется перенаправление на нужные физические процедуры (PIO/DMA/V86).
Ну а вещи насчёт SATA и vfs обсуждаются здесь: viewtopic.php?f=1&t=1101


Вернуться к началу
 Заголовок сообщения: Re: Ядро - концепция работы
СообщениеДобавлено: Ср дек 23, 2009 1:49 am 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
diamond писал(а):
...начальный кусок системных адресов [OS_BASE, OS_BASE + a), где OS_BASE = 0x80000000 (const.inc), маппится на начало физической памяти [0,a) "почти тривиально" - вычитанием OS_BASE; в этот кусок входит само ядро и все системные таблицы ...


А как маппится самая верхняя зона физической памяти, куда BIOS обычно конфигурирует адреса MMIO-блоков PCI-устройств (видеопамяти, аудио- и сетевых буферов, SATA, USB и т.п.)?

В init.inc этого нет. Возникают 2 наивных предположения:
1) используется еще более тривиальный маппинг (phys = virt) для всего пространства выше [0,a)
или
2) ядро вообще не производит инициализации страниц для MMIO, оставляя это хлопотное дело драйверу
?

_________________
Узкий специалист подобен флюсу: полнота его - односторонняя.
Козьма Прутков


Вернуться к началу
 Заголовок сообщения: Re: Ядро - концепция работы
СообщениеДобавлено: Ср дек 23, 2009 11:09 am 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн ноя 28, 2005 8:00 pm
Сообщения: 1601
art_zh
Второе. Для этих целей ядро экспортирует функцию MapIoMem (это имя для драйверов, реализация в map_io_mem из core/memory.inc), которая выделяет память ядра и маппит туда указанный диапазон физической памяти с указанными флагами. Как вариант, то же самое можно сделать через AllocKernelSpace и MapPage.


Вернуться к началу
 Заголовок сообщения: Re: ВАЖНО!!! Ядро - концепция работы
СообщениеДобавлено: Пн сен 26, 2011 9:51 pm 
Надо бы эту информацию на WIKI перенести, а то каждый раз чертыхаясь ищу эту тему, когда вновь приходящие люди начинают фундаментальные вопросы задавать. Может кто перенесет?


Вернуться к началу
   
 Заголовок сообщения: Re: ВАЖНО!!! Ядро - концепция работы
СообщениеДобавлено: Пн сен 26, 2011 11:39 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
Уже полтора года там

http://wiki.kolibrios.org/wiki/Kernel/ru


Вернуться к началу
 Заголовок сообщения: Re: ВАЖНО!!! Ядро - концепция работы
СообщениеДобавлено: Вт сен 27, 2011 1:58 am 
Замечательно. Просто иногда начинаешь рефлексивно вспоминать что и где (не так уж часто новички задают фундаментальные вопросы) и никак не можешь вспомнить. Вроде еще не старый (в ноябре 32 года будет), но забываешь напрочь - хорошо хоть что-то в виде зацепки в голове остается.


Вернуться к началу
   
 Заголовок сообщения: Re: ВАЖНО!!! Ядро - концепция работы
СообщениеДобавлено: Вт сен 27, 2011 1:48 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 788
Это, кстати, проблема связности вики. По-идее не должно быть страниц без ссылок на них, и даже больше чем одна, ну и все в таком роде. Я уже часто сталкивался с подобной проблемой.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 23 сообщения ]  На страницу Пред. 1 2

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB