OS_homework_3
这份文件是OS_homework_3 by计科210X wolf 202108010XXX
文档设置了目录,可以通过目录快速跳转至答案部分。
第26章
运行该程序wolf/OS-homework/threads-intro/x86.py
通过README可知一些重要的标识符如下
-p:指定程序
-t:线程数
-i:指定每执行i个指令产生一次中断
-M:追踪内存
-R:追踪特定寄存器值
-C:追踪条件码的值
-r:中断随机
26.1
开始,我们来看一个简单的程序,“loop.s”。首先,阅读这个程序,看看你是否能理解它: cat loop.s。然后,用这些参数运行它:
./x86.py -p loop.s -t 1 -i 100 -R dx
这指定了一个单线程,每 100 条指令产生一个中断,并且追踪寄存器 %d。你能弄清楚 %dx 在运行过程中的值吗? 你有答案之后,运行上面的代码并使用 -c 标志来检查你的答案。注意答案的左边显示了右侧指令运行后寄存器的值(或内存的值)
使用cat命令查看loop.s文件
.main
.top // 标号
sub $1,%dx // dx寄存器值减1, 结果存入dx
test $0,%dx // 比较