1.描述 网卡的驱动其实很简单,它还是与硬件相关,主要是负责收发网络的数据包,它将上层协议传递下来的数据包以特定的媒介访问控制方式进行发送, 并将接收到的数据包传递给上层协议. 网卡设备与字符设备和块设备不同, 网络设备并不对应于/dev目录下的文件,不过会存放在/sys/class/net目录下 如下图所示,我们通过ls /sys/class/net/ 命令,可以看到有两个网卡: 2.Linux系统对网络设备驱动定义了4个层次, 这4个层次有到下分为: 1)网络协议接口层: 实现统一的数据包收…
1.nor硬件介绍: 从原理图中我们能看到NOR FLASH有地址线,有数据线,它和我们的SDRAM接口相似,能直接读取数据,但是不能像SDRAM直接写入数据,需要有命令才行 1.1其中我们2440的地址线共有27根(LADDR0~26),为什么是27根? 因为2440共有7个bank内存块,每个bank=128MB=(2^27)B,所以共有27根数据线 1.2为什么Nor Flash的地址线A0是接在2440的LADDR1上? 因为Nor Flash的数据共有16位,也就是每个地址保存了2B数…
Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ifconfig 查询.设置网卡和ip等参数 ifup,ifdown    脚本命令,更简单的方式启动关闭网络 ip 符合指令,直接修改上述功能 在我们刚装好linux的时候,需要用xshell进行远程连接,那就得获取ip地址,有时候网卡默认是没启动的,Linux也就拿不到ip地址,因此我们得手动启…
上一节 我们学习了:   网卡驱动介绍以及制作虚拟网卡驱动: http://www.cnblogs.com/lifexy/p/7763352.html 接下来本节,学习网卡芯片DM9000C,如何编写移植DM9000C网卡驱动程序. 1.首先来看DM9000C原理图 如下图所示: (#:表示低电平有效) SD0~15: 16位数据线,有CMD引脚决定访问类型 CMD:      命令线,当CMD为高,表示SD 传输的是数据,CMD为低表示传输的是地址 INT:         中断引脚,接在24…
最近为了解决IM消息记录的高速度写入.多文档类型支持的需求,决定使用MongoDB来解决. 考虑到MongoDB对VS版本要求较高,与我现有的VS版本不兼容,在leveldb.ssdb.redis.hbase等NoSQL中转了一圈,最后还是选择了MongoDB,应了那句话:没有最好的,只有最合适的. MongoDB由于使用了C++的新特性,官方建议使用VS2013来编译,最低要求VS2010. MongoDB C++驱动编译过程较为复杂,官方也没有提供编译好的驱动包,网上的资料编译版本都比较老了…
[PXE] Linux(centos6)中PXE 服务器搭建,PXE安装.启动及PXE理论详解 本篇blog主要讲述了[PXE] linux(centos)PXE无盘服务器搭建,安装,启动及pxe协议详解 , Kickstart (PXE+DHCP+TFTP+HTTP). PXE环境概述 作为中小公司的运维,经常会遇到一些机械式的重复工作.如何进行批量一次大批量部署服务器安装?方法: Kickstart (PXE+DHCP+TFTP+HTTP)  或  Cobbler 批量装机软件介绍 Redh…
linux usb 驱动详解 USB 设备驱动代码通过urb和所有的 USB 设备通讯.urb用 struct urb 结构描述(include/linux/usb.h ). urb 以一种异步的方式同一个特定USB设备的特定端点发送或接受数据.一个 USB 设备驱动可根据驱动的需要,分配多个 urb 给一个端点或重用单个 urb 给多个不同的端点.设备中的每个端点都处理一个 urb 队列, 所以多个 urb 可在队列清空之前被发送到相同的端点.  一个 urb 的典型生命循环如下: (1)被创…
CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录: 0.Windows 10本机下载Xshell,以方便往Linux主机上上传大文件 1.CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-1虚拟机安装及环境初始化 2.CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-2设置SSH免密登录 3.CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-3禁止交换和禁用大页面 4.CentOS7+CDH5.14.0安装全流程记录…
在上一节LCD层次分析中,得出写个LCD驱动入口函数,需要以下4步: 1) 分配一个fb_info结构体: framebuffer_alloc(); 2) 设置fb_info 3) 设置硬件相关的操作 4) 使能LCD,并注册fb_info: register_framebuffer() 本节需要用到的函数: void *dma_alloc_writecombine(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp);…
前言 最初,Git是用于Linux下的内核代码管理.因为其非常好用,目前,已经被成功移植到Mac和Windows操作系统下. 鉴于大部分使用者使用的是Windows操作系统,故,这里详细讲解Windows操作系统下Git的安装步骤. 当然我也会陆续写出Linux和Mac操作系统下Git的安装步骤. 安装前的说明   Git在windows平台上安装说明. Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件.目前Git已经可以在windo…