Comments 20
А что, AVX не поддерживается?
0
Пока что я не храню половину регистров от различных расширений.
0
FPU похоже тоже? Это же всё-таки математический сопроцессор, а не просто дополнительный набор регистров.
0
Так как обычно функции сохраняют часть регистров в стек,
то можно ли отложить переключение процесса до входа/выхода из функции и сэкономить на сохранении используемых регистров?
Например, по получении прерывания от таймера настроить процессор на выдачу прерывания перед/после инструкций call/ret.
0
Большое спасибо за статью!
0
О поддержке HPET/TSC не думали?
0
Я правильно понимаю, что ядро и все процессы в этой системе работают в едином адресном пространстве? Если это так, то действительно — заявленный выигрыш по производительности может быть существенным, но становится крайне интересным вопрос о защитных механизмах всего этого хозяйства.
0
Хочу заметить, что стек растет вверх(т.е. ESP уменьшается), это значит, что последний регистр, который вы сохранили в стек будет лежать по адресу ESP, предпоследний — ESP +4 и т.п:
У стека есть вершина, адрес которой убывает при помещении в стек некоторого значения; таким образом, стек у Вас растет вниз, а не вверх.
Для начала хочу заметить, что к примеру, в обработчике локальные переменные хранятся в стеке, а значит после входа в обработчик компилятор портит нам esp. Чтобы такого не произошло создадим переменную с абсолютным адресом, и перед вызовом обработчика будем засовывать ESP туда.
Зачем у Вас все так сложно, когда существует регистр EBP; который, в паре с ESP, формирует базовый адрес для локальных переменных.
Я понимаю, что Вы только-только начали изучение системного программирования, поэтому «ругать» не хотелось, однако Вашу статью читают и другие начинающие тоже, поэтому как-то так.
-1
Смотрел группу в ВК про Вашу работу. А что, исходники Вашей оси закрыты?
+1
Да, но вы можете принять участие в разработки и они станут для Вас доступны:)
-2
тю… так не интересно. В мире масса других проектов, исходники которых доступны. Если в 2018 году, вопреки упрекам в другой вашей статье в ваш адрес, ещё можно согласится тем, что разрабатывать x86 систему в целях самообразования это вполне себе актуально и нормально, то с закрывать исходники при наличии массы других проектов, более продвинутых и ориентированных на пользователя в 2018 — моветон
+8
Согласен с предыдущим оратором, однако хотел бы посмотреть исходники
+2
И в правду, зачем писать закрытую ОС и предоставлять код только команде разработчиков, состав которой еще не определен? Лучше дать всем исходники, там BSD или GPL (от злых проприетарщиков) поставить…
Хотя, сабж, похоже, не Unix-подобный, а такие системы делать открытыми не принято)
Хотя, сабж, похоже, не Unix-подобный, а такие системы делать открытыми не принято)
0
Где исходники?
+1
Sign up to leave a comment.
Написание ОС: Многозадачность