
操作系统
hust_dxxxd
这个作者很懒,什么都没留下…
展开
-
堆栈
挺不错的一段: ———————————————————————————————————————————————————————————————————————————— java 1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 2. 栈的优势是,存取速度比堆要快,仅次于直接位于C转载 2015-05-09 20:59:51 · 407 阅读 · 0 评论 -
面试经典问题---select、poll、epoll之间有什么区别
这部分属于linux系统中高级IO(IO复用的部分),而且《unix环境高级编程》以及《Unix网络编程》中都有涉及,但是没有关于epoll的讨论。特别是在网络编程中,应用的应该还是蛮多的(要不然就不会这么多被问到了!)。 看了一些文章配合两本书的相关章节,有了一个大概的认识,但是要我详细说出里面的流程,感觉还是不是很清楚。 主要来说,select和poll差不多,poll采用pollfd来作转载 2016-03-16 16:36:56 · 5374 阅读 · 0 评论 -
进程调度算法
进程调度算法 调度算法是指:根据系统的资源分配策略所规定的资源分配算法。 1. 先来先服务调度算法。先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度, 也可用于进程调度。FCFS算法比较有利于长作业(进程),而不利于短作业(进程)。由此可知,本算法适合于CPU繁忙型作业, 而不利于I/O繁忙型的作业(进程)。 2. 短作业(进程)优先转载 2016-04-20 17:02:48 · 673 阅读 · 0 评论 -
操作系统---相关概念
1. 进程和地址空间的概念进程包括: 地址空间:代码段、数据段、堆栈段 相关的资源集(对应的数据结构—进程表 process table):存放在操作系统中(内核空间?)2. 系统调用系统调用? 系统调用就像进入了一种特殊的过程调用,只有系统调用进入内核,过程调用不进入内核。 分类: 进程管理类:fork, waitpid, exec, exit原创 2016-07-18 00:26:05 · 345 阅读 · 0 评论 -
操作系统---进程
定义:程序的执行实例; 是某种类型的活动。四种场景导致进程的创建: 系统启动 调用了进程创建系统调用 用户请求创建新进程 批处理作业初始化本质:已有进程执行了进程创建系统调用Unix中:唯一方式 fork(),与父进程相同的存储映像,环境字符串,打开的文件。进程终止:进程树: 进程状态: 进程的实现:数据结构,进程表/进程控制块:。。。待补充讨论原创 2016-07-18 00:28:43 · 275 阅读 · 0 评论 -
操作系统---线程
POSIX线程线程包的实现 1.用户级线程包 线程的创建在用户空间中完成,多线程的存在对内核透明 优点: 线程的创建、撤销、切换 快 允许定制调度算法缺点: 阻塞的系统调用的问题,采用select方式效率也不够高,还有页面故障问题, 线程的永久运行问题 2.内核中实现线程 线程的创建、撤销都采用系统调用的方式实现,“所有能够阻塞线程的调用都以系统调用的形式实现”,(比如?) 3.混原创 2016-07-18 00:29:47 · 292 阅读 · 0 评论 -
操作系统---进程/线程 间通信
进程间通信 三个问题: 进程间的信息传递方式 对共享变量的访问 进程间执行顺序的问题 竞争条件:多个进程访问共享变量,结果取决于进程运行时的精确时序。 临界区: 互斥访问 忙等待互斥:屏蔽中断、锁变量、严格轮换、Perterson解法、TSL指令。 睡眠与唤醒方式。 生产者消费者问题: 之前接触时以为弄懂了,现在细想其实不然,以为一个共享变量的互斥访问就可以解决,no! Cpu在即将原创 2016-07-18 00:35:57 · 752 阅读 · 0 评论 -
操作系统---进程/线程 间通信
进程间通信 1. 三个问题: 进程间的信息传递方式 对共享变量的访问 进程间执行顺序的问题 2. 竞争条件 多个进程访问共享变量,结果取决于进程运行时的精确时序。 3. 临界区 互斥访问 忙等待互斥:屏蔽中断、锁变量、严格轮换、Perterson解法、TSL指令。 睡眠与唤醒方式。 4. 生产者消费者问题 之前接触时以为弄懂了,现在细想其实不然,以为一个原创 2016-07-18 00:42:41 · 518 阅读 · 0 评论