zoukankan      html  css  js  c++  java
  • 制作Linux内核

    《linux内核简介》

    <linux系统架构>

    系统架构

     

    用户部分:

    应用程序:GNU C 库
    内核部分:系统调用接口、内核、体系结构相关代码(与硬件相关的代码)

    划分原因:不同的运行空间所能访问的寄存器,访问的设备是不一样,其目的就是为了保护操作系统

    两种状态的转换:系统调用和硬件中断可以完成两种模式的转换

    内核架构

    system call interface(SCI)系统调用接口:resd(),write(),open()

    process management(MM)进程管理:进程的创建,进程删除,进程调度

    virtual file system(VFS):虚拟文件

    memory managment(MM):内存管理 :内存分配,内存的回收

    network stack:网络协议栈,主要负责实现网络协议

    arch(Architecture):体系结构代码,就是和cpu密切相关的代码

    device drivers:设备驱动程序

    《linxu 源代码》

    <源代码下载>

    www.kernel.org

    <目录结构>

     

    arch:arch 是archticture  的缩写,里面包含内核所支持的美中CPU结构体系,没给CPU 的子目录又包括boot ,mm ,kernel 等子目录,即系统引导,内存管理,系统调用

    documentation :内核文档,存放驱动使用方法,内存更新记录

    driver :驱动程序

    include:内核所需要的头文件,与平台无关的文件放在include/linux 子目录下,与平台相关的头文件则放在相应的子目录中。

    fs:file system .存放各种文件系统实现代码,每个子目录存放一个对应的文件系统 的实现代码,公用的源程序用于实现虚拟文件系统(vfs)

    net: 网路协议实现代码(注意:不是网卡驱动)

    <.source insight>

    1)创建新工程(注意:在那个盘创建文件就需要将将要阅读的源代码放在该盘,否者找不到,同时注意勾选添加配置文件选项)

    1)添加源代码,将需要添加的文件添加好以后,点击同步按钮(注意:该按钮有点像书)

    <wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">

  • 相关阅读:
    修改Tomcat的端口号方法
    Java与数据库对应的日期类型
    解决ora-00054 Oracle锁表问题
    qemu+gdb调试内核出现remote ‘g’ packet reply is too long
    构建调试Linux内核网络代码的环境MenuOS系统
    c语言实现简单的hello/hi聊天程序
    traceroute命令研究报告
    c++对象初始化中各构造器的顺序
    嵌入式面试题(1)
    Android驱动笔记(8)——bugreport介绍
  • 原文地址:https://www.cnblogs.com/big-devil/p/8589927.html
Copyright © 2011-2022 走看看