Продолжим знакомство с ассемблером, и так как я работаю в среде Linux то стоит обратить внимание на системные вызовы в Linux. Я буду стараться основываться на них, так как хочу знать как всё работает.
Во многих книжках и справочной информации расписано как узнать по системным вызовам, но зачастую не хватает информации, или она не в том формате, который вам нужен. Особенно учитывая, что зачастую системные вызовы Linux описаны для ЯВУ, а нам нужен ассемблер.
Ну кто часто работает с ассемблером и ЯВУ, тот проблем для себя не заметит, но тот кто работает с чем-то одним, наверняка столкнётся с трудностями.
Работая с системными вызовами в Linux оказывается, что для разных архитектур и при 32-х битной и 64-х битной системах системные вызовы разные.
У меня сразу же напрашивается куча матов в их адресс. Вы пишете ядро, с системными вызовами и чуть маленький пук в сторону одного из процессоров и тут же системные вызовы будут разные? Почему вы не стандартизировали их?
В общем ладно, отвлекся от дела.
Я нашёл ссылку, где описание подходит для разных архитектур и для разной битности системы (32-х и 64-х). Она окажется очень полезной, потому что там как раз и указаны используемые регистры для всех вызовов (ну или для почти всех).
/master/constants/
Много времени тратится на поиски какой-то информации, которую непонятно где искать. На сайте разработчиков ARM? Но давайте в этом видео перейдём всё же к очередному коду который использует системные вызовы, что я искал. )))
... честно говоря я вообще не хотел здесь код рассматривать... )))
2:39 - прохожу по коду.
- пароль 456123.
“Уроки“ и необходимые файлы.
Связь: M12Mirrel@
Так же можно связаться со мной на форумах Lazarus.
Поддержать можно через сбер:
2202200951985520