Linux底层
zhangsan_3
这个作者很懒,什么都没留下…
展开
-
Linux设备驱动之模块
【1】linux内核模块 可在运行的时候添加到内核中的代码称为模块 【2】模块和应用程序的区别 应用程序 模块 1. 运行空间 用户空间 内核空间 2. 入口函数 main 加载函数 3.原创 2016-12-01 22:35:30 · 226 阅读 · 0 评论 -
container_of函数
首先,我定义了一个字符设备结构体 struct globalmem_dev { struct cdev my_cdev; //字符设备之基础结构体 unsigned char mem[GLOBALMEM_SIZE]; struct semaphore sem;/ }; 接下来我实例化了一个该设备的指针对象 struc转载 2016-12-14 18:12:34 · 440 阅读 · 0 评论 -
关于Linux 内核中五个主要子系统的介绍
1.进程调度(SCHED): 控制进程对CPU的访问。当需要选择下一个进程运行时,由调度程序选择最值得运行的进程。可运行进程实际上是仅等待CPU资源的进程,如果某个进程在等待其它资源,则该进程是不可运行进程。Linux使用了比较简单的基于优先级的进程调度算法选择新的进程。 2.内存管理(MM): 允许多个进程安全的共享主内存区域。Linux的内存管理支持虚拟内存,即在计算机中运行的程序,转载 2016-12-05 18:24:05 · 3095 阅读 · 0 评论 -
Linux操作系统的组件
Linux内核、Shell、文件系统、应用程序原创 2016-11-27 20:22:59 · 1282 阅读 · 0 评论 -
Linux内核源码目录结构
在对Linux内核学习的同时,我们首先应该对Linux内核源码的目录有一定的了解,下面是内核源码目录的大概结构说明,根据内核版本的不同略有差异,不过不影响学习。以2.6.28.6内核源码为例: arch目录包括了所有和体系结构相关的核心代码。它下面的每一个子目录都代表一种Linux支持的体系结构,例如i386就是Intel CPU及与之相兼容体系结构的子目录,还有arm、powerpc、原创 2016-11-27 20:41:13 · 452 阅读 · 0 评论 -
busybox 根文件系统制作
busybox是构造文件系统最常用的软件工具包,它被非常形象地称为嵌入式Linux系统中的“瑞士军刀”,因为它将许多常用的Linux命令和工具结合到了一个单独的可执行程序(busybox)中。 虽然与相应的GNU工具比较起来,busybox所提供的功能和参数略少,但在比较小的系统(例如启动盘)或者嵌入式系统中已经足够了。 busybox在设计上就充分考虑转载 2016-11-28 11:14:47 · 1005 阅读 · 0 评论