gcc. указатель, адресация в rmode, pmode и страницы
От: Ovl Россия  
Дата: 16.11.07 10:17
Оценка:
Добрый день. Спасибо за внимание и ваши ответы.

Занимаюсь написанием ос.
Что уже успел попробовать: исходный код на асм, с использованием grub запускается, может создавать сегменты, вывести на экран строчку.
Что хочется: использовать gcc компилятор или аналог для того, чтобы был код понятнее.

В идеале: есть исходники написанные на с (?), собранные с помощью gcc в бинарник. асм-загрузчик делает минимальные действия по переходу в pmode (устанавливает сегменты кода,стека,данных), загружает в сегмент кода этот бинарник и прыгает туда.

Вопрос: адресация в pmode другая, если будут страницы — ещё посложнее, поскольку созданием и использованием оных должно заниматься ядро. Однако при компиляции gcc понятия не имеет как будет организована работа с памятья. для него void* это реальный физический адрес? как ему сказать что при использовании char* p у меня этот указатель будет ориентирован на такой то сегмент. про манипулированием страницами я разберусь, я не могу понять саму философию — если компилятор сам создаст мне опкоды, то как он узнает в каком режиме я нахожусь (rmode, pmode) и что будет использоваться при адресации — сегмент (со страницами или без), реальная память.

Знаю, что в линуксе ядро так и написано — часть асм, часть си. Исходники ядра в наличии (линуксовый диалект асма не смущает). Но не могу найти точку входа в бинарник написанный на си, и не место где написано с какими опциями компилятора собрано ядро.

Вопрос сумбурный, потому что с точки зрения асма — все прозрачно. Возможно его можно сформулировать проще: как подкрутить более высокий язык, чтобы генерировался "правильный" машинный опкод для того, или иного режима.

Спасибо ещё раз.
ответы и ссылки можно присылать также по icq 44836064 и мылу (в профайле)
Read or Die!
Как правильно задавать вопросы
Как правильно оформить свой вопрос
Автор: anvaka
Дата: 15.05.06
Re: gcc. указатель, адресация в rmode, pmode и страницы
От: Ovl Россия  
Дата: 16.11.07 10:53
Оценка:
Niklaus Wirth "Designing a System from Scratch"

вот наверно и ключ ответу на мой вопрос надо посмотреть на книжицу
Read or Die!
Как правильно задавать вопросы
Как правильно оформить свой вопрос
Автор: anvaka
Дата: 15.05.06
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.