Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вопрос по созданию ос

76K
27 ноября 2013 года
zelyak2
13 / / 27.11.2013
Однажды я поспорил с другом, что создам ос. Потом я уехал в другой город, но желание не пропало. Я перерыл весь интернет в поисках информации, но ничего ценного так и не нашёл. Однако мне удалось разобраться в том, что делает ос, ка она работает, и какие бывают ос. На основе этой информации я синтезировал свою ос
В первой версии моей ос я планирую сделать аллокатор оперативной памяти, который, при запуске будет создавать два взаимодействующих процесса: обработчик клавиатуры, который будет считывать введённые символы и передавать их процессу отвечающему за вывод сообщений на экран.

Пока что возник вопрос как работает аллокатор памяти и как его реализовать. Помогите чем сможете.
Страницы:
360
11 декабря 2013 года
P*t*
474 / / 15.02.2007
Цитата: mnanorn
Еще один вопрос сразу встанет: при переключении процессора в защищенный режим BIOS станет не доступен. Значит, как минимум, нужны драйвера для диска, чтобы программа продолжила работу. SATA и IDE - это стандартизированные интерфейсы, как я понимаю?



Я в этой ситуации написал драйвер дискеты. Всё замечательно работало в эмуляторе, но компьютер почему-то с моей дискеты грузиться отказался.
Потом энтузиазм закончился и на этом написание своей ОС для меня закончилось.

76K
11 декабря 2013 года
zelyak2
13 / / 27.11.2013
Вот наконец-то нашлось время. Я переделал мою резидентную программу.
Вот код. Уже работает.

Код:
; чтение символов и вывод на экран
; --------------------------------

[ORG 0x7C00]

start:

cli
mov ax, cs
mov ds, ax
mov ss, ax
mov sp, start
sti

keyboard:
mov ah, 00h
int 0x16
test al, al
jz keyboard
jmp print

print:
mov ah, 0x0E
int 0x10
jmp keyboard

times 510-($-$$) db 0
db 0xAA, 0x55
252
14 декабря 2013 года
koderAlex
1.4K / / 07.09.2005
Цитата: mnanorn
Еще один вопрос сразу встанет: при переключении процессора в защищенный режим BIOS станет не доступен. Значит, как минимум, нужны драйвера для диска, чтобы программа продолжила работу. SATA и IDE - это стандартизированные интерфейсы, как я понимаю?


не совсем так . 32-битные сервисы биоса вполне доступны .
скачайте список прерываний ральфа брауна и изучайте .

76K
17 декабря 2013 года
zelyak2
13 / / 27.11.2013
Люди помогите разобраться. Хочу сделать программу вывода символов на экран в 32х-битном режиме и не могу понять как мне считать нажатый символ.
27K
17 декабря 2013 года
mnanorn
78 / / 01.12.2013
Цитата: koderAlex
Цитата: mnanorn
Еще один вопрос сразу встанет: при переключении процессора в защищенный режим BIOS станет не доступен. Значит, как минимум, нужны драйвера для диска, чтобы программа продолжила работу. SATA и IDE - это стандартизированные интерфейсы, как я понимаю?


не совсем так . 32-битные сервисы биоса вполне доступны .
скачайте список прерываний ральфа брауна и изучайте .


Интересно будет изучить. Я сильно отстал. Для меня BIOS так и остался в представлении вшитым в ROM ядром DOS. :)

360
17 декабря 2013 года
P*t*
474 / / 15.02.2007
Цитата: zelyak2
Люди помогите разобраться. Хочу сделать программу вывода символов на экран в 32х-битном режиме и не могу понять как мне считать нажатый символ.



Про 32-битные сервисы биос я ничего не знаю, поэтому: вывод символа путем записи напрямую в видеопамять, для чтения символа можно обращаться к клавиатуре через порты 0x60, 0x61.
Но вам это пока рано.
Очень советую сначала как следует разобраться с 16-битным режимом и научиться пользоваться гуглом.

252
20 декабря 2013 года
koderAlex
1.4K / / 07.09.2005
Цитата: zelyak2
Люди помогите разобраться. Хочу сделать программу вывода символов на экран в 32х-битном режиме и не могу понять как мне считать нажатый символ.


вешаете свой обработчик прерывания на вектор IRQ1 . в обработчике читаете сканкод . сканкод преобразуете в аскикод или юникод и передаёте куда вам надо .

63K
28 декабря 2013 года
Max1548
13 / / 10.12.2011
Рекомендую почитать уроки James Molloy по osdev'y, хоть и на английском, но объяснено хорошо и понятно. Также советую Википедия по осдеву. Можешь ещё почитать фантомовский блог. Есть российский форум, конкретно по осдеву.

А так, если будут вопросы - пиши или в ЛС или на том форуме.
326
28 декабря 2013 года
sadovoya
757 / / 19.11.2005
Цитата:
хоть и на английском


Вот английский в первую очередь и надо знать ОС-разрабу. Ибо системное программирование в основном состоит из переваривания бесконечных спецификаций и т.п. техдокументации и сплошь на инглише.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог