![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux学习
文章平均质量分 86
通过linux来学习操作系统
qq_21261489
这个作者很懒,什么都没留下…
展开
-
进程终止,进程等待,进程替换
异常退出,WIFSIGNALED(status)和WTERMSIG(status)查看异常退出的信号信息,其中,WIFSIGNALED(status)判断是否有异常信号,WTERMSIG(status)输出异常信号是啥。进程出现了异常,本质是收到了硬件发来的某个信号(比如:程序计算1/0,对应的运算器会发出异常,这个异常被操作系统捕获,转换成信号发给进程,然后进程退出)(退出信号可用kill -l)查看。wait-------等待一个进程(他的子进程)直到它的进程状态改变,返回值是改变的进程的pid。原创 2024-08-01 09:17:48 · 591 阅读 · 0 评论 -
进程与状态
僵尸进程:子进程结束了,但父进程没有结束,由于父进程没有使用wait(),导致父进程不知道子进程结束了,导致子进程明明已经结束了,但依旧在父进程中有一条信息。孤儿进程:父亲完事了,子进程还没完事,父进程退出,子进程便成为了孤儿。printf(),由于缓存机制存在,其本质是先向用户空间的缓冲区中,等待缓冲区满了,或者遇到刷新符号才会输出。R,运行状态,一般挺难观测,因为CPU运行很快,运行一段时间就把他溢出CPU进行等待。scanf(),运行后,进程会进入S状态,不会进行D状态。原创 2024-07-01 20:34:10 · 900 阅读 · 0 评论 -
进程切换,环境变量,地址空间
进程从CPU上离开时,要把自己的上下文数据保存好(保存在PCB中),以便之后再回到CPU中,CPU能够读取已运行的数据,直接从上次运行的结尾开始,而不用重新开始(保存上下文,恢复上下文)常规命令或外部命令是独立的程序文件,存储在系统的文件系统中。当你执行一个常规命令时,shell会在 PATH 环境变量定义的目录中查找该命令的可执行文件,然后启动一个新的进程来运行它。就是一个指令的搜索路径,将一个指令加入环境变量,就可以让系统自己在已经保存的路径中自己找到命令,而不需要类似于./这样在前面加上指令的位置。原创 2024-07-15 11:20:04 · 659 阅读 · 0 评论