分析进程创建的过程---linux内核学习笔记(六)

内容一:实验报告相关说明。

真实姓名 谢润帮

原创作品转载请注明出处 

所学课程:《Linux内核分析》MOOC课程  

链接:http://mooc.study.163.com/course/USTC-1000029000

时间: 2024-10-11 23:46:20

分析进程创建的过程---linux内核学习笔记(六)的相关文章

Linux内核学习第六周 进程描述与进程创建

1.task_struct的数据结构 1235struct task_struct { 1236 volatile long state; /* -1 unrunnable, 0 runnable, >0 stopped */ 1237 void *stack; 1238 atomic_t usage; 1239 unsigned int flags; /* per process flags, defined below */ 1240 unsigned int ptrace; 1241 12

linux内核学习笔记-2.进程管理

部分内容来自:Linux Kernel Development(Third Edition),Robert Love,陈莉君等译. 1.进程 进程是正在执行的程序代码的实时结果,包含打开的文件.挂起的信号等.线程是进程中的活动的对象,内核调度的对象是线程.在Linux内核对线程与进程并不加以区分,线程只不过是一种特殊的进程. 2.进程描述符 内核把进程的信息存放在task list的双向循环链表中,链表中的每一项都是类型为task_struct.成为进程描述符的的结构,包含一个具体进程的所有信息

可执行程序的装载和启动---linux内核学习笔记(七)

内容一:实验报告相关说明 真实姓名 谢润帮 原创作品转载请注明出处  所学课程:<Linux内核分析>MOOC课程   链接:http://mooc.study.163.com/course/USTC-1000029000 内容二:可执行文件的创建(自己本身对这块不熟,是通过查资料来学习的,篇幅有点多) 2.1 预处理阶段 预处理过程读入源代码,检查包含预处理指令的语句和宏定义,并对源代码进行相应的转换,预处理过程还会删除程序中的注释和多余的空白字符. 其中预处理指令主要包括以下四个方面: 2

计算机是如何工作的---linux内核学习笔记(一)

---恢复内容开始--- 内容一:实验报告相关说明. 真实姓名 谢润帮 原创作品转载请注明出处  所学课程:<Linux内核分析>MOOC课程   链接:http://mooc.study.163.com/course/USTC-1000029000 虚拟实验室实验截图 内容二:汇编代码的工作过程中堆栈的变化分析 分析分两部分:(堆栈地址的标号没有对齐,请谅解) 第一部分是堆栈变换图. 第二部分是变换图的说明. 第一部分 图解 第二部分 说明 一: 程序从main函数开始执行,此时假设ESP,

Linux内核学习笔记——内核内存管理方式

一 页 内核把物理页作为内存管理的基本单位:内存管理单元(MMU)把虚拟地址转换为物理 地址,通常以页为单位进行处理.MMU以页大小为单位来管理系统中的也表. 32位系统:页大小4KB 64位系统:页大小8KB 内核用相应的数据结构表示系统中的每个物理页: <linux/mm_types.h> struct page {} 内核通过这样的数据结构管理系统中所有的页,因此内核判断一个页是否空闲,谁有拥有这个页 ,拥有者可能是:用户空间进程.动态分配的内核数据.静态内核代码.页高速缓存…… 系统中

Linux内核的系统调用---linux内核学习笔记(四)

内容一:实验报告相关说明. 真实姓名 谢润帮 原创作品转载请注明出处  所学课程:<Linux内核分析>MOOC课程   链接:http://mooc.study.163.com/course/USTC-1000029000 代码来源于孟宁老师的课件 虚拟实验室实验截图 实验结果图 实验代码截图

Linux内核学习笔记

1.vanbreaker的专栏 2.LinuxKernel Exploration 3.DroidPhone的专栏 4.Linux内核研究以及学习文档和ARM学习以及研究的开放文档   [力荐] 5.Linux内核之旅 6.时钟管理系统和中断子系统 7. http://www.cnblogs.com/bastard/category/412387.html

Linux内核学习笔记——VFS

概念: ①硬链接:若一个 inode 号对应多个文件名,则称这些文件为硬链接.即硬链接就是同一个文件使用了多个别名.硬链接可由命令 link 或 ln 创建. 其特性: 文件有相同的 inode 及 data block: 只能对已存在的文件进行创建: 不能交叉文件系统进行硬链接的创建: 不能对目录进行创建,只可对文件创建: 删除一个硬链接文件并不影响其他有相同 inode 号的文件. ②软连接:若文件用户数据块中存放的内容是另一文件的路径名的指向,则该文件就是软连接.软链接就是一个普通文件,只

Linux内核学习-进程

先说几个术语: 一.Linux进程的五个段 下面我们来简单归纳一下进程对应的内存空间中所包含的5种不同的数据区都是干什么的.重点:代码段.数据段.堆栈段,这是一个概念堆.栈.全局区.常量区,这是另一个概念1)代码段:代码段是用来存放可执行文件的操作指令,也就是说是它是可执行程序在内存中的镜像.代码段需要防止在运行时被非法修改,所以只准许读取操作,而不允许写入(修改)操作--它是不可写的.代码段(code segment/text segment)通常是指用来存放程序执行代码的一块内存区域.这部分