首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux内核分析》小节

之前学完C语言的时候,就想认识这个神秘的Linux内核了,可是一直在数学建模和各种活动中抽不开身,学习的过程也是不得其法。...直到我看到孟宁老师的《Linux内核分析》这门课时,我想我大概可以在二十年后吹牛了:“当年我大二,读Linux内核源码的时候.....” 只是在学习的过程中,没有找到合适的参考书,导致复习有些困难。...通过一个简单的时间片轮转多道程序内核代码,分析linux操作系统 mykernel是一个基于Linux 3.9.4的内核模拟程序,通过观察软件模拟的操作系统运行过程可以帮助我们理解操作系统的进程工作、调度机制...跟踪分析Linux系统的启动过程 MenuOS是一个基于Linux 3.18.6内核的微型操作系统,本文使用gdb来观察系统的启动过程,至init进程被启动为止。...陈政/arc001    原创作品转载请注明出处  《Linux内核分析》MOOC课程

1.6K60

Linux内核配置

net.core.wmem_max = 16777216 #在每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目。...方法是在服务器上禁止 net.ipv4.tcp_timestamps = 0 #对于远端的连接请求SYN,内核会发送SYN + ACK数据报,以确认收到上一个 SYN连接请求包。...conf.all.secure_redirects = 0 #仅仅接收发给默认网关列表中网关的ICMP重定向消息 net.ipv4.conf.default.secure_redirects = 0 #该值越高则linux...内核执行启发式内存过量使用处理,方法是估算可用内存量,并拒绝明显无效的请求。遗憾的是因为内存是使用启发式而非准确算法计算进行部署,这个设置有时可能会造成系统中的可用内存超载。...#1 — 内核执行无内存过量使用处理。使用这个设置会增大内存超载的可能性,但也可以增强大量使用内存任务的性能。

2.4K30
您找到你想要的搜索结果了吗?
是的
没有找到

Linux 内核】编译 Linux 内核 ⑤ ( 查看 .config 编译配置文件 | 正式编译内核 )

文章目录 一、查看 .config 编译配置文件 二、正式编译内核 一、查看 .config 编译配置文件 ---- 在上一篇博客 【Linux 内核】编译 Linux 内核 ④ ( 打开 Linux...内核编译 菜单配置 |菜单配置中的光标移动与选中状态 | 保存配置 | 配置项帮助文档 ) 中 , 已经将编译配置保存到了 .config 文件中 ; 查看 .config 编译配置文件 , 在 linux...内核源码根目录中 , 执行 gedit .config 命令 , 查看 .config 编译配置文件 : ( 也可以使用 vi , vim 等文本编辑器查看 ) 在 .config 配置中 , #...file; DO NOT EDIT. # Linux/x86 5.6.14 Kernel Configuration # # # Compiler: gcc (Ubuntu 5.4.0-6ubuntu1...---- 在 Linux 内核源码根目录 , 执行 sudo make j4 开始编译 Linux 内核 ;

12.1K40

Linux 内核】编译 Linux 内核 ④ ( 打开 Linux 内核编译 菜单配置 |菜单配置中的光标移动与选中状态 | 保存配置 | 配置项帮助文档 )

文章目录 一、打开 Linux 内核编译 菜单配置 二、菜单配置中的光标移动与选中状态 三、保存配置 四、配置项帮助文档 一、打开 Linux 内核编译 菜单配置 ---- 执行 make menuconfig...命令 , 弹出菜单配置 ; 二、菜单配置中的光标移动与选中状态 ---- 其中左侧的 * 表示选中状态 , 通过 上下箭头 按键 , 可以上下移动光标 , 按下 空格 按键 , 可以切换 选中 / 取消选中...状态 , 选中状态下 , 条目左侧会显示 * 符号 ; 按下 左右 箭头按键 , 会切换下面的 选项 ; 三、保存配置 ---- 选择 底部的 Save 选项 , 然后按回车 , 即可保存配置 ,...点击 OK , 继续下一步 , 保存完成 , 选择 Exit 退出 ; 内核的编译配置保存在了 .config 文件中 ; 四、配置项帮助文档 ---- 在菜单配置中 , 可以选择裁剪一些内核模块..., 内核越小 , 运行速度越快 ; 上面的内核编译选项 , 如果不清楚细节 , 暂时按照默认配置编译即可 ; 如果想要了解某一项配置的具体作用 , 选中指定的项 , 如 : 按下 " Shift +

