Как стать автором
Обновить

Комментарии 17

Спасибо! Конечно же продолжайте!
Несомненно продолжайте, изложено все очень и очень доступно.
Вообще все просто и понятно!)))
Видите сколько много комментариев?!
У кого есть вопросы по статье — задавайте.
Автор, думаю, с удовольствием на них ответит.
PS: я точно понял две вещи: 1.автору — РЕСПЕКТ!!!, 2. мой мозг еще не готов усваивать этот левел.
выдыхайте :)
Ну да… 2-й пункт — действительно неверный. Уже готов! )))
Заминусовали. Бугагага
у меня такой вопрос: а разве компилятор не сохраняет большинство изменяемых регистров самостоятельно при входе в функцию (кроме регистров общего назначения)?
А то получается, что при каждом вызове другой функции он должен всё сохранять, но не встречал такого в дизассемблере. Т.е. достаточно ли дополнительно сохранить EAX...EDX, а не всё-всё-всё?

Еще одная интересная статья по входу в прерывания
Обычно функция сохраняет в стеке лишь те регистры, которые использует, чтобы вернуть старые значения перед выходом.
Некоторые регистры функция может свободно изменять. Это чётко прописано в ABI. Например, для x86_64 читаем:

Registers %rbp, %rbx and %r12 through %r15 “belong” to the calling function and the called function is required to preserve their values. In other words, a called function must preserve these registers’ values for its caller. Remaining registers “belong” to the called function. If a calling function wants to preserve such a register value across a function call, it must save the value in its local stack frame.
В случае с прерываниями по-любому придётся сохранять регистры, чтобы можно было единообразно их изменять/копировать, например, во время планирования.
НЛО прилетело и опубликовало эту надпись здесь
А откуда возьмутся приложения под Вашу ОС?
а вот автор возьмет, и posix level реализует — и эта «проблема» отпадет;)))
НЛО прилетело и опубликовало эту надпись здесь
Хочу использовать Вашу ОС как пример для своих студентов. Можно ли получать от Вас информационную поддержку по некоторых вопросах.
Позвольте взглянуть на статью с чисто практической точки зрения)
Здесь немало людей, которым интересно что-то новое, и которые хотят в первом же абзаце услышать простой и ясный ответ на: «ради чего это делается? „

ну правда, надо бы попросить каждую статью от всех авторов начинать ответами на стандартные вопросы:

1.я — профессионал/любитель, у меня была вот такая конкретная проблема. я хотел сделать стандартными средствами, смотрел здесь и здесь, но не нашел аналогов или меня они не устроили по этим и этим причинам. Поэтому выкладываю для конструктивной критики свою поделку.
2.это вот такая штука. она нужна для вот этого.
конец первого абзаца.

под катом:
1.может применяться вами еще вот здесь и здесь.
2.работает вот так. она справляется настолько-то успешно. сравнение моей поделки и уже существующих аналогов.
3.а вот это и это осталось реализовать.
4.опрос “как считаете, это нужная вещь? вы будете ее покупать?»
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории