问题标签 [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.
c - 内联中file-static out-of-line、global out-of-line和no out-of-line copy函数是什么意思
我在阅读 OS/161 的源代码时遇到了内联支持代码。我无法理解所提供的评论。评论是:-
请任何人都可以解释一下文件静态外线、全局外线和没有函数的外线副本是什么意思
c - 指针访问不正确的地址 OS161
我正在使用 OS161,并且我有一段代码如下所示process.c
:
流程结构的定义:
我收到一个END OF FILE
错误,GDB 告诉我它是在哪里process_exit
定义的。我对操作系统编程不是很熟悉,有人知道为什么会这样吗?
编辑:这是 GDB 消息:
我做到了gdb list *0x8001a008
,它指向curthread->p_process->exited_flag = 1;
.
c - os161 中的不兼容指针类型警告
我在 os161 内核中实现了一个 fork 系统调用。我正在尝试创建一个新进程并为其创建我使用的线程thread_fork
。我正在使用该函数md_forkentry
将堆和堆栈分配给新线程的陷阱帧并切换到用户模式;但是在编译代码后我收到了这个警告:
passing arg 4 of 'thread_fork' from incompatible pointer type
c - 这段代码中参数 num 的用途是什么?
“ os161 ”操作系统包含以下代码。具体来说,定义系统调用的位置:
在底部,每个系统调用都有一个数字。我似乎无法弄清楚这些数字的用途。
我不是在询问系统调用号的使用,我是在询问使用num
宏的参数SYSCALL
。我找不到它在哪里使用。
即使将系统调用号移至,也不使用v0
该参数。num
相反,它移动文件中定义的常量kern/syscall.h
:
这个论点如何num
以某种方式有用?
c - 来自 OS161 的用于查找冒号的代码如何工作?
从这里:
为什么应该strlen(s)
等于零?换句话说,为什么如果它大于零然后返回错误?由于冒号应该在末尾(如果存在)(如评论所述),它的大小不应该是 1 吗?
linux - 无法在 Kali linux 中构建和安装 binutils
我试图安装 OS 161 KALI LINUX 版本 2020.3 64bit。第一步是构建和安装 binutils。
我配置了 binutils 并得到了这个输出https://pastebin.com/iXjFq3Zu 但是在运行时我得到了 make 命令我得到了以下错误https://pastebin.com/DYSBdUqq。