2.2K20

Linux内核配置-ARP系列

(不知道怎么翻译合适,网上有一个参考但我认为无法理解它的含义:不回应该网络界接口的arp请求,而只对设置的唯一和连接地址做出回应) 4-7 - 保留未使用 8 -不回应所有(本机地址)的arp查询 在设置参数的时候将...这个Linux服务器X将发送ARP请求来获取目标(或网关)的mac地址。在这种情况下,ARP请求包的源IP地址是什么呢?...其实对于大部分路由器来说ARP请求包中的源IP地址使用发送ARP请求包的网络接口上配置的IP地址(在上面的例子中为IP2)。但是,linux服务器的行为是点不同。...在Linux服务器中通过Linux内核数据arp_announce,ARP请求中源地址的选择是完全可配置。...其实arp_announce是为了解决Linux服务器作为路由器时的arp问题,因为路由器一般是动态学习ARP包的(一般动态配置DHCP的话)。

5.8K20

Linux 内核】编译 Linux 内核 ③ ( 安装 ncurses | 安装 flex | 安装 bison | 打开 Linux 内核编译配置菜单 )

文章目录 一、安装 ncurses 二、安装 flex 三、安装 bison 四、打开 Linux 内核编译配置菜单 开始编译 Linux 内核之前 , 需要先执行 make menuconfig 命令..., 打开 Linux 内核编译配置菜单 , 进行 编译配置 ; 执行上述命令后 各种报错 , 最终排查完毕后 , 需要安装 ncurses , flex , bison 这 3 个库或软件 , 参考...【错误记录】编译 Linux 内核报错 ( Unable to find the ncurses package. ) 【错误记录】编译 Linux 内核报错 ( /bin/sh: 1: flex:...not found ) 【错误记录】编译 Linux 内核报错 ( /bin/sh: 1: bison: not found ) 博客 , 进行安装 ; 一、安装 ncurses ---- 执行 sudo...-5.6.14# 四、打开 Linux 内核编译配置菜单 ---- 再次执行 make menuconfig 命令 , 成功弹出 菜单配置图形界面 ;

23.6K40

Linux内核参数的配置方法

/proc/sys/下的文件和子目录比较特别,它们对应的是系统内核参数,更改文件内容就意味着修改了相应的内核参数,可以简单的使用echo命令来完成修改: echo 1 > /proc/sys/net/ipv4...使用echo修改内核参数很方便,但是系统重启后这些修改都会消失,而且不方便配置参数的集中管理。/sbin/sysctl命令就是用来查看和修改内核参数的工具。...sysctl -a会列出所有内核参数当前的配置信息,比遍历目录/proc/sys/方便多了。...更常用的方式是,把需要修改的配置集中放在/etc/sysctl.conf文件中,使用sysctl -p重新加载配置使其生效。...因此放在/etc/sysctl.conf中的系统参数设置在重启后也同样生效,同时也便于集中管理修改过了哪些内核参数。 最后,哪里有比较完整的内核参数说明文档?我觉得kernel.org的文档比较全。

20410

RMAN 配置保留策略

