Вопросы по теме 'xv6'
Shell, кажется, распознает команды, но не выполняет их
Я пытаюсь реализовать базовое выполнение команд в программе оболочки для unix-подобной ОС xv6. Часть кода оболочки, которую я редактирую, — это функция runcmd, в которой я использую команду execvp для выполнения команд, используемых в терминале....
1689 просмотров
schedule
30.01.2023
xv6 KERNBASE ограничение памяти процесса
В книге xv6 есть вопрос, который меня давно беспокоит, и мне было интересно, не хочет ли кто-нибудь прояснить этот вопрос.
KERNBASE ограничивает объем памяти, который может использовать один процесс, что может раздражать на машине с полными 4...
3096 просмотров
schedule
11.08.2023
Попытка понять системные вызовы UNIX на XV6
Я пытаюсь написать простой системный вызов на XV6 (документация доступна здесь и Github здесь ), чтобы понять, как они реализованы. Я использовал эти шаги
В syscall.c объявлен extern int sys_hello(void) и добавлен [SYS_hello] sys_hello...
585 просмотров
schedule
18.08.2023
Как использовать GDB для отладки QEMU с SMP (симметричными несколькими процессорами)?
Я учусь в выпускном классе операционных систем, и мы эмулируем наше ядро с помощью QEMU и отлаживаем его с помощью gdb. Отладка была достаточно простой... до сих пор. Как я могу подключить gdb к другим процессорам, которые у меня работают в QEMU?...
1782 просмотров
schedule
08.06.2024
Откуда xv6 знает, где находится последний элемент p->pgdir?
В xv6 каждый процесс имеет структуру с именем proc , в которой хранится состояние процесса. у него есть поле с именем pgdir , которое указывает на каталог страниц. Мой вопрос заключается в следующем: он должен хранить индекс последнего элемента в...
243 просмотров
schedule
28.05.2023
Как установить xv6 на виртуальный бокс или vmware?
Я пытаюсь запустить операционную систему xv6 на VirtualBox или VMWare на хосте Linux. В официальных инструкциях сказано, как запустить ОС только на qemu. Однако официальная страница ( https://pdos.csail.mit.edu/6.828/2014/xv6.html ) упоминалось, что...
1404 просмотров
schedule
04.03.2022
Отладка xv6 на Mac с помощью CLion
Я просмотрел Интернет и искал решение для отладки xv6 на Mac с помощью CLion и не нашел его. как вы знаете, сложно (или, может быть, невозможно, мне все равно не удалось) заставить gdb работать на macOS. Итак, как я могу это сделать? Как отлаживать...
643 просмотров
schedule
19.03.2023
Как добавить системный вызов, чтобы узнать количество процессов в xv6
Я добавил эту функцию в файл proc.c
int getNumProc(void)
{
struct proc *p;
int count = 0;
acquire(&ptable.lock);
for(p = ptable.proc; p < &ptable.proc[NPROC]; p++)
{
if(p->state != UNUSED)
count++;
}...
2429 просмотров
schedule
04.03.2022
Создайте новый системный вызов в xv6, который возвращает данные об открытых файлах для всех запущенных процессов.
Я начал узнавать о xv6. И я пытаюсь добавить новый системный вызов, который будет печатать список открытых файлов для всех запущенных процессов. Он должен печатать pid каждого процесса, номер его файлового дескриптора (0,1,2- для каждого pid),...
477 просмотров
schedule
06.09.2023
Как все физическое адресное пространство отображается в виртуальном адресном пространстве?
Я читал, что в XV6 в каждом виртуальном адресном пространстве процесса отображается все физическое адресное пространство. Как это вообще возможно?
54 просмотров
schedule
18.08.2022
Доза gdb не работает с xv6: замораживание после qemu-nox-gdb
Я использую VMware Workstation 15 Pro в Windows 10. Гостевая ОС - Linux 18.04.5 LTS. В гостевом Linux я загрузил xv6 с помощью команды: git clone git://github.com/mit-pdos/xv6-public.git . После сборки xv6 с использованием make я запускаю make...
45 просмотров
schedule
02.05.2024