Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

怎样阅读Linux源代码

怎样阅读Linux源代码

像Linux内核这样庞大而复杂的程序看起来确实让人望而生畏,它象一个很大的球,没有起点和终点。在读源代码的过程中,你会遇到这样的情况,当读到内核的某一部分时又会涉及到其它更多的文件,当返回到原来的地方想继续往下读时,又忘了原来读的内容。在internet上,很多人为此付出了很大的努力,制作出了源代码导航器,这为源代码阅读提供了良好的条件,下面给出阅读源代码的一些线索。1. 系统的启动和初始化在基于Intel的系统上,当 loadlin.exe 或 LILO...
解决Android平台移植ffmpeg的一揽子问题

解决Android平台移植ffmpeg的一揽子问题

IT行业是一个踩在巨人肩膀上前进的行业,否则做的事情不一定有意义,所以我也是基于havlenapetr移植的ffmpeg基础上做了些改进,他做的主要贡献有:1. 移植了ffmpeg并将与媒体相关的结构体在java层重新进行了封装,方便应用程序在java层直接操作ffmpeg API,如各种媒体格式转码及播放,如图1所示2. 模仿Android的MediaPlayer类实现了ffmpeg的播放接口,如setDataSource(),setDisplay(),...
ARM Linux基本数据类型综合应用实例

ARM Linux基本数据类型综合应用实例

本文章将带读者走进Linux内核,亲身感受一下这个优秀的操作系统Linux的具体搭建过程。其实读者可以看到,若将这一高楼大厦分解细分为砖瓦,那么每一部分其实也并不是那么难的。在Linux内核中,直接使用基本数据类型来构建的关键数据结构微乎其微,一般都是将基本数据类型组合起来,构成构造数据类型(如结构体等),来组成其关键的数据结构。本文就以Linux中内存管理中的物理页为例进行讲解。1、内存页管理机制内存把物理页作为内存管理的基本单位。尽管处理器的最小可寻址...
Linux内核中ioremap映射的透彻理解

Linux内核中ioremap映射的透彻理解

几乎每一种外设都是通过读写设备上的寄存器来进行的,通常包括控制寄存器、状态寄存器和数据寄存器三大类,外设的寄存器通常被连续地编址。根据CPU体系结构的不同,CPU对IO端口的编址方式有两种: (1)I/O映射方式(I/O-mapped) 典型地,如X86处理器为外设专门实现了一个单独的地址空间,称为"I/O地址空间"或者"I/O端口空间",CPU通过专门的I/O指令(如X86的IN和OUT指令)来访问这一空间中的地址单元。 (2)内存映射方式(Me...
ARM Linux基本运算符综合实例

ARM Linux基本运算符综合实例

本文介绍页面管理的基础知识,并成语法角度对嵌入式Linux的内存管理进行详细的讲解。1、页映射机制要了解嵌入式Linux的页面映射机制,首先要了解嵌入式Linux的内存管理以及虚拟内存的基础知识。下面对其进行简单介绍。内存管理系统是操作系统中最为重要的部分,系统的物理内存总是少于系统所需要的内存数量,虚拟内存就是为了克服这个矛盾而采用的策略。系统的虚拟内存通过各个进程之间共享内存而使系统看起来有多于实际内存的内存容量,虚拟内存提供以下功能:(1)广阔的地址...
ARM Linux选择语句应用实例

ARM Linux选择语句应用实例

1、区的基本概念由于硬件的限制,Linux内核并不能对所有页面都一视同仁。有些页面位于内存中特定的物理地址上,所以不能将其用于一些特定的任务。由于存在这种限制,所以内核把页划分为不同的区(zones)。内核使用区对其具有一些相似的特性页进行分组,Linux中把页面分成了3种。ZONE_DMA:这个区包含的页能用来执行DMA操作ZONE_NORMAL:这个区包含的都是正常映射的页ZONE_HIGHEM:这个区包含“高端内存”,其中的页并不能永久地映射到内核地...
<< 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 >>