Search found 21 matches

by wolf.ram
Thu Jul 01, 2010 8:00 pm
Forum: Design
Topic: Ядро и C
Replies: 38
Views: 32785

Re: Ядро и C

Mario wrote:wolf.ram
Мне кажется прямая линковка с Асм кодом кода Си не самая лучшая идея. Можно же в виде подгружаемых модулей реализовывать.
Ну я просто дёргал код из обработчика прерывания от таймера. Так что модулем тут никак.
by wolf.ram
Thu Jul 01, 2010 6:14 am
Forum: Design
Topic: Ядро и C
Replies: 38
Views: 32785

Re: Ядро и C

Гы. Забавно, что утверждение о том, что переход на си может увеличить скорость, находится в одном посте с методом, позволяющим эту самую скорость просадить из-за разрушения буфера пар call/ret (и вытекающим отсюда простоем декодера, вынужденного ждать, пока до ret непосредственно дойдёт управление,...
by wolf.ram
Wed Jun 30, 2010 8:06 pm
Forum: Design
Topic: Ядро и C
Replies: 38
Views: 32785

Re: Ядро и C

хм, интересно такое "в принципе" возможно? было бы здорово если все так гладко было бы Можно. И не только «в принципе», но и на практике. Руководство: В самое начало файла kernel.asm впихиваем директиву «format ELF», чтоб фасм делал объектники. В самый конец файла kernel.asm вписываем «rb...
by wolf.ram
Tue Jun 29, 2010 7:16 pm
Forum: Design
Topic: Ядро и C
Replies: 38
Views: 32785

Ядро и C

Пытаюсь прикрутить к ядру немного сишного кода. Но fasm ругается. Но обо всём по порядку. Если просто вписываю в файл kernel.asm в начало строку format elf, получаю ELF-объектник, линкую его ld как бинарь с началом адресов в 0x00, то ядро запускается и работает так же, как и просто скомпиленное сраз...
by wolf.ram
Sat Jul 25, 2009 12:42 pm
Forum: Kernel
Topic: Таймер
Replies: 46
Views: 36608

Re: Таймер

Cкосится. Планировщик переключает задачи на каждом тике. Почему ? Надо спросить у Вилле . Хех, ну так-то смысл изменения частоты таймера был в том, чтоб сделать переключение задач чаще, а значит сделать работу системы более "мягкой". Только при этом сбивалось время, вот я и поправил этот ...
by wolf.ram
Fri Jul 24, 2009 11:37 pm
Forum: Kernel
Topic: Таймер
Replies: 46
Views: 36608

Таймер

Подправил в ядре работу с таймером. А точнее - сделал счетчик миллисекунд, прошедших с начала запуска, более независимым от частоты таймера. Частоту таймера можно настраивать при компиляции ядра, в файле const.inc. Публикую сдесь, ибо как SVN-ами пользоваться не учен, а diff-ы выкладывать - так мног...