Comments 17
Спасибо! Конечно же продолжайте!
Несомненно продолжайте, изложено все очень и очень доступно.
Вообще все просто и понятно!)))
Видите сколько много комментариев?!
У кого есть вопросы по статье — задавайте.
Автор, думаю, с удовольствием на них ответит.
PS: я точно понял две вещи: 1.автору — РЕСПЕКТ!!!, 2. мой мозг еще не готов усваивать этот левел.
Видите сколько много комментариев?!
У кого есть вопросы по статье — задавайте.
Автор, думаю, с удовольствием на них ответит.
PS: я точно понял две вещи: 1.автору — РЕСПЕКТ!!!, 2. мой мозг еще не готов усваивать этот левел.
у меня такой вопрос: а разве компилятор не сохраняет большинство изменяемых регистров самостоятельно при входе в функцию (кроме регистров общего назначения)?
А то получается, что при каждом вызове другой функции он должен всё сохранять, но не встречал такого в дизассемблере. Т.е. достаточно ли дополнительно сохранить EAX...EDX, а не всё-всё-всё?
Еще одная интересная статья по входу в прерывания
А то получается, что при каждом вызове другой функции он должен всё сохранять, но не встречал такого в дизассемблере. Т.е. достаточно ли дополнительно сохранить 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.
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.
В случае с прерываниями по-любому придётся сохранять регистры, чтобы можно было единообразно их изменять/копировать, например, во время планирования.
UFO just landed and posted this here
А откуда возьмутся приложения под Вашу ОС?
UFO just landed and posted this here
Хочу использовать Вашу ОС как пример для своих студентов. Можно ли получать от Вас информационную поддержку по некоторых вопросах.
Позвольте взглянуть на статью с чисто практической точки зрения)
Здесь немало людей, которым интересно что-то новое, и которые хотят в первом же абзаце услышать простой и ясный ответ на: «ради чего это делается? „
ну правда, надо бы попросить каждую статью от всех авторов начинать ответами на стандартные вопросы:
1.я — профессионал/любитель, у меня была вот такая конкретная проблема. я хотел сделать стандартными средствами, смотрел здесь и здесь, но не нашел аналогов или меня они не устроили по этим и этим причинам. Поэтому выкладываю для конструктивной критики свою поделку.
2.это вот такая штука. она нужна для вот этого.
конец первого абзаца.
под катом:
1.может применяться вами еще вот здесь и здесь.
2.работает вот так. она справляется настолько-то успешно. сравнение моей поделки и уже существующих аналогов.
3.а вот это и это осталось реализовать.
4.опрос “как считаете, это нужная вещь? вы будете ее покупать?»
Здесь немало людей, которым интересно что-то новое, и которые хотят в первом же абзаце услышать простой и ясный ответ на: «ради чего это делается? „
ну правда, надо бы попросить каждую статью от всех авторов начинать ответами на стандартные вопросы:
1.я — профессионал/любитель, у меня была вот такая конкретная проблема. я хотел сделать стандартными средствами, смотрел здесь и здесь, но не нашел аналогов или меня они не устроили по этим и этим причинам. Поэтому выкладываю для конструктивной критики свою поделку.
2.это вот такая штука. она нужна для вот этого.
конец первого абзаца.
под катом:
1.может применяться вами еще вот здесь и здесь.
2.работает вот так. она справляется настолько-то успешно. сравнение моей поделки и уже существующих аналогов.
3.а вот это и это осталось реализовать.
4.опрос “как считаете, это нужная вещь? вы будете ее покупать?»
Sign up to leave a comment.
Пишу игрушечную ОС (о прерываниях)