文章分类 -  二十四、Linux内核分析

摘要:https://makelinux.github.io/kernel/map/ 阅读全文
posted @ 2024-08-02 10:20 zwj鹿港小镇 阅读(10) 评论(0) 推荐(0) 编辑
摘要:一、一级缓存和二级缓存 一级缓存(L1 Cache)、二级缓存(L2 Cache)和三级缓存(L3 Cache)是计算机系统中常见的三级缓存层级结构。它们的作用是提高系统性能,减少对主存储器的访问时间,以加快对数据和指令的访问速度。下面分别介绍一级、二级和三级缓存的特点和作用: 一级缓存(L1 Ca 阅读全文
posted @ 2023-07-14 16:07 zwj鹿港小镇 阅读(144) 评论(0) 推荐(0) 编辑
摘要:用户空间: 应用程序使用malloc()申请内存,使用free()释放内存。malloc()和free()是glic库的内存分配器ptmalloc提供的接口;ptmalloc使用系统调用brk或者mmap向内核以页为单位申请内存,然后划分成很小内存块分配给应用程序。用户空间内存分配器,除了glibc 阅读全文
posted @ 2023-07-04 20:20 zwj鹿港小镇 阅读(12) 评论(0) 推荐(0) 编辑
摘要:1、bootLoader bootLoader是嵌入式设备中用来引导内核启动的一段代码。内核启动是需要一定条件的,当设备上电后会首先运行BootLoader,BootLoader会初始化必要的硬件,比如DDR、Flash、串口等,相关初始化完成后就会去启动内核。我的理解,BootLoader是一个概 阅读全文
posted @ 2023-06-10 14:31 zwj鹿港小镇 阅读(201) 评论(0) 推荐(0) 编辑
摘要:1、Linux操作系统的引导 (1)Linux操作系统代码是如何从硬盘中读出的 (2)Linux在启动的时候如何拿到硬件参数的 (3)Linux在初始运行中都做了什么 内核代码中boot地下有3个文件,bootsect.s、setup.s、head.s BIOS/Bootloader: 由PC机的B 阅读全文
posted @ 2023-05-07 13:56 zwj鹿港小镇 阅读(61) 评论(0) 推荐(0) 编辑
摘要:1、内核进程的销毁 前半部分: (1)exit是销毁函数 一个系统调用 do_exit; 首先是该函数会释放进程的代码段和数据段占用的内存 (2)关闭进程打开的所有文件,对当前的目录和i节点进行同步(文件操作); (3)如果当前要销毁的进程有子进程,那么就让1号进程作为新的父进程(init进程); 阅读全文
posted @ 2023-05-03 19:25 zwj鹿港小镇 阅读(31) 评论(0) 推荐(0) 编辑
摘要:1、进程调度函数 void schedule(void) { int i,next,c; struct task_struct ** p; /* check alarm, wake up any interruptible tasks that have got a signal */ for(p 阅读全文
posted @ 2023-04-20 00:03 zwj鹿港小镇 阅读(22) 评论(0) 推荐(0) 编辑
摘要:1、进程的结构 //task即进程的意思,这个结构体把进程能用到的所有信息进行了封装 struct task_struct { /* these are hardcoded - don't touch */ long state; //程序运行的状态/* -1 unrunnable, 0 runna 阅读全文
posted @ 2023-04-17 14:12 zwj鹿港小镇 阅读(66) 评论(0) 推荐(0) 编辑
摘要:一、系统进程的运转方式 系统时间:(jiffies 系统滴答) CPU内部有一个RTC,会在上电的时候调用mktime函数计算出1970年1.1日0时开始到当前开机点所过的秒数,给mktime函数传来的时间结构体的赋值是由初始化时从RTC中读出的参数,转化为时间存入全局变量中,并且会为jiffies 阅读全文
posted @ 2023-03-04 19:38 zwj鹿港小镇 阅读(32) 评论(0) 推荐(0) 编辑
摘要:计算机寄存器分类简介 32位CPU所含有的寄存器有: 4个数据寄存器(EAX、EBX、ECX和EDX) 2个变址寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP) 6个段寄存器(ES、CS、SS、DS、FS和GS) 1个指令指针寄存器(EIP) 1个标志寄存器(EFlags) 一、数据寄存器 阅读全文
posted @ 2022-11-06 12:43 zwj鹿港小镇 阅读(840) 评论(0) 推荐(0) 编辑
摘要:一、软中断和硬中断的区别 中断: 中断指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。硬中断: 硬件中断是一个异步信号, 表明需要注意, 阅读全文
posted @ 2022-11-05 22:26 zwj鹿港小镇 阅读(284) 评论(0) 推荐(0) 编辑
摘要:用户空间和内核空间用户程序有用户态和内核态两种状态。用户态就是执行在用户空间中,不能直接执行系统调用。必须先切换到内核态,也就是系统调用的相关数据信息必须存储在内核空间中,然后执行系统调用。 操作硬盘等资源属于敏感操作,为了内核安全,用户线程不能直接调用。而是采用了操作系统内核提供了系统调用接口,用 阅读全文
posted @ 2022-11-04 23:55 zwj鹿港小镇 阅读(142) 评论(0) 推荐(0) 编辑
摘要:学习计划: 一、操作系统的结构: 二、操作系统工作方式: (1)把操作系统从用户态切换到内核态(用户应用程序到内核的流程); (2)实现操作系统的系统调用(操作系统服务层); (3)应用操作系统提供的底层函数,进行功能实现; (4)退出后,从内核态切换到用户态; 三、操作系统内核中各级模块的相互关联 阅读全文
posted @ 2022-11-04 17:11 zwj鹿港小镇 阅读(44) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示