头歌操作系统 课堂练习3.1:进程的描述与状态 答案

这篇具有很好参考价值的文章主要介绍了头歌操作系统 课堂练习3.1:进程的描述与状态 答案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第1关:任务寄存器(TR)的分析

编程要求

根据相关知识,回答问题:(将答案填写在/data/workspace/myshixun/第一关.txt中)

  1. 1 号进程的任务状态段(TSS)的地址是多少?1 号进程的核心栈栈底的位置是多少?

  1. 1 号进程运行时,任务寄存器(TR)的值是多少?它指向的任务状态段描述符的值是多少?该描述符里记录的任务状态段起始地址是多少?

先配置版本内核1

cp /data/workspace/myshixun/exp1/1.tgz ~/os/
cd ~/os/linux-0.11-lab/
tar -zxvf ../1.tgz
rm -rf cur
ln -s 1 cur
cd 1/linux
make
cd ../..
头歌操作系统 课堂练习3.1:进程的描述与状态 答案
头歌操作系统 课堂练习3.1:进程的描述与状态 答案

启动虚拟机

./rungdb
./mygdb

在gdb调试器:

b task1
c
p *current
头歌操作系统 课堂练习3.1:进程的描述与状态 答案
p/x current->tss
p &current->tss
quit
头歌操作系统 课堂练习3.1:进程的描述与状态 答案

启动dbg调试器:

./rundbg

在dbg调试器中输入:

b 0x7985
c
sreg
x/14wx 0x5cc0
头歌操作系统 课堂练习3.1:进程的描述与状态 答案

第2关:1 号进程的状态变化

编程要求

根据相关知识,回答问题:(将答案填写在/data/workspace/myshixun/第二关.txt中)1 号进程第一次由睡眠态变为就绪态时:

  • 系统处于几号进程的上下文(或者说,当前进程是几号进程)?

  • 内核的函数调用栈中的底层函数是什么?内核处于哪种控制流(选择:系统调用、中断、异常)?

  • 后续回到用户态时,恢复点的位置是什么?以前的断点位置是什么?

该版本内核使用与第一关相同的版本1内核,详细环境配置操作请移步本文章第一关~

在gdb调试器中:文章来源地址https://www.toymoban.com/news/detail-424267.html

b sys_pause if current->pid==1
b sched.c:120 if p->pid ==1
c
display current->state
n
c
头歌操作系统 课堂练习3.1:进程的描述与状态 答案
p p->pid
p p->state
bt
disable
finish
list
头歌操作系统 课堂练习3.1:进程的描述与状态 答案
finish
x/3i $eip
si
si

x/28i $eip
头歌操作系统 课堂练习3.1:进程的描述与状态 答案
b *0x77dd
c
si
disassemble
头歌操作系统 课堂练习3.1:进程的描述与状态 答案
info registers
quit
头歌操作系统 课堂练习3.1:进程的描述与状态 答案
头歌操作系统 课堂练习3.1:进程的描述与状态 答案