1、什么是备份保留策略     也就是说备份可以保留多久,需要保留多久的问题,我们可以通过configure retention policy 来进行配置     注意,保留策略是相对于恢复而言,也就是说根据恢复的需要来制定保留策略...    比如系统中完整地备份是8天以前的,即便当前产生了新的完整备份,上次的完整备份也应当被保留,而不是说只要过了7天这些备份就不再需要     配置恢复窗口保留策略:          CONFIGURE...RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;     对于上述配置,每一个数据文件、备份应当满足这个条件:SYSDATE - BACKUP CHECKPOINT...4、无保留策略     无保留策略也就是禁用保留策略,不使用任何保留策略。    ...配置保留策略: configure retention policy to none     恢复到缺省保留策略:configure retention policy clear   5、相关演示

1K30

Redis linux下安装配置

可以检测Redis当前状态参数及延迟状况 redis.conf配置说明 1....Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程     daemonize no 2....日志记录方式,默认为标准输出,如果配置Redis为守护进程方式运行,而这里又配置为日志记录方式为标准输出,则日志将会发送给/dev/null     logfile stdout 8....设置Redis连接密码,如果配置了连接密码,客户端在连接Redis时需要通过AUTH 命令提供密码,默认关闭     requirepass foobared 16....指定包含其它的配置文件,可以在同一主机上多个Redis实例之间使用同一份配置文件,而同时各个实例又拥有自己的特定配置文件     include /path/to/local.conf 配置完成后,输入一下命令启动

49920

Linux 内核Linux 内核源码结构 ( 下载 Linux 内核源码 | 使用 VSCode 阅读 Linux 内核源码 )

文章目录 一、下载 Linux 内核源码 二、使用 VSCode 阅读 Linux 内核源码 一、下载 Linux 内核源码 ---- 参考 【Linux 内核】编译 Linux 内核 ① ( 下载指定版本的...Linux 内核源码 | Linux 内核版本号含义 | 主版本号 | 次版本号 | 小版本号 | 稳定版本 ) 博客 , 下载 Linux 5.6.18 版本的内核源码 ; 5.x 内核源码下载地址...: https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/ Linux 内核 5.6.18 版本 : https://mirrors.edge.kernel.org...参考 【错误记录】解压 Linux 内核报错 ( Can not create symbolic link : 客户端没有所需的特权 | Windows 中配置 7z 命令行执行解压操作 ) 博客 ;...不同版本的 Linux 内核 区别 : 系统调用 : 其系统调用是相同的 , 新的版本可能会增加新的系统调用 ; 设备文件 : 各内核版本的设备文件都是相同的 , 但是 内部接口 可能不同 ; 二、使用

23.3K32

Linux 内核Linux 内核源码结构 ( 下载 Linux 内核源码 | 使用 VSCode 阅读 Linux 内核源码 )

文章目录 一、下载 Linux 内核源码 二、使用 VSCode 阅读 Linux 内核源码 一、下载 Linux 内核源码 ---- 参考 【Linux 内核】编译 Linux 内核 ① ( 下载指定版本的...Linux 内核源码 | Linux 内核版本号含义 | 主版本号 | 次版本号 | 小版本号 | 稳定版本 ) 博客 , 下载 Linux 5.6.18 版本的内核源码 ; 5.x 内核源码下载地址...参考 【错误记录】解压 Linux 内核报错 ( Can not create symbolic link : 客户端没有所需的特权 | Windows 中配置 7z 命令行执行解压操作 ) 博客 ;...不同版本的 Linux 内核 区别 : 系统调用 : 其系统调用是相同的 , 新的版本可能会增加新的系统调用 ; 设备文件 : 各内核版本的设备文件都是相同的 , 但是 内部接口 可能不同 ; 二、使用...按钮 , 此时就可以在 VSCode 中阅读 Linux 内核源码 ;

21.3K30

linux内核编程_linux内核是什么

内核——操作系统的内在核心 设备驱动程序 启动引导程序 命令行shell 其他种类的用户界面—-操作系统的外在表象 基本的文件管理工具和系统工具 Linux内核的组成 Linux内核源代码目录结构是什么...如何实现从用户空间到内核空间的控制转移? 只能通过系统调用和硬件中断完成 Linux内核的编译及加载 内核配置系统由哪既部分组成?...Makefile:分布在Linux 内核源代码中的Makefile,定义Linux 内核的编译规则。 配置文件(Kconfig):给用户提供配置选择的功能。...在Linux 内核中增加程序需要完成哪些工作? 将编写的源代码复制到Linux 内核源代码的相应目录。 在目录的Kconfig文件中增加新源代码对应项目的编译配置选项。...次引导加载程序加载Linux内核和可选的初始RAM 磁盘,将控制权交给Linux内核源代码。 运行被加载的内核,并启动用户空间应用程序。

18.9K30

LINUX内核

一、Linux内核2.6特点: 1.新的调度器 2.内核抢占 3.改进线程模型 4.虚拟内存 5.文件系统 6.音频:音频体系结构ALSA.支持USB音频和MIDI设备,并支持全双工重放功能。...二、LINUX内核的组成 1.LINUX内核源代码目录结构 1)arch:包含和硬件体系结构相关的代码,每种平台占一个相应的目录。如i386,arm,powerpc,mips等。...)mm:内存管理代码,而和平台相关的代码放在arch/*/mm目录下 13)net:网络相关代码,实现各种网络相关协议 14)scripts:配置内核中脚本文件 15)security:主要是SELinux...模块 16)sound:ALSA,OSS音频中设备的核心代码和常用设备驱动 17)usr:实现了用于打包和压缩的CPIO等 2.LINUX内核组成部分 2.1 LINUX主要用进程调度,虚拟文件系统,...3.Linux内核空间与用户空间 Linux只能通过系统调用和硬件中断来完成用户空间到内核空间的控制转移

13.9K30

Linux 内核】编译 Linux 内核 ② ( 解压内核源码 | 查询当前 Linux 内核版本号 | 进入并查看 linux 内核源码目录 )

文章目录 一、解压内核源码 二、查询当前 Linux 内核版本号 三、进入并查看 linux 内核源码目录 一、解压内核源码 ---- 将 下载的 Linux 内核源码 linux-5.6.14.tar.gz...拷贝到 Ubuntu 虚拟机中 , 执行 tar xvf linux-5.6.14.tar.gz 命令 , 解压 Linux 内核源码 ; 解压完毕后 , linux-5.6.14 目录中就是解压后的...Linux 内核源码 ; 二、查询当前 Linux 内核版本号 ---- 执行 uname -a 命令 , 查询当前 Ubuntu 系统的 Linux 内核版本号 , 执行过程如下 : root@ubuntu...x86_64 x86_64 x86_64 GNU/Linux root@ubuntu:~/kernel# root@ubuntu:~/kernel# 当前的内核版本号是 4.13.0 ; 三...、进入并查看 linux 内核源码目录 ---- 进入之前解压的 linux-5.6.14 内核源码目录 ; root@ubuntu:~/kernel# ls linux-5.6.14 linux-5.6.14

87K60

Linux 内核 vs Windows 内核

对于服务器使用的操作系统基本上都是 Linux,而且内核源码也是开源的,任何人都可以下载,并增加自己的改动或功能,Linux 最大的魅力在于,全世界有非常多的技术大佬为它贡献代码。...操作系统核心的东西就是内核,这次我们就来看看,Linux 内核和 Windows 内核有什么区别? ---- 内核 什么是内核呢?...完成第一版 Linux 后,Linux Torvalds 就在网络上发布了 Linux 内核的源代码,每个人都可以免费下载和使用。...Monolithic Kernel Monolithic Kernel 的意思是宏内核Linux 内核架构就是宏内核,意味着 Linux内核是一个完整的可执行程序,且拥有最高的权限。...分别为宏内核、微内核、混合内核的操作系统结构 与宏内核相反的是微内核,微内核架构的内核保留最基本的能力,比如进程调度、虚拟机内存、中断等,把一些应用放到了用户空间,比如驱动程序、文件系统等。

16.3K30
领券