Qemu为virtio设备分配了专门的pci设备ID,device IDs (vendor ID 0x1AF4) from 0x1000 through 0x10FF,而pci子系统中的厂商ID和设备ID就成为了virtio类型和厂商域的组成,所以PCI驱动是不需要知道virtio设备类型的真正含义,对于Kernel来说只是注册了一个struct virtio_device,并挂载到了virtio...
分类:
Web程序 时间:
2014-09-04 11:47:59
阅读次数:
195
在前面的文章中在介绍virtio机制中,可以看到在通常的应用中一般使用QEMU用户态程序来模拟I/O访问,而Guest中的数据要通过Guest到Host Userspace的第一次拷贝,再经过Host
userspace的第二次拷贝,这种多次的数据拷贝和CPU特权级的切换对性能有相当大的影响。为加速virtio设备的I/O性能,VHOST通过driver的形式在Host Kernel中直接实现...
分类:
其他好文 时间:
2014-09-04 11:47:39
阅读次数:
280
通常在驱动中看见的网卡代码很多,但是都离不开发送与接收,掌握好骨干也就好阅读网卡驱动了。
数据发送 :
发送函数:xxx_start_xmit()
上层封装好了sk_buff丢进kernel后,buf存储在skb->data中,通 过 xxx_start_xmit(),发送出去。
下面的实例是通过写入某个设备节点发送出去,当然这个设备肯定是串口或者sdio等传输设备,
也可以直接...
分类:
系统相关 时间:
2014-09-03 22:50:07
阅读次数:
554
经常听到身边用安卓的朋友抱怨手机卡顿,内存动不动就快没了,而Google声称在512M的内存下也能流畅运行Android 4.4,到底它做了什么?
总结一下它主要做了四件事:
1.优化内核,使用ActivityManager来减少直接内存回收
2.优化LMK(low memory killer)的临界值
3.使能KSM(Kernel Samepage Merging)
4.使能ZRAM代...
分类:
移动开发 时间:
2014-09-03 18:10:57
阅读次数:
196
在处理工作问题的时候需要查看防火墙的日志,由于默认日志都是在系统日志里/var/log/messages里面。需要对rsyslog做设置。首先编辑配置文件/etc/rsyslog.conf如下:# Log all kernel messages to the console.# Logging mu...
分类:
其他好文 时间:
2014-09-03 14:38:16
阅读次数:
179
以定义参数 cus_param 为例,int型变量。
1. Preloader部分
Platform.h(mediatek\platform\[$platform]\preloader\src\drivers\inc\platform.h)
在如下结构体中加cus_param变量,如果是char型,请注意4byte对其:
typedef struct {
u32 magic...
分类:
移动开发 时间:
2014-09-03 13:06:36
阅读次数:
324
Ssize_t 与size_t跟踪linux源码得到以下宏:#ifndef _SIZE_T#define _SIZE_Ttypedef __kernel_size_t size_t;#endif#ifndef _SSIZE_T#define _SSIZE_Ttypedef __kernel_ssi....
分类:
其他好文 时间:
2014-09-03 12:36:16
阅读次数:
251
在前文Android—— 4.2 Vold挂载管理_NetlinkManager (四)中有解析到Vold 是从kernel中获取uevent事件,来获取device信息,其中是通过一个Netlink的套接字,目前整个Vold机制也分析完了,
上篇 Android—— 4.2 Vold挂载管理_MountService (六) 分析了机制中最上层的,这里分析一下最下层的kernel uevent事件的发送,以USB设备为例!...
分类:
移动开发 时间:
2014-09-02 19:59:35
阅读次数:
316
安装keepalived#./configure--sysconf=/etc--with-kernel-dir=/usr/src/kernels/2.6.32-358.el6.x86_64/&&make&&makeinstall
#ln-s/usr/local/sbin/keepalived/sbin/
#chkconfigkeepalivedon修改网卡配置#vim/etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE..
分类:
其他好文 时间:
2014-09-02 18:08:35
阅读次数:
210
解決方案:1.sudo apt-get install virtualbox-ose-source2.cd /usr/src3.sudo tar xjvf virtualbox*.bz24.cd modules/virtualbox-ose5.sudo ./build_in_tmp install6...
分类:
其他好文 时间:
2014-09-02 11:59:44
阅读次数:
201