当前位置: 代码迷 >> 综合
 解决方案列表
  • [综合] ifconfig 的简单实现

    一般,用户在shell中使用ifconfig命令对网络接口进行参数配置,及接口的打开,关闭等操作。ifconfig实现网络接口配置的原理在于代表网络接口的结构体structnet_device的成员ip_ptr。前文已经讲过,ip_ptr实际指向的是一个结构体structin_device,in_d...

    4
    热度
  • [综合] ifconfig 源码分析

    intmain(intargc,char**argv){……argc--;argv++;while(argc&&*argv[0]=='-') { ……}打开内核支持的所有协议的套接字,主要是一个循环调用socket的过程if((skfd=sockets_open(0))<0) ...

    68
    热度
  • [综合] Linux网络协议栈之网络设备管理

    成都的天气好像越来越好了,前几天还穿着穿着外套直打哆嗦,到今天已经“拨开阴云见太阳”,暖洋洋的,心情也暖洋洋的。暖和的正好想睡觉。打个呵欠,把网络设备管理这部份总结下吧。 Linux素以优秀的网络管理能力而著称,linux为何具有这么高的效率?我们从网络设备的管理说起。 Linux为何要对网络设备单...

    11
    热度
  • [综合] 网络设备支持函数

    7.网络设备支持 驱动程序的支持 函数名 功能 函数形成 参数 描述 init_etherdev 注册以太网设备 tructnet_device*init_etherdev(structnet_device*dev,intsizeof_priv) dev为要填充的以太网设备结构,或者要分...

    74
    热度
  • [综合] linux2.6内核 list_head结构分析

    一、链表数据结构简介链表是一种常用的组织有序数据的数据结构,它通过指针将一系列数据节点连接成一条数据链,是线性表的一种重要实现方式。相对于数组,链表具有更好的动态性,建立链表时无需预先知道数据总量,可以随机分配空间,可以高效地在链表中的任意位置实时插入或删除数据。链表的开销主要是访问的顺序性和组织链...

    30
    热度
  • [综合] memcpy() -- 拷贝内存内容

    memcpy()--拷贝内存内容 2007年07月06日星期五09:07 相关函数:bcopy(),memccpy(),memmove(),strcpy(),strncpy()表头文件:#include<string.h>定义函数:void*memcpy(void*des...

    34
    热度
  • [综合] Android 架构解析及驱动 键盘篇

    --作者:老树--发布时间:2010-6-215:01:19--Android架构解析及驱动键盘篇 一、用户空间 ADROID2.1架构解析7键盘以上链接,详细介绍了Android用户空间按键的操作,最终通过不断轮询所有设备,直到读取有POLLIN事件产生的设备状态:if(mFDs[i].reven...

    68
    热度
  • [综合] linux spi子系统 驱动分析续

    上文从下到上的介绍了spi子系统,现在反过来从上到下的来介绍spi子系统的使用:intspi_register_driver(structspi_driver*sdrv){ sdrv->driver.bus=&spi_bus_type;if(sdrv->probe)sdrv-&g...

    99
    热度
  • [综合] Linux 2.6下SPI设备模型--------基于AT91RM9200分析

    Linux2.6下SPI设备模型--------基于AT91RM9200分析Atmel公司的ARMAT系列,其SPI驱动在kernel2.6.23里已经包含。如果你打了at91-patch补丁的话,则在内核配置时要小心。在DeviceDrivers---->Characterdevices--...

    17
    热度
  • [综合] 开关功率mos管介绍

    在使用MOS管设计开关电源或者马达驱动电路的时候,大部分人都会考虑MOS的导通电阻,最大电压等,最大电流等,也有很多人仅仅考虑这些因素。这样的电路也许是可以工作的,但并不是优秀的,作为正式的产品设计也是不允许的。下面是我对MOSFET及MOSFET驱动电路基础的一点总结,其中参考了一些资料,非全部原...

    38
    热度
  • [综合] Porting Guide of Android Power to Marvell 2.6.24

    正在作基于Marvell9xx的Android平台,因为平台内核为2.6.24,而Android1.0Release的是2.6.25.Androidpower本对于系统来说是可选的,但为了更好的体现Android的设计思想和理念以及UIExperience,AndroidPower一定要enable...

    85
    热度
  • [综合] Android电源管理概念

    Android电源管理一、相关概念1.出于节电的需要,一般应用在用户一段时间无操作的情况下屏幕变暗,然后进后休眠状态2.用户只能在”设置->声音和显示”中设置所有应用默认的屏幕亮度和进行待机的时间3.电源管理的实现分内核应用两部分,通过下面介绍的接口,我们可以设置应用程序的电源管理,以控制与其...

    95
    热度
  • [综合] 老手经验谈:Linux驱动程序开发学习步骤

    1.学会写简单的makefile 2.编一应用程序,可以用makefile跑起来 3.学会写驱动的makefile 4.写一简单char驱动,makefile编译通过,可以insmod,lsmod,rmmod.在驱动的init函数里打印helloworld,insmod后应该能够通过dmesg...

    24
    热度
  • [综合] platform_device的注册过程分析

    《Linux设备驱动程序》的linux设备模型章中说到设备模型中,所有设备都通过总线相连。添加设备devA,必须指定其device结构体的bus_type域,初始化其他域,然后调用device_register(&devA),将设备devA注册到指定总线。添加该设备驱动driverA,也必须...

    47
    热度
  • [综合] linux2.6中的工作队列接口 workqueue_struct

    工作队列接口 工作队列接口是在2.5的开发过程中引入的,用于取代任务队列接口(用于调度内核任务)。每个工作队列有一个专门的线程,所有来自运行队列的任务在进程的上下文中运行(这样它们可以休眠)。驱动程序可以创建并使用它们自己的工作队列,或者使用内核的一个工作队列。工作队列用以下方式创建: struct...

    2
    热度
  • [综合] 等待队列学习笔记

    一、定义: /include/linux/wait.h struct__wait_queue_head{spinlock_tlock;structlist_headtask_list;};typedefstruct__wait_queue_headwait_queue_head_t; ...

    57
    热度
  • [综合] Linux工作队列的使用

    Linux工作队列是一种把工作推后执行的机制。推后的工作交由一个内核线程去执行,因此工作队列的优势就在于它允许重新调度甚至睡眠。使用工作队列的流程:主要有两种,一种使用内核缺省的队列,一种是我们自己创建一个工作队列。对于默认缺省的工作队列,如果工作队列负载太重,执行效率会很低。下面是自己创建的工作队...

    59
    热度
  • [综合] Linux 工作队列

    工作队列(workqueue)是另外一种将工作推后执行的形式,它和我们前面讨论的所有其他形式都有不同。工作队列可以把工作推后,交由一个内核线程去执行,也就是说,这个下半部分可以在进程上下文中执行。这样,通过工作队列执行的代码能占尽进程上下文的所有优势。最重要的就是工作队列允许被重新调度甚至是睡眠。 ...

    97
    热度
  • [综合] Linux 进程调度原理

    进程调度依据调度程序运行时,要在所有可运行状态的进程中选择最值得运行的进程投入运行。选择进程的依据是什么呢?在每个进程的task_struct结构中有以下四项:policy、priority、counter、rt_priority。这四项是选择进程的依据。其中,policy是进程的调度策略,用来区分...

    17
    热度
  • [综合] globalfifo精彩问答

    自己在看globalfifo驱动的时候看得不是很明白,有些地方没搞懂,今天有幸看到论坛上一个帖子,把我没搞懂的都搞懂了,摘录下来供参考! =============================我是分割线============================== LZ: /...

    18
    热度