06 2016 档案

摘要:1.文件系统介绍 一个简单的文件系统大致需要这么几个要素: ● 要有地方存放Metadata; ● 要有地方记录扇区的使用情况; ● 要有地方来记录任一文件的信息,比如占用了哪些扇区等; ● 要有地方存放文件的索引。 根据这些要素,同时参照Minix的文件系统,我们就把我们的文件系统设计成如下图所示 阅读全文
posted @ 2016-06-29 15:34 是非猫 阅读(2184) 评论(1) 推荐(0)
摘要:【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5598451.html 】 在上一篇的fork函数中,首先一上来就调用get_free_page为新任务的数据结构申请一页内存,在memory.c中: 上面有几个指令比较陌生,先介绍repne s 阅读全文
posted @ 2016-06-19 19:40 是非猫 阅读(1291) 评论(0) 推荐(1)
摘要:【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5597818.html 】 据说安卓应用里通过fork子进程的方式可以防止应用被杀,大概原理就是子进程被杀会向父进程发送信号什么的,就不深究了。 首先fork()函数它是一个系统调用,在sys.h 阅读全文
posted @ 2016-06-19 17:15 是非猫 阅读(2510) 评论(0) 推荐(0)
摘要:【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5597705.html 】 Linux内核因为使用了内存分页机制,所以相对来说好理解些。因为内存分页就是为了方便管理内存。 说到内存分页,最根部的要属页目录表了,head.h中: 然后再看head 阅读全文
posted @ 2016-06-19 11:24 是非猫 阅读(1824) 评论(0) 推荐(0)
摘要:【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5596830.html 】 上一篇说到进程调度归根结底是调用timer_interrupt函数,在system_call.s中: 前面一堆push指令保存当前的寄存器,然后在ret_from_sy 阅读全文
posted @ 2016-06-18 23:38 是非猫 阅读(1956) 评论(0) 推荐(0)
摘要:【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5596746.html 】 首先看main.c里的初始化函数main函数里面有个函数是对进程调度的初始化,sched_init()函数,次函数在sched.c中实现: 首先初始化任务0的TTS,F 阅读全文
posted @ 2016-06-18 19:42 是非猫 阅读(2012) 评论(0) 推荐(0)
摘要:【版权所有,转载请注明出处。出处:http://www.cnblogs.com/joey-hua/p/5570691.html 】 Linux内核从启动到初始化也看了好些个源码文件了,这次看到kernel文件夹下的system_call.s,这个文件主要就是系统调用的过程。但说到系统调用,不只是这一 阅读全文
posted @ 2016-06-09 01:24 是非猫 阅读(1823) 评论(0) 推荐(0)