操作系统关键词-内存管理

页面置换算法 \n
不可实现用作基准的最优算法-置换最后要访问的页面
FIFO -可能抛弃重要的页面
第二次机会-FIFO修改成删除前询问是否正在使用
LRU 最近最少算法时空都为1-特殊硬件才可以实现-因为所有的读访问都是变成同一临界区的写访问-所以无法多核拓展-头节点竞争
NRU R位-被访问的页面--M--被修改的时候
工作集算法 - 进程在时间段使用内存页的集合
最好的是基于LRU的老化算法和基于工作集算法的WSClock算法

调度程序的指标
CPU的使用率
等待时间
进程轮流执行的时间-进程切换的时间-吞吐量
单位时间完成进程的数量-响应时间
提交流程到获得有用输出的时间-周转时间

僵尸进程-完成并且终止状态的存在于进程表中的进程,子进程先于父进程退出没有被回收

孤儿进程-父进程终止后仍在进程的子进程,被init进程(1)所收养-完成回收
全部评论
事件通知方式,每当fd就绪,系统注册的回调函数就会被调用,将就绪fd放到readyList里面,时间复杂度O(1)
点赞 回复 分享
发布于 2023-03-14 00:38 日本
select/poll/epoll之间的区别 select,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据从内核拷贝到用户空间。   epoll跟select都能提供多路I/O复用的解决方案。在现在的Linux内核里有都能够支持,其中epoll是Linux所特有,而select则应该是POSIX所规定,一般操作系统均有实现
点赞 回复 分享
发布于 2023-03-14 00:36 日本
感觉操作分享
点赞 回复 分享
发布于 2023-03-13 18:09 四川
提个建议,下次能不能加上标点符号
点赞 回复 分享
发布于 2023-03-13 17:54 辽宁
SIGCHLD: signal:child 这个就是进程通信的信号--子进程停止继续都会发送通知 fork创建子进程-使用wait waitpid 等待子进程终止后回收 因为不知道哪个进程先结束-子进程结束父进程没有执行waitpid回收 使用两次fork来使父进程早点结束,这样成为孤儿进程被收养 fork两次,儿子直接exit死掉,孙子继续执行,这样直接孤儿被init回收
点赞 回复 分享
发布于 2023-03-12 18:48 日本

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务