03 2016 档案

摘要:第三章 进程管理 本章主要内容: 进程和线程 进程的任务结构 进程和线程的创建 进程的终止 1. 进程和线程 进程:进程就是处于执行期的程序,实际上,进程就是正在执行的程序代码的实时结果; 线程:执行线程,简称线程,是进程中活动的对象(每个线程拥有独立的程序计数器、进程栈、和一组进程寄存器),内核调 阅读全文
posted @ 2016-03-30 00:21 20135302魏静静 阅读(199) 评论(0) 推荐(0)
摘要:linux课程第六周实验及总结 实验及学习总结 1.进程描述符task_struct数据结构 进程的作用: 将信号、进程间通信、内存管理和文件系统联系起来 操作系统的三大功能: 进程管理、内存管理、文件系统 内核通过唯一的进程标识PID来区别每个进程 Linux为每个进程分配一个8KB大小的内存区域 阅读全文
posted @ 2016-03-28 16:55 20135302魏静静 阅读(231) 评论(1) 推荐(0)
摘要:第十八章 调试 一、内核中的bug 内核bug的原因可能有: - 错误代码 - 同步时发生的错误,例如共享变量锁定不当 - 错误的管理硬件 - …… 内核bug发作的症状可能有: - 降低所有程序的运行性能 - 毁坏数据 - 使得系统处于死锁状态 - …… 内核开发比起用户开发要多考虑一些独特的问题 阅读全文
posted @ 2016-03-28 00:00 20135302魏静静 阅读(155) 评论(0) 推荐(0)
摘要:linux课程第五周实验及总结 一、学习总结 给MenuOS增加time和time-asm命令(四步操作命令) 给MenuOS增加time和time-asm命令(四步操作命令) 使用gdb跟踪系统调用内核函数sys_time 使用gdb跟踪系统调用内核函数sys_time 系统调用指令: 系统调用的 阅读全文
posted @ 2016-03-24 18:22 20135302魏静静 阅读(203) 评论(0) 推荐(0)
摘要:中间层 时刻注意可移植性和健壮性 必须检查每个参数,保证他们不但合法有效,而且正确。最重要——检查用户提供的指针: ※1.检查读写(1)向用户空间写入数据——copy_to_user()参数: (2)从用户控件读取数据——copy_from_user()把第二个参数指定的位置上的数据拷贝到第一个参数 阅读全文
posted @ 2016-03-21 17:01 20135302魏静静 阅读(227) 评论(0) 推荐(0)
摘要:代码如下: 阅读全文
posted @ 2016-03-20 23:01 20135302魏静静 阅读(156) 评论(0) 推荐(0)
摘要:Unix是一个强大、健壮和稳定的操作系统。 Unix——支持抢占式多任务、多线程。虚拟内存、换页、动态链接和TCP/IP网络。 操作系统是指在整个系统中负责完成最基本功能和系统管理的那些部分。 内核独立于普通应用程序,一般处于系统态,拥有受保护的内存空间和访问硬件设备的所有权限。这种系统态和被保护起 阅读全文
posted @ 2016-03-15 19:26 20135302魏静静 阅读(171) 评论(0) 推荐(0)
摘要:内核启动完成后进入menu程序(《软件工程C编码实践篇》的课程项目),支持三个命令help、version和quit,您也可以添加更多的命令,对选修过《软件工程C编码实践篇》的童鞋应该是a piece of cake.         启动Linux内核的三个参数: 0号进程有一个全局变量init_ 阅读全文
posted @ 2016-03-13 21:00 20135302魏静静 阅读(271) 评论(0) 推荐(0)
摘要:操作系统是如何工作的 1. 小结:计算机是怎样工作的 三个法宝 存储程序计算机、函数调用堆栈、中断机制 两把宝剑 中断上下文、进程上下文的切换 2. 堆栈 堆栈是C语言程序运行时必须的一个记录调用路径和参数的空间。 函数条用框架 传递参数 保存返回地址 提供局部变量空间... 堆栈相关寄存器: es 阅读全文
posted @ 2016-03-06 20:39 20135302魏静静 阅读(170) 评论(0) 推荐(0)