操作系统学习笔记-05文件管理

通常把文件与管理信息资源的程序的集合称为文件系统,采用统一方法管理用户信息和系统信息的存储、检索、更新、共享、保护,并提供一整套文件使用、操作方法。

文件系统的功能就是在逻辑文件和屋里文件、逻辑地址喝物理地址、逻辑结构和物理结构之间的转换,使存取速度快,空间利用率高,数据可共享、安全可靠性好。

继续阅读

操作系统学习笔记-04设备管理

现代计算机系统外设分为两大类,一类是存储型设备,另一类是I/O型设备。

设备管理是操作系统中最为庞杂和琐碎的部分,通常使用I/O中断、缓冲区管理、通道、设备驱动调度等多种技术,克服了由于设备和CPU速度不匹配产生的问题,使设备能和CPU并行工作。另一方面,操作系统把所有设备抽象为文件,便于管理。

设备管理具有以下功能:设备中断处理、缓冲区管理、设备分配去配、设备驱动调度、虚拟设备。

继续阅读

操作系统学习笔记-02同步、通信与死锁

早期人们设计程序,采用顺序执行,在处理器上的执行有严格的顺序,即在一个操作结束后,才进行后面的操作,这称为程序内部顺序性;如果计算任务需要多个程序完成,这些程序按照调用次序有序执行,则称为程序外部顺序性。顺序程序设计具有如下特性:执行的顺序性、环境的封闭性、结果的确定性、过程的可再现性。

操作系统的基本控制和管理都围绕进程展开,最复杂的就是由于支持并发并行机制而引起的。自从操作系统引入并发程序设计技术后,程序的执行不再是顺序的,一个顺序未执行完而另一个程序便已经开始执行了,程序外部的顺序特性小时,程序与计算不再一一对应。

让程序并发执行能发挥CPU和设备的并行工作能力,从而提高计算机系统效率,一个程序被设计成可与其他程序并发执行,这这程序设计方法成为并发程序设计。

为协调好进程与进程之间的关系,避免因为同时使用资源而产生冲突,我们就有了锁的机制,即对共同享有的资源互斥使用,这就是这一部分主要讨论的内容。

继续阅读

利用终端统计代码量

大半夜的,没回寝室,住实验室了,主要是因为实验室在快锁门时发现有个困扰两个小时的问题能够得到解决,所以不打算回去了。

刚才解决完手里的问题,看了下时间,已经到午夜了,想想整个产品离上架真心不远了,心里还有点小激动。瞄了一眼主ViewController的行数,1087,这还是尽量压缩,重用两次以上的代码尽量封装成类,看来是要好好研究下iOS的MVVM函数响应式框架了,看了几个这个架构的开源项目,感觉学习成本还是挺大的。

接着说正事……话说看见主VC行数破1000了,我就想着统计一下整个应用多少行,然后Google了一下统计项目行数的方法,记录一下。

安利一下马上上线的项目:Wear省心天气

继续阅读

操作系统学习笔记-01处理器管理

处理器的管理是操作系统重要的核心组成部分。处理器的管理优劣直接影响系统性能,程序以进程的形式来占用处理器和系统资源,处理器以进程的形式来占用处理器和系统资源,处理器管理中最重要的是处理器调度,即进程调度,也就是控制、协调进程对处理器的竞争。

继续阅读