问题标签 [os161]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
91 浏览

c - 内联中file-static out-of-line、global out-of-line和no out-of-line copy函数是什么意思

我在阅读 OS/161 的源代码时遇到了内联支持代码。我无法理解所提供的评论。评论是:-

请任何人都可以解释一下文件静态外线、全局外线和没有函数的外线副本是什么意思

0 投票
1 回答
110 浏览

c - 指针访问不正确的地址 OS161

我正在使用 OS161,并且我有一段代码如下所示process.c

流程结构的定义:

我收到一个END OF FILE错误,GDB 告诉我它是在哪里process_exit定义的。我对操作系统编程不是很熟悉,有人知道为什么会这样吗?

编辑:这是 GDB 消息:

我做到了gdb list *0x8001a008,它指向curthread->p_process->exited_flag = 1;.

0 投票
1 回答
95 浏览

c - os161 中的不兼容指针类型警告

我在 os161 内核中实现了一个 fork 系统调用。我正在尝试创建一个新进程并为其创建我使用的线程thread_fork。我正在使用该函数md_forkentry将堆和堆栈分配给新线程的陷阱帧并切换到用户模式;但是在编译代码后我收到了这个警告: passing arg 4 of 'thread_fork' from incompatible pointer type

0 投票
1 回答
91 浏览

c - 这段代码中参数 num 的用途是什么?

os161 ”操作系统包含以下代码。具体来说,定义系统调用的位置:

在底部,每个系统调用都有一个数字。我似乎无法弄清楚这些数字的用途。

我不是在询问系统调用号的使用,我是在询问使用num宏的参数SYSCALL。我找不到它在哪里使用。

即使将系统调用号移至,也不使用v0该参数。num相反,它移动文件中定义的常量kern/syscall.h

这个论点如何num以某种方式有用?

0 投票
1 回答
457 浏览

c - os161 中的 userptr_t 类型有什么用?

我正在尝试完成操作系统课程的作业,这里

我在作业中遇到了一个问题:

userptr_t 的目的是什么?

当我搜索这里userptr_t的源代码时,我发现了这个:

我无法完全理解它的用途,谁能解释这种类型的目的是什么?

例如,在copyinout.c函数copyincopyout、和其他函数中的文件中使用它:copyinstrcopyoutstr

0 投票
0 回答
67 浏览

c - 来自 OS161 的用于查找冒号的代码如何工作?

这里

为什么应该strlen(s)等于零?换句话说,为什么如果它大于零然后返回错误?由于冒号应该在末尾(如果存在)(如评论所述),它的大小不应该是 1 吗?

0 投票
0 回答
113 浏览

linux - 无法在 Kali linux 中构建和安装 binutils

我试图安装 OS 161 KALI LINUX 版本 2020.3 64bit。第一步是构建和安装 binutils。

我遵循的过程显示在此在此处输入图像描述

我配置了 binutils 并得到了这个输出https://pastebin.com/iXjFq3Zu 但是在运行时我得到了 make 命令我得到了以下错误https://pastebin.com/DYSBdUqq