E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Linux2.6
C程序内存分配
内存管理基本概念.1.1C程序内存分配1.C程序结构下面列出C语言可执行程序的基本情况(
Linux2.6
环境/GCC4.0)。
sjmping
·
2012-06-09 17:00
c
null
delete
存储
编译器
Numbers
Linux2.6
块设备驱动程序
VFS和块设备的关系见
Linux2.6
设备管理系统调用的服务例程调用一个合适的VFS函数,将文件描述符和文件内的偏移量传递给它。
mishifangxiangdefeng
·
2012-06-09 16:00
linux
算法
工作
存储
扩展
磁盘
android基础知识16:多分辨率屏显设计及其兼容性测试
0引言2007年11月,Google公司发布基于
Linux2.6
内核的移动终端操作系统-Android,由于其开源性,得到很多手机厂商的追捧和应用开发者的青睐。
isiqi
·
2012-06-05 23:00
android
Android structure
Android核心系统服务依赖于
Linux2.6
内核,包括:安全性、内存管理、进程管理、网络协议、驱动模型。Linux内核也作为硬件和软件栈之间的抽象层。
tweller
·
2012-06-05 18:00
cdev结构来描述
在
Linux2.6
内核中一个字符设备用cdev结构来描述,其定义如下:structcdev{ structkobjectkobj; structmodule*owner; //
a514223963
·
2012-06-05 16:00
Linux内核中的platform机制
从
Linux2.6
起引入了一套新的驱动管理和注册机制:platform_device和platform_driver。
zxf20063033
·
2012-06-05 14:00
Linux2.6
设备管理
一、设备管理与文件管理的关系1.文件操作是对设备操作的组织与抽象设备操作是对文件操作的最终实现二、设备驱动程序模型1./sys----->总线 ----->PCI ----->驱动程序 ----->串口 ----->设备2.设备驱动程序模型中的几个主要的层次:(1)总线,见Linux2.6I/O体系结构(2)PCI总线,见三(3)驱动程序,见四(4)设备,见五三、PCI总线1.地址分配策略I/O地
mishifangxiangdefeng
·
2012-06-05 14:00
数据结构
linux
Module
query
扩展
磁盘
Linux2.6
I/O体系结构
一、I/O体系结构二、I/O总线1.总线计算机内部大部分硬件设备通过总线连接一台计算机可以有几条总线,可以是不同类型总线与总线之间用桥连接2.I/O总线CPU与I/O设备之间的数据通路通常称为I/O总线其中,地址总线16位,数据总线8位、16位或32位三、I/O端口1.概念每个连接到I/O总线上的调和都有自己的I/O地址集,称为I/O端口CPU使用地址总线选择所请求的I/O端口,使用数据总线在CP
mishifangxiangdefeng
·
2012-06-04 11:00
linux
汇编
电信
linux设备总线驱动模型 之 platform总线驱动
1、Platform总线 Platform总线是
linux2.6
内核加入的一种虚拟总线。
yinjiabin
·
2012-06-04 10:00
linux
工作
struct
IO
Module
平台
Linux2.6
虚拟文件系统VFS
一、什么是虚拟文件系统1.VFS是用户的应用程序与文件系统实现之间的抽象层2.VFS支持以下三种类型的文件系统(1)磁盘文件系统(2)网络文件系统(3)特殊文件系统二、通用文件系统模型1.VFS的主要思想是引入一个文件系统模型,这个模式能够表示所有支持的文件系统2.通用文件模型的构成(1)超级块super_block:存放已安装文件系统的有关信息,所有的超级块对象以双向链表的形式链接在一起(2)索
mishifangxiangdefeng
·
2012-06-01 22:00
dm-linux
DeviceMapper是
Linux2.6
内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构,如图1。
cybertan
·
2012-06-01 14:00
linux
工作
IO
struct
table
工具
Linux 2.6下Driver开发的34个变化[转贴]
Linux2.6
内核驱动移植嵌入式系统|linux|ARM|单片机'h7@!
bbs598598
·
2012-05-31 15:00
Linux2.6
系统调用
一、引入系统调用1.概念:操作系统为在用户态运行的进程与硬件设备进行交到提供了一组接口。Linux通过向内核发出系统调用来实现这些接口2.作用:对硬件设备操作的编程更容易提高了系统的安全性使程序更有可移植性3.进入系统调用的两种方法(1)int&0x80汇编指令(2)sysenter汇编指令二、系统调用与API的区别1.API只是一个函数定义,说明了如何获得一个给定的服务系统调用中通过软中断向内核
mishifangxiangdefeng
·
2012-05-29 20:00
thread
编程
linux
汇编
api
System
Linux驱动下的platform总线架构
Linux驱动下的platform总线架构 从
Linux2.6
内核起,引入一套新的驱动管理和注册机制:platform_device和platform_driver。
ekenlinbing
·
2012-05-29 16:00
linux
struct
Module
null
resources
structure
Linux2.6
进程调度
一、
Linux2.6
调度算法的特点1.在固定时间内选中要运行的进程,这个时间不会因为可运行进程增多而变大2.每个CPU有自己的可运行队列3.较好地解决区分交互式进程与批处理进程的问题二、进程按调度类型分类
mishifangxiangdefeng
·
2012-05-26 16:00
linux
算法
struct
活动
linux2.6
内核epoll用法举例说明
epoll用到的所有函数都是在头文件sys/epoll.h中声明的,下面简要说明所用到的数据结构和函数: 所用到的数据结构 typedef union epoll_data { void *ptr; int fd; __uint32_t u32; __uint64_t u64; } epoll_data_t; struct epoll_event { __uint32_t ev
grzrt
·
2012-05-24 19:00
linux
Linux2.6
可延迟中断
一、基本概念1.Linux把紧随中断要执行的操作分为三类 特点处理方法举例第一类紧急的在禁止可屏蔽中断的情况下立即执行修改设备和处理器同时访问的数据结构第二类非紧急的在开中断的情况下立即执行修改那些只有处理器才会访问的数据结构(例如,按下一个键后读扫描码)第三类非紧急可延迟的由独立的函数来执行把缓冲区的内核拷贝到某个进程的地址空间2.把可延迟中断从中断处理程序中抽出来,由独立的函数来执行,有助于使
mishifangxiangdefeng
·
2012-05-24 11:00
数据结构
linux
工作
action
Linux2.6
中断与异常
一、基本概念1. 产生的位置发生的时刻时序中断CPU外部随机异步异常CPU正在执行的程序一条指令终止执行后同步2.由中断或异常执行的代码不是一个进程,而是一个内核控制路径,代表中断发生时正在运行的进程的执行中断处理程序与正在运行的程序无关引起异常处理程序的进程正是异常处理程序运行时的当前进程二、特点1.(1)尽可能快(2)能以嵌套的方式执行,但是同种类型的中断不可以嵌套(3)尽可能地限制临界区,因
mishifangxiangdefeng
·
2012-05-23 20:00
数据结构
linux
exception
任务
select, poll, epoll
Linux2.6
内核中提高网络I/O性能的新方法-epollI/O多路复用技术在比较多的TCP网络服务器中有使用,即比较多的用到select函数。
brucexu1978
·
2012-05-23 15:00
linux io 算法
在
Linux2.6
中,有四种关于IO的调度算法,下面综合小结一下:1)NOOPNOOP算法的全写为NoOperation。
浩瀚之深蓝
·
2012-05-23 15:30
linux
算法
用户
程序
的
Linux2.6
进程的创建与删除
一、进程的创建1.系统调用clone()与fork()的区别: 资源的继承方式参数区分父进程与子进程的方法fork()全部复制,即父进程的所有资源全部通过数据结构的复制传给子进程无参数父进程与子进程,从fork()返回时的返回值不同,以此区分二者。子进程返回0.父进程返回子进程的pidclone()有选择地将资源复制给子进程,没有复制的资源通过指针复制的方式与子进程共享(共享与复制的关系见2)有参
mishifangxiangdefeng
·
2012-05-22 18:00
thread
数据结构
linux
struct
Linux2.6
进程切换
1.进程切换是指:保存prev进程的上下文,用next的上下文替代。其中上下文包括:页全局目录、内核态堆栈、硬件上下文。2.80x86为进程切换提供的硬件支持:第一种:通过任务门第二种:通过JMP和CALL指令:把硬件上下文存在TSS中,执行这条指令时,通过硬件自动切换TSS,完成硬件上下文的过程TSS是任务状态段,只能存放在GDT中,不能存放在LDT中3.Linux使用的硬件上下文切换方法:通过
mishifangxiangdefeng
·
2012-05-22 14:00
linux
汇编
存储
任务
X86
linux设备模型详解
Linux2.6
内核的一个重要特色是提供了统一的内核设备模型。
Tommy_wxie
·
2012-05-22 11:00
Linux2.6
进程
1.进程、用户线程、内核线程的区别和联系 进程用户线程(轻量级进程)内核线程代码段有有有数据段有有有描述符task_struct有有有用户空间堆栈有一个线程组共享一个用户空间完全没有内核空间堆栈有有有PID独一无二的一组线程共享一个有这里的有是指拥有独立的2.内核线程:由内核创建、调度,用于执行一些重要的、周期性的过程。只运行在内核态、只使用3G以后的系统空间。比如用于回收物理页面的kswapd线
mishifangxiangdefeng
·
2012-05-21 22:00
数据结构
算法
linux
struct
nginx为什么那么快
epoll为什么这么快epoll是多路复用IO(I/OMultiplexing)中的一种方式,但是仅用于
linux2.6
以上内核,在开始讨论这个问题之前,先来解释一下为什么需要多路复用IO.以一个生活中的例子来解释
linux小混混
·
2012-05-21 21:46
nginx为什么那么快
网站服务器管理
nginx为什么那么快
epoll为什么这么快epoll是多路复用IO(I/OMultiplexing)中的一种方式,但是仅用于
linux2.6
以上内核,在开始讨论这个问题之前,先来解释一下为什么需要多路复用IO.以一个生活中的例子来解释
linux小混混
·
2012-05-21 21:46
nginx为什么那么快
linux设备驱动模型之 bus(总线)原理与实例分析
为适应这种形势的需要,
Linux2.6
内核提供了全新的内核设备模型。
yinjiabin
·
2012-05-20 10:00
linux
struct
Module
File
null
buffer
linux设备模型之 kobject原理与实例分析
Linux2.6
内核引入了sysfs文
yinjiabin
·
2012-05-19 11:00
linux
struct
object
Module
null
attributes
Platform Device和Platform_driver注册过程
从
Linux2.6
起引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。
zzsfqiuyigui
·
2012-05-18 06:00
谈谈
linux2.6
内核的驱动框架
linux支持的设备越来越多,种类越来越多,设备本身的功能也是越来越复杂,而操作系统内核必须有一种很有效的方式来管理这些设备,最起码的要控制它们的开启关闭,更进一步要控制它们进行协同工作,实际上要内核仅仅做到这些并不难,关键问题是如何与用户进行交互,那么多设备怎么以统一的方式提供给用户,毕竟最终要控制设备的还是用户啊,在2.6内核中引出了一个叫做kobject的数据结构,它的作用和著名的list_
zzsfqiuyigui
·
2012-05-18 06:00
数据结构
linux
struct
list
tree
Class
详解
Linux2.6
内核中基于platform机制的驱动模型
【摘要】本文以Linux2.6.25内核为例,分析了基于platform总线的驱动模型。首先介绍了Platform总线的基本概念,接着介绍了platformdevice和platformdriver的定义和加载过程,分析了其与基类device和driver的派生关系及在此过程中面向对象的设计思想。最后以ARMS3C2440中I2C控制器为例介绍了基于platform总线的驱动开发流程。【关键字】p
zzsfqiuyigui
·
2012-05-18 06:00
c
linux
struct
function
Module
resources
Linux驱动的platform机制
最近在看SPI、I2C这样简单点的总线驱动程序,从
Linux2.6
起,内核引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。
zzsfqiuyigui
·
2012-05-18 06:00
Linux驱动程序中的platform总线详解
在设备驱动程序中经常会见到和platform相关的字段,分布在驱动程序的多个角落,这也是2.6内核中比较重要的一种机制,把它的原理弄懂了,对以后分析驱动程序很有帮助,下面简单介绍一下:在
linux2.6
zzsfqiuyigui
·
2012-05-18 06:00
linux高级字符设备驱动之 二 内核等待队列
Linux2.6
内核提供了如下关于等待队列的操作:1、定义等待队列 wait_queue_head_tmy_queue2、初始化等待队列 init_waitqueue_head(&my_queue
yinjiabin
·
2012-05-16 20:00
linux
UP
工作队列
Linux2.6
内核使用了不少工作队列来处理任务,他在使用上和tasklet最大的不同是工作队列的函数可以使用休眠,而tasklet的函数是不允许使用休眠的。
wealoong
·
2012-05-15 12:00
2.6内核的工作推后执行机制
参考:
Linux2.6
中断下半部分的三种实现机制---软中断/tasklet/工作队列 工作队列linux的中断处理分为上半部和下半部(短小的中断处理程序的部分和工作可推后执行的部分) 上半部是实际响应中断的函数
wealoong
·
2012-05-15 12:00
thread
数据结构
工作
struct
action
任务
linux设备驱动模型一概述
Linux2.6
内核最初为了应付电源管理的需要,提出了一个设备模型来管理所有的设备。
new_abc
·
2012-05-10 23:00
浅析linux内核内存管理之内存池
内存池(memorypool)是
linux2.6
的一个新特性。内核中有些地方的内存分配是不允许失败的。为了确保这种情况下的成功分配,内核开发者建立了一种称为内存池的抽象。
hsly_support
·
2012-05-09 22:00
linux
api
cache
object
Module
linux内核
Redis on Windows
性能测试结果:SET操作每秒钟110000次,GET操作每秒钟81000次,服务器配置如下:
Linux2.6
,XeonX33202.5Ghz.
176915785
·
2012-05-09 14:00
redis
嵌入式Linux下的实时性增强方案
嵌入式Linux下的实时性增强方案 摘 要:分析了嵌入式Linux在实时性方面的不足,针对
Linux2.6
内核的中断运行机制、内核不可抢占性、自旋锁及大内核锁等问题进行研究,提出相应的实时性改进方法
wind19
·
2012-05-08 15:00
linux
struct
Semaphore
嵌入式
任务
linux内核
Linux 内核 Makefile 体系简单分析
原文地址:Linux内核Makefile体系简单分析 作者:tekkamanninja 此文为两年前为好友刘庆敏的书《嵌入式Linux开发详解--基于AT91RM9200和
Linux2.6
》中帮忙写的章节的重新整理
chenliujiang1989
·
2012-05-06 11:00
linux
文档
Build
include
makefile
linux内核
Tiny Core Linux 4.5 发布,微型 Linux 操作系统
TinyCoreLinux是一个基于
Linux2.6
版本内核,采用BusyBox、TinyX、FLTK和其它小型软件构筑的带图形用户界面的微型Linux操作系统。
szu030606
·
2012-05-04 09:00
linux cfs scheduler
和以前在老的
linux2.6
内核中使用的O(1)调度器不同,CFS调度器实现并不是基于runqueues。事实上,CFS使用红黑树实现
我是*李世民*
·
2012-05-03 15:00
linux下I2C驱动分析1
linux下I2C驱动分析1分类:LINUX 这几篇文章来分析下
linux2.6
下I2C驱动的写法,对个人也是一个学习的过程。
l627859442
·
2012-05-02 10:00
Linux内核开发之简单字符设备驱动(上)
第一部分必要的设备结构体1)
linux2.6
内核中使用cdev结构体表示字符设备: structcdev { structkobjectkobj;//内嵌的kobject对象 structmodule
l627859442
·
2012-05-02 08:00
数据结构
linux
struct
File
user
linux内核
Linux2.6
用户空间堆栈区的分配与回收
1.sys_brk(新边界的线性地址)(1)地址检查,地址不低于代码段的终点(2)与页面大小对齐(3)新地址释放空间(见2) 新地址>老边界----->申请空间(见8)2.释放空间(1)线性地址->区间地址(2)预备一个新的区间结构(回收一个区间的一部分,可能导致一个区间变成两个区间)(3)把所有涉及到的区间移到一个临时队列(4)解除映射,释放页面(见3)(5)对vm_area_struct和mm
mishifangxiangdefeng
·
2012-04-30 21:00
linux
struct
Linux2.6
为数据结构分配内存-slab
1.高速缓存描述符、slab描述符、数据结构对象之间的关系slab描述符也可以在外面不管slab描述符在哪里,空闲链接数组紧跟在slab描述符后面第一张图跟2.6的不太一样,2.6中,所有箭头都是双向的,且没有不同各种类slab描述符的链接建立一个缓冲的专用队列:1.从cache_cache中分配一个kmem_cache_t结构的高速缓存描述符2.进行一系列计算,以确定最佳的slab构成3.设置各
mishifangxiangdefeng
·
2012-04-30 13:00
Linux2.6
物理内存管理
一、物理内存的分配1.Linux2.6支持非一致内存访问(NUMA),被分为一节点,每一个节点内是UMA80x86系统不使用NUMA,因为只有一个节点每个节点分为3个管理区:ZONE_DMA,ZONE_NORMAL,ZONE_HIGHMEM2.3个管理区的分布与特点见表格: ZONE_DMAZONE_NAORMALZONE_HIGHMEM物理地址范围低于16MB的物理页框DMA不经过MMU提供的地
mishifangxiangdefeng
·
2012-04-28 15:00
数据结构
linux
平台
X86
Linux 2.6版内核中通过模块获取sys_call_table地址的方法
本文主要介绍在
Linux2.6
版的内核中实现基地址修改的方法。所有代码我都在基于2.6.19版内核的FedoraCore6上进行了测试。
lucien_cc
·
2012-04-28 13:00
linux
汇编
struct
Module
table
System
Linux2.6
虚拟内存管理
除了分段管理中的LDT和GDT有较大改动,分页管理中增加了三级分页模型以外,大部分内容可以参考Linux0.12-内存寻址一、分段管理:1.Linux中,段基址总是0,逻辑地址与线性地址是一致的。或者说,在Linux中,没有实际上地使用分段机制2.一个进程可以使用一个GDT和一个LDTGDT包含:(1)LDT在GDT中的描述符(2)3个局部段描述符(3)3个与高级电源管理相关的段(4)5个PnP的
mishifangxiangdefeng
·
2012-04-27 21:00
上一页
25
26
27
28
29
30
31
32
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他