Linux复习(六)
生活随笔
收集整理的這篇文章主要介紹了
Linux复习(六)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、內核
操作系統是一系列程序的集合,其中最重要的部分構成了內核
單內核/微內核
? ?單內核是一個很大的進程,內部可以分為若干模塊,運行時是一個獨立的二進制文件,模塊間通訊通過直接調用函數實現
? ?微內核中大部分內核作為獨立的進程在特權下運行,通過消息傳遞進行通訊
Linux內核的能力
? ? 內存管理,文件系統,進程管理,多線程支持,搶占式,多處理支持
Linux內核區別于其他UNIX商業內核的優點
? ?單內核,模塊支持
? ?免費/開源
? ?支持多種CPU,硬件支持能力非常強大
? ?Linux開發者都是非常出色的程序員
? ?通過學習Linux內核的源碼可以了解現代操作系統的實現原理
層次結構
二、模塊&驅動
許多常見驅動的源代碼集成在內核源碼里
也有第三方開發的驅動,可以單獨編譯成 ?模塊.ko
驅動的編譯需要內核頭文件的支持?#include <linux/kernel.h> ? ? ? ? ? ?
1.加載模塊的命令: 1)底層命令
? ?insmod
? ?rmmod
2)高層命令
? ?modprobe
? ?modprobe -r
2.
內核編程和外圍程序的差別。(主觀題,要能寫出一段)???重點!
內核編程的注意點
不能使用C庫來開發驅動程序
沒有內存保護機制
小內核棧
?并發上的考慮
4.
內核模塊的一個簡單例子(要能看懂)
#include <linux/module.h>
#include <linux/init.h>
static int __init hello_init(void)
{
printk(KERN_INFO "Hello world\n");
return 0;
}
static void __exit hello_exit(void)
{
printk(KERN_INFO "Goodbye world\n");
}
module_init(hello_init);
module_exit(hello_exit);
?著作權歸作者所有:來自51CTO博客作者Hyman1994的原創作品,如需轉載,請注明出處,否則將追究法律責任
0
微博 QQ 微信收藏
上一篇:Linux復習(七) 下一篇:Linux復習(四)Shell編... Hyman199453篇文章,7W+人氣,0粉絲
轉載于:https://blog.51cto.com/hyman1994/1663631
總結
以上是生活随笔為你收集整理的Linux复习(六)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Centos 7 更改网卡名字
- 下一篇: JavaScript--DOM操作表格及