到了这里,关于头歌操作系统 课堂练习3.1:进程的描述与状态 答案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 头歌操作系统2023春季课堂练习1:环境体验

    任务描述 欢迎进行 Linux 世界,当你下载、安装了某个 Linux 发行版,体验了 Linux 桌面并安装了一些你喜爱和需要的软件之后,应该去了解下 Linux 真正的魅力所在:命令行。 每一个 Linux 命令其实就是一个程序,借助这些命令,我们可以办到非常多的事情。 第一个任务就是了

    2024年02月08日
    浏览(37)
  • 头歌课堂练习5:进程的同步与互斥

    *tidp 是 pthread_t 类型,也就是指向线程标识符的指针 通俗来讲,要开一个新线程, 那么就得新定义一个 pthread_t 类型的指针。 *arrt 是 pthread_arrt_t 类型 说的是用来设置线程属性,我还没怎么接触这个 一般用NULL *strat_rtn 是这里 (void*)(*hh)(void*) 类型 是线程运行函数的起始地址

    2024年02月04日
    浏览(123)
  • 操作系统2:进程的描述与控制

    目录 1、什么是前驱图? 2、进程的定义和描述 (1)什么是进程? (2)进程的基本状态及转换 (3)挂起操作和进程状态的转换 3、进程管理中的数据结构 (1)进程控制块 PCB 的作用 (2)进程控制块 PCB 中的信息 (3)PCB 的组织方式 3、进程的控制 (1)操作系统内核 (2)

    2024年02月09日
    浏览(26)
  • 计算机操作系统【慕课版】习题答案(第2章进程的描述与控制)

    一:简答题 (1).什么是前趋图?试画出下面四条语句的前趋图. S1:a=x+y; S2:b=z+1; S3:c=a-b; S4:w=c+1; 答:前趋图(Precedence Graph)是一个有向无循环图,记为DAG(DirectedAcyclicGraph),用于描述进程之间执行的前后关系。 (2)什么是进程? OS中为什么要引入进程?它会产生什么样的

    2024年04月13日
    浏览(27)
  • 操作系统练习:在Linux上创建进程,及查看进程状态

    进程在执行过程中可以创建多个新的进程。创建进程称为“父进程”,新的进程称为“子进程”。每个新的进程可以再创建其他进程,从而形成进程树。 每个进程都有一个唯一的进程标识符(process identifier,pid)。在Linux中,init进程是所有其他进程的根进程。 在Linux中,可以

    2024年02月12日
    浏览(39)
  • 头歌操作系统Linux实验

    Linux操作系统 第1关 Linux初体验 cd / ls -a 第2关 Linux常用命令 touch newfile mkdir newdir cp newfile newdir/newfileCpy 第3关 Linux 查询命令帮助语句 man 3 fopen Linux文件/目录管理 第1关 Linux之文件创建/删除 touch file1 file2 rm oldFile1 oldFile2 第2关 Linux之目录创建/删除 mkdir newDir1 newDir2 rm oldDir1 -r old

    2024年02月10日
    浏览(31)
  • 头歌操作系统 课后作业4.1:段式内存管理 答案

    第1关:0号进程和1号进程的mynext变量的取值变化 编程要求 根据相关知识,修改版本 1.3 内核回答问题: 通过 gdb 调试查找答案,将第三关的答案填写在 /data/workspace/myshixun/第三关.txt 中。 1 号进程的 output_char 函数调用会执行几次? 每次调用时,1 号进程和 0 号进程的 mynext 变

    2024年02月06日
    浏览(31)
  • 操作系统:4、进程管理之进程同步

    上述过程,若并发执行就会出现缓冲区数据出错 “哲学家进餐问题中会发生极端情况,所有哲学家都饿死,也就是所有进程都陷入等待状态” “生产者消费者问题”以及“哲学家进程问题”的根源问题是:彼此相互之间没有通信。 若生产者通知消费者我已经完成一件产品生

    2023年04月26日
    浏览(42)
  • 操作系统(一):进程状态与进程调度

            操作系统作为计算机基础的四大件,系统学习无疑是十分重要的。在这个系列的文章中,荔枝会结合操作系统的知识进行归纳梳理,总结输出博文!下面这篇文章主要介绍的是进程状态和调度,重点是几种调度算法的理解和掌握,希望对正在学习的小伙伴有帮助

    2024年02月05日
    浏览(37)
  • 【操作系统】聊聊不可中断进程和僵尸进程

    当我们输入top命令之后 其中S代表的是当前进程的状态 R (Running 或 Runnable) 进程在CPU的就绪队列中,正在运行或者等待运行。 D (Disk Sleep) 不可中断睡眠,进程正在跟硬件交互,不运行被其他进程或者中断打断。 Z (Zombie) 进程已经结束,但是父进程没有回收资源 (描述符、PID等

    2024年02月07日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包