Skip to content

Commit

Permalink
add rcore tutorial v3 syscall list
Browse files Browse the repository at this point in the history
  • Loading branch information
chyyuu committed Jul 17, 2022
1 parent a2db526 commit e9f6506
Showing 1 changed file with 38 additions and 2 deletions.
40 changes: 38 additions & 2 deletions source/chapter0/2os-interface.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,44 @@
:align: center
:name: run-app

有了这些系统调用接口,简单的应用程序就不用考虑底层硬件细节,可以在操作系统的服务支持和管理下简洁地完成其应用功能了。在现阶段,也许大家对进程、文件、地址空间等抽象概念还不了解,在接下来的章节会对这些概念有进一步的介绍。值得注意的是,我们设计的最终操作系统可以只用二十几个系统调用功能接口,就可以支持应用需要的上述功能。而且这些调用与最初的 UNIX 的系统调用接口类似,几乎没有变化。尽管UNIX 的系统调用最早是在 1970 年左右设计和实现的,但这些调用中的大多数仍然在今天的系统中广泛使用。

有了这些系统调用接口,简单的应用程序就不用考虑底层硬件细节,可以在操作系统的服务支持和管理下简洁地完成其应用功能了。在现阶段,也许大家对进程、文件、地址空间等抽象概念还不了解,在接下来的章节会对这些概念有进一步的介绍。值得注意的是,我们设计的各种操作系统总共只用到三十个左右系统调用功能接口(如下表所示),就可以支持应用需要的上述功能。而且这些调用与最初的 UNIX 的系统调用接口类似,几乎没有变化。尽管UNIX 的系统调用最早是在 1970 年左右设计和实现的,但这些调用中的大多数仍然在今天的系统中广泛使用。

.. chyyuu 在线组织表格 https://tableconvert.com/restructuredtext-generator 再用 format current (ctrl-alt-T C)格式化
==== ================ ======== ==============================
编号 系统调用 所在章节 功能描述
==== ================ ======== ==============================
1 exit 2 结束执行
2 write 2/6 (2)输出字符串/(6)写文件
3 yield 3 暂时放弃执行
4 get_time 3 获取当前时间
5 getpid 5 获取进程id
6 fork 5 创建子进程
7 exec 5 执行新程序
8 waitpid 5 等待子进程结束
9 read 5/6 (5)读取字符串/(6)读文件
10 open 6 打开/创建文件
11 close 6 关闭文件
12 dup 7 复制文件描述符
13 pipe 7 创建管道
14 kill 7 发送信号给某进程
15 sigaction 7 设立信号处理例程
16 sigprocmask 7 设置要阻止的信号
17 sigreturn 7 从信号处理例程返回
18 sleep 8 进程休眠一段时间
19 thread_create 8 创建线程
20 gettid 8 获取线程id
21 waittid 8 等待线程结束
22 mutex_create 8 创建锁
23 mutex_lock 8 获取锁
24 mutex_unlock 8 释放锁
25 semaphore_create 8 创建信号量
26 semaphore_up 8 减少信号量的计数
27 semaphore_down 8 增加信号量的计数
28 condvar_create 8 创建条件变量
29 condvar_signal 8 唤醒阻塞在条件变量上的线程
30 condvar_wait 8 阻塞与此条件变量关联的当前线程
==== ================ ======== ==============================


.. chyyuu 可以有两个例子,体现API和ABI
Expand Down

0 comments on commit e9f6506

Please sign in to comment.