Комментарии 8
Понял Вас, буду следить за вашеми разработками.
В этой функции указатель стека (
sp
) установлен на адрес стека, ...
Скорее "устанавливается". Так вроде бы понятнее.
Интересно компилируется при оптимизации с ключом -O2 программа с Hello World! Функция sbi_call:
ecall
ret
Функция же putchar сама инициализирует регистры и использует ecall, и совсем не вызывает sbi_call.
Функция kernel_main прекрасно обходится без putchar и сама со всем справляется.
Поскольку OpenSBI просто переходит к адресу 0x80200000, не зная о точке входа, функцию boot необходимо разместить по адресу 0x80200000.
Зачем тогда ENTRY(boot) ?
Нажмите Ctrl+A и затем C, чтобы перейти в консоль отладки QEMU (монитор QEMU).
Ctrl+a и затем с
Дошел уже до середины второй главы. Но как представлю сколько кода придется вводить в vim-е, а потом исправлять опечатки, то становиться грустно. А можно ли подключить VS code. Было бы замечательно получить подробную инструкцию. Пытался подключить VS code к xv6 на Ubuntu WSL. Вроде бы просто, но мучился неделю и бросил. Заранее спасибо. Думаю многие тоже скажут.
Оставил здесь инструкцию как подключить VS code и из под него запустить gdb. Ну очень удобно работать. А модераторы взяли и удалили. И кому теперь сказать спасибо.
Операционная система в 1 000 строках кода (часть 2)