内核,是一个操作系统的核心.它负责管理系统的进程.内存.设备驱动程序.文件和网络系统,决定着系统的性能和稳定性.Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新.新的内核修订了旧内核的bug,并增加了许多新的特性.如果用户想要使用这些新特性,或想根据自己的系统度身定制一个更高效,更稳定的内核,就需要重新编译内核. 本文将以kernel 4.7.2版本为实验,操作平台为RedHat 7.2,将通过以下三个方面来说明内核及模块的编译. 源码编译Linux内核 使用Linux内核模块…
转自:https://blog.csdn.net/shichaog/article/details/40218763 Linux系统启动那些事—基于Linux 3.10内核 csdn 我的空间的下载地址 ,有些做的效果网页上没了,感兴趣建议去上面地址下载pdf版的 下载地址 http://download.csdn.net/detail/shichaog/8054005   shichaog@126.com启动流程概述也许你会好奇Linux是如何启动的?本文围绕Linux如何启动起来展开一些介绍…
今早5点半起来没有開始写文章,而是去西湾红树林连跑带走折腾了将近20公里.回来后就8点多了...洗了个澡之后坐稳当.開始写一段关于我的故事.        在2014年到2015年期间,我在负责研发一款无线安全网关.事实上就是一个VPN.接入设备包含手机,xPad,盒子...这些设备的OS除了iOS之外,基本上都是基于Linux的Android.这个网关一般用于各种须要高性能加密通信的场合,在传输数据之前须要比較强的认证,服务端支持4G的加密带宽.支持复杂的接入控制和訪问控制,支持复杂的Qos.…
vortex86 SIS550 Minit-5250E瘦客户机,使用CF卡启动,显示不支持DMA. 搜索得新内核已基本不再使用ide=nodma参数了,查到这篇文章:“Debian下关闭CF卡的DMA模式” 在grub的启动参数中了一条 “libata.dma=0”就关闭DMA了. 原来的dmesg可以看到内核不断尝试DMA方式,直到最后PIO方式才能正确访问. [ 10.687047] ata1.00: configured for UDMA/33 [ 10.689746] scsi 0:0:…
转自:https://blog.csdn.net/dog250/article/details/5303442 linux的电源管理发展非常迅速,比如在挂起到内存的时候,系统会冻结住所有的进程,也就是所有的进程都不再运行,它们被冻结之前,最后的状态被保存,等到解冻的时候,所有进程恢复运行,linux对此的实现非常巧妙,它没有用特殊的机制来实现这一点,而是用它的freeze框架加上信号处理来实现的,在freeze所有进程的时候并没有将之挂起或者说使其不再运行,而是在信号处理的开始挂了一个类似于钩子…
Linux系统性能10条命令监控 概述 通过执行以下命令,可以在1分钟内对系统资源使用情况有个大致的了解. uptime dmesg | tail vmstat 1 mpstat -P ALL 1 pidstat 1 iostat -xz 1 free -m sar -n DEV 1 sar -n TCP,ETCP 1 top 其中一些命令需要安装sysstat包,有一些由procps包提供.这些命令的输出,有助于快速定位性能瓶颈,检查出所有资源(CPU.内存.磁盘IO 等)的利用率(utili…
ARM linux解析之压缩内核zImage的启动过程 semilog@163.com 首先,我们要知道在zImage的生成过程中,是把arch/arm/boot/compressed/head.s 和解压代码misc.c,decompress.c加在压缩内核的最前面最终生成zImage的,那么它的启动过程就是从这个head.s开始的,并且如果代码从RAM运行的话,是与位置无关的,可以加载到内存的任何地方. 下面以arch/arm/boot/compressed/head.s为主线进行启动过程解…
作者:larmbr宇链接:https://www.zhihu.com/question/35484429/answer/62964898来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 2.6 时代跨度非常大,从2.6.0 (2003年12月发布[36]) 到 2.6.39(2011年5月发布), 跨越了 40 个大版本. 3.0(原计划的 2.6.40, 2011年7月发布) 到 3.19(2015年2月发布). 4.0(2015年4月发布)到4.2(2015年8…
Linux 用户态与内核态的交互  在 Linux 2.4 版以后版本的内核中,几乎全部的中断过程与用户态进程的通信都是使用 netlink 套接字实现的,例如iprote2网络管理工具,它与内核的交互就全部使用了netlink,著名的内核包过滤框架Netfilter在与用户空间的通 读,也在最新版本中改变为netlink,无疑,它将是Linux用户态与内核态交流的主要方法之一.它的通信依据是一个对应于进程的标识,一般定为该进 程的 ID.当通信的一端处于中断过程时,该标识为 0.当使用 net…
本文转载自:http://blog.csdn.net/zcabcd123/article/details/8272360 这是一篇学习笔记,主要是对<Linux 系统内核空间与用户空间通信的实现与分析>中的源码imp2的分析.其中的源码,可以到以下URL下载: http://www-128.ibm.com/developerworks/cn/Linux/l-netlink/imp2.tar.gz [size=3]参考文档[/size] <linux 系统内核空间与用户空间通信的实现与分析…