随笔分类 -  操作系统

linux内核 内存管理
摘要:以下内容汇总自网络。 在早期的计算机中,程序是直接运行在物理内存上的。换句话说,就是程序在运行的过程中访问的都是物理地址。 如果这个系统只运行一个程序,那么只要这个程序所需的内存不要超过该机器的物理内存就不会出现问题,我们也就不需要考虑内存管理这个麻烦事了,反正就你一个程序,就这么点内存,吃不吃得饱 阅读全文

posted @ 2017-08-23 19:06 张小贱1987 阅读(329) 评论(0) 推荐(0)

linux内核 同步
摘要:锁 linux本身实现了集中锁机制,各种锁机制之间的差别是,当锁已经被其他线程持有的时候,一些锁使用自旋的方式来等待,另外一些锁会当当前线程改变为睡眠状态然后等待被唤醒。 锁的争用 如果一个锁处于高度争用状态,那么这个锁会成为系统的瓶颈,严重降低系统性能。 伸缩性 作者在树上说是扩展性,或者翻译的问 阅读全文

posted @ 2017-08-23 16:22 张小贱1987 阅读(160) 评论(0) 推荐(0)

linux内核 进程调度
摘要:概念: 进程调度决定那个进程投入运行,运行多长时间。 进程调度没有太复杂的原理,最大限度的利用处理器时间的原则是:只要有可执行的程序,那么总会有进程在执行,如果可运行的进程比处理器数目要多,那么注定要有部分进程在等待。 多任务操作系统: 抢占式多任务模式:由调度系统来决定那个进程在运行。 非抢占式多 阅读全文

posted @ 2017-08-23 13:18 张小贱1987 阅读(279) 评论(0) 推荐(0)

linux内核 进程管理
摘要:进程和线程 进程不单单包含可执行代码(代码段),好包含打开的文件,挂起的信号,处理器状态,虚拟内存地址等。 线程:从内核的角度来说,它并没有线程这个概念。Linux把所有线程都当做进程来实现。内核并没有准备特别的调度算法或者定义特别的数据结构来表示线程。相反,线程仅仅被视为一个与其他进程共享某些资源 阅读全文

posted @ 2017-08-23 12:22 张小贱1987 阅读(187) 评论(0) 推荐(0)

linux内核 概念
摘要:内核Kernel只是操作系统的一部分,操作系统本身在内核之上还包含命令行shell和其他种类的用户界面。 通常内核包含: 中断服务程序 进程管理和调度程序 内存管理程序 进程同步方法 IO和设备等 在我的开发工作中,重点用到的是高亮的三个。 应用系统通过系统调用与内核通信: 关于系统调用和shell 阅读全文

posted @ 2017-08-23 11:33 张小贱1987 阅读(247) 评论(0) 推荐(0)

导航