1.简介 本文主要介绍三个文件bootsect.s、setup.s、head.s,主要是做了些从软盘加载内核和设置32位保护模式的操作。 2.程序分析 当PC电源打开后,BIOS自检后将bootsect读入内存绝对地址0x7c00处,因为bootsect.s的结尾是: .word ...
文件系统的文件太多,而且是照搬的MINIX的文件系统,不想继续分析下去了。缓冲区机制和文件系统密切相关,所以这里就简单分析一下缓冲区机制。 buffer.c 程序用于对高速缓冲区 池 进行操作和管理。高速缓冲区位于内核代码块和主内存区之间,见图 中所示。高速缓冲区在块设备与内核其它程序之间起着一个桥梁作用。除了块设备驱动程序以外,内核程序如果需要访问块设备中的数据,就都需要经过高速缓冲区来间接地操 ...
2016-07-11 23:49 0 2088 推荐指数:
1.简介 本文主要介绍三个文件bootsect.s、setup.s、head.s,主要是做了些从软盘加载内核和设置32位保护模式的操作。 2.程序分析 当PC电源打开后,BIOS自检后将bootsect读入内存绝对地址0x7c00处,因为bootsect.s的结尾是: .word ...
缓冲区溢出保护机制 Linux canary(栈保护) 栈溢出保护是一种缓冲区溢出攻击的缓解手段,当函数存在缓冲区溢出攻击漏洞时,攻击者可以覆盖栈上的返回地址来让shellcode能够得到执行。 当启用栈保护后,函数开始执行的时候会先往栈里插入cookie信息,该cookie往往放置 ...
Linux0.11内核剖析–内核体系结构 《Linux内核完全注释》下载:http://files.cnblogs.com/files/HanBlogs/linux-kernel.pdf(进入pdf后要点击右下角保存喔^_^) 一个完整可用的操作系统主要 ...
转自:https://blog.csdn.net/eydwyz/article/details/56671023 循环缓冲区在一些竞争问题上提供了一种免锁的机制,免锁的前提是,生产者和消费 都只有一个的情况下,否则也要加锁。下面就内核中提取出来,而经过修改后的fifo进 行简要的分析 ...
转自:https://blog.csdn.net/DLUTBruceZhang/article/details/9050467 https://www.cnblogs.com/yc3110/p/10 ...
背景 之前在linux下手写c语言日志库的时候,遇到日志内容无法及时刷新的情况,百思不得其解;最后查资料才知道是默认的缓冲区设置的问题。‘ 与之相关的缓冲区设置函数有setbuf和setvbuf 分析 缓冲区分类:1.行缓冲 2.全缓冲 3.无缓冲 行缓冲特点是: 默认大小 ...
在上章34.Linux-printk分析、使用printk调试驱动里讲述了: printk()会将打印信息存在内核的环形缓冲区log_buf[]里, 可以通过dmesg命令来查看log_buf[] 1.环形缓冲区log_buf[]又是存在内核的哪个文件呢? 位于 ...
公布软件包包括内容: bootimage.Z - 具有美国键盘代码的压缩启动映像文件; rootimage.Z - 以1200kB 压缩的根文件系统映像文件; linux-0.11.tar.Z- 内核源码文件; as86.tar.Z - linux bruce evans'二进制 ...