摘要:
shell脚本中echo显示内容带颜色 shell脚本中echo显示内容带颜色显示,echo显示带颜色,需要使用参数-e 格式如下: echo -e "\033[字背景颜色;文字颜色m字符串\033[0m" 例如: echo -e "\033[41;36m something here \033[0
阅读全文
posted @ 2017-08-28 17:49
zxiaocheng
阅读(236)
推荐(0)
摘要:
最近遇到两起Linux的内存问题,其一是触发了oom-killer导致系统挂 1. 首先确认该系统的版本是32位 ? #uname -a Linux alarm 2.6.9-67.ELsmp #1 SMP Wed Nov 7 13:58:04 EST 2007 i686 i686 i386 ? #u
阅读全文
posted @ 2017-08-18 16:33
zxiaocheng
阅读(823)
推荐(0)
摘要:
调整虚拟内存 虚拟内存一般由进程、文件系统缓存以及内核消耗。虚拟内存的使用由很多因素决定,受以下参数影响: swappiness 参数值可为 0-100,控制系统 swap 的程序。高数值可优先系统性能,在进程不活跃时主动将其转换出物理内存。低数值可优先互动性并尽量避免将进程转换处物理内存,并降低反
阅读全文
posted @ 2017-08-18 15:35
zxiaocheng
阅读(257)
推荐(0)
摘要:
Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches 频繁的文件访问会导致系统的Cache使用量大增 $ free -m total used free shared buffers cached Mem: 3955 3926 28 0 55 3459 -/+ bu
阅读全文
posted @ 2017-08-18 14:32
zxiaocheng
阅读(471)
推荐(0)
摘要:
在做项目的时候,发现flash芯片有异常现象,经过打印分析,发现是UBIFS方面设置有一些问题,经过查阅一部分资料,最终得到问题的答案。 在解决问题的过程中,发现打印信息比较重要,但网上并没有直接的相关资料,最后将自己总结的东西总结如下: 先看打印信息,打印信息如下: UBI: attaching
阅读全文
posted @ 2017-08-07 11:58
zxiaocheng
阅读(1462)
推荐(1)
摘要:
本文重点针对HDMI在android上的应用,而比较相关的就是overlay机制。overlay在这里只是简单的介绍,后续会有文章再专门详述。 我没记错的话,高通从7X30开始,平台就可以支持HDMI(1.3)输出了。只不过在7x30上通过RGB接口外接一颗HDMI的transmitter来实现;而
阅读全文
posted @ 2017-05-26 16:31
zxiaocheng
阅读(1315)
推荐(0)
摘要:
1. svn 获取工程代码命令:svn co svn+ssh://10.20.30.18/svn-repos/msm8916/branches/LA1.1-CS-r113502.2 2. 如何确定那些dtsi文件实际会用到。 修改代码 kernel/arch/arm/kernel/devtree.c
阅读全文
posted @ 2017-05-26 16:24
zxiaocheng
阅读(2781)
推荐(0)
摘要:
proc 文件系统 在Linux中有额外的机制可以为内核和内核模块将信息发送给进程-- /proc 文件系统。最初设计的目的是允许更方便的对进程信息进行访问(因此得名),现在它被每一个有有趣的东西报告的内核使用,例如/proc/modules 有模块的列表/proc/meminfo 有内存使用的统计
阅读全文
posted @ 2017-05-24 09:23
zxiaocheng
阅读(1087)
推荐(0)
摘要:
Android休眠与唤醒驱动流程分析 标准Linux休眠过程: powermanagement notifiers are executed with PM_SUSPEND_PREPARE tasksare frozen targetsystem sleep state is announced t
阅读全文
posted @ 2017-05-24 09:22
zxiaocheng
阅读(1633)
推荐(0)
摘要:
Android 休眠(suspend),在一个打过android补丁的内核中,state_store()函数会走另外一条路,会进入到request_suspend_state()中,这个文件在earlysuspend.c中。这些功能都是android系统加的,后面会对earlysuspend和lat
阅读全文
posted @ 2017-05-24 09:22
zxiaocheng
阅读(1716)
推荐(0)
摘要:
Linux内核的信号量在概念和原理上和用户态的System V的IPC机制信号量是相同的,不过他绝不可能在内核之外使用,因此他和System V的IPC机制信号量毫不相干。 信号量在创建时需要设置一个初始值,表示同时能有几个任务能访问该信号量保护的共享资源,初始值为1就变成互斥锁(Mutex),即同
阅读全文
posted @ 2017-05-16 17:51
zxiaocheng
阅读(3152)
推荐(0)
摘要:
不能连接不上adb,如下方法解决,步骤描述不愿意看的话,直接使用本文最下面的批处理命令,方法copy粘贴到新建的bat文件里运行,或者直接粘贴到dos窗口运行。 1. 使用androidsdk目录中的 androidSDK目录\tools 下的android脚本,命令行中执行 android upd
阅读全文
posted @ 2017-05-03 17:15
zxiaocheng
阅读(2085)
推荐(0)
摘要:
/** * eth_random_addr - Generate software assigned random Ethernet address * @addr: Pointer to a six-byte array containing the Ethernet address * * Ge
阅读全文
posted @ 2017-04-25 10:20
zxiaocheng
阅读(2105)
推荐(0)
摘要:
字节序 http://oss.org.cn/kernel-book/ldd3/ch11s04.html 小心不要假设字节序. PC 存储多字节值是低字节为先(小端为先, 因此是小端), 一些高级的平台以另一种方式(大端)工作. 任何可能的时候, 你的代码应当这样来编写, 它不在乎它操作的数据的字节序
阅读全文
posted @ 2017-04-25 10:14
zxiaocheng
阅读(2840)
推荐(0)
摘要:
RTC的英文全称是Real-Time Clock,翻译过来是实时时钟芯片. RTC是PC主板上的晶振及相关电路组成的时钟电路的生成脉冲主板上的晶振及相关电路组成的时钟电路的生成脉冲,,RTC经过8254电路的变频产生一个频率较低一点的OS(系统)时钟TSC,系统时钟每一个cpu周期加一周期加一,,每
阅读全文
posted @ 2017-04-25 10:11
zxiaocheng
阅读(1098)
推荐(0)
摘要:
mutex与semaphore的区别 网摘1:Mutex 的发音是 /mjuteks/ ,其含义为互斥(体),这个词是Mutual Exclude的缩写。Mutex在计算机中是互斥也就是排他持有的一种方式,和信号量-Semaphore有可以对比之处。有人做过如下类比: * Mutex是一把钥匙,一个
阅读全文
posted @ 2017-04-01 14:00
zxiaocheng
阅读(992)
推荐(0)
摘要:
hub_irq() --> usb_submit_urb() usb_start_wait_urb() --> usb_submit_urb()一旦urb被USB驱动程序正确地创建和初始化后,就可以递交到USB核心以发送到USB设备了。如果函数调用成功,当urb被HC处理结束的时候,urb的结束处理
阅读全文
posted @ 2017-03-31 11:36
zxiaocheng
阅读(3239)
推荐(0)
摘要:
内核源码:Linux-2.6.38.8.tar.bz2 目标平台:ARM体系结构 进程是处于执行期的程序以及它所管理的资源(如打开的文件、挂起的信号、进程状态、地址空间等等)的总称。注意,程序并不是进程,实际上两个或多个进程不仅有可能执行同一程序,而且还有可能共享地址空间等资源。 Linux内核通过
阅读全文
posted @ 2017-03-31 09:48
zxiaocheng
阅读(23029)
推荐(1)
摘要:
避免对同一数据的并发访问(通常由中断、对称多处理器、内核抢占等引起)称为同步。 ——题记 内核源码:Linux-2.6.38.8.tar.bz2 目标平台:ARM体系结构 原子操作确保对同一数据的“读取-修改-写入”操作在它的执行期间不会被打断,要么全部执行完成,要么根本不会执行。例如在ARM上对全
阅读全文
posted @ 2017-03-31 09:44
zxiaocheng
阅读(875)
推荐(0)
摘要:
/** * usb_submit_urb - issue an asynchronous transfer request for an endpoint * @urb: pointer to the urb describing the request * @mem_flags: the type
阅读全文
posted @ 2017-03-30 17:13
zxiaocheng
阅读(1129)
推荐(0)
摘要:
解决方法如下: 原因: 原因: There are multiple known causes for this error: - You attempted to set a route specific to an interface which was not up at the time y
阅读全文
posted @ 2017-03-29 15:32
zxiaocheng
阅读(7091)
推荐(0)
摘要:
linux下route命令 route命令感觉很不容易。一般开机后在命令行中使用route命令,会得到下面的信息 Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.100.0
阅读全文
posted @ 2017-03-28 18:11
zxiaocheng
阅读(27613)
推荐(0)
摘要:
使用下面的 route 命令可以查看 Linux 内核路由表。 [cpp] view plain copy # route Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.0.0 * 255.255.255.0 U 0 0
阅读全文
posted @ 2017-03-28 18:07
zxiaocheng
阅读(1462)
推荐(0)
摘要:
route [-CFvnee] route [-v] [-A family] add [-net|-host] target [netmask Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reins
阅读全文
posted @ 2017-03-28 15:02
zxiaocheng
阅读(875)
推荐(0)
摘要:
带你入门: 1.INIT_WORK(struct work_struct *work, void (*function)(void *), void *data) 上面一句只是定义了work和work对应的操作。 要是在实际使用的时候还是需要你去在适当的条件下激活这个work。只有激活了这个work
阅读全文
posted @ 2017-03-23 11:39
zxiaocheng
阅读(29798)
推荐(1)
摘要:
要使用网络通讯,所以不可避免的要用到dhcp。理想的网络通讯方式是下面3种都要支持: 1,接入已有网络。这便要求可以作为dhcp客户端。 2,作为DHCP服务器,动态分配IP。 简单说下前2种情况。 使用步骤: (1)在内核的网络项里面把DHCP配置上; (2)在busybox里面把[*]udhcp
阅读全文
posted @ 2017-03-20 16:32
zxiaocheng
阅读(11212)
推荐(0)
摘要:
Mutex是一把钥匙,一个人拿了就可进入一个房间,出来的时候把钥匙交给队列的第一个。一般的用法是用于串行化对critical section代码的访问,保证这段代码不会被并行的运行。 Semaphore是一件可以容纳N人的房间,如果人不满就可以进去,如果人满了,就要等待有人出来。对于N=1的情况,称
阅读全文
posted @ 2017-02-27 11:00
zxiaocheng
阅读(627)
推荐(0)
摘要:
/** * dev_alloc_skb - allocate an skbuff for receiving * @length: length to allocate * * Allocate a new &sk_buff and assign it a usage count of one. T
阅读全文
posted @ 2017-02-24 10:44
zxiaocheng
阅读(690)
推荐(0)
摘要:
skb_reserve() skb_reserve()在数据缓存区头部预留一定的空间,通常被用来在数据缓存区中插入协议首部或者在某个边界上对齐。它并没有把数据移出或移入数据缓存区,而只是简单地更新了数据缓存区的两个指针-分别指向负载起始和结尾的data和tail指针,图3-15 展示了调用skb_r
阅读全文
posted @ 2017-02-24 10:42
zxiaocheng
阅读(919)
推荐(1)
摘要:
option.c This driver exists because the "normal" serial driver doesn't work too well with GSM modems. Issues: - data loss -- one single Receive URB is
阅读全文
posted @ 2017-02-23 17:19
zxiaocheng
阅读(1238)
推荐(0)
摘要:
通过驱动模块的加载在/dev下创建设备文件,在驱动模块卸载时又自动的删除在/dev下创建的设备文件非常方便。而这个过程就是通过device_create()和device_destroy()内核函数完成的,在Linux2.6.27之前是class_device_create()和class_devi
阅读全文
posted @ 2017-02-20 11:49
zxiaocheng
阅读(712)
推荐(0)
摘要:
转自(http://blog.csdn.net/snaking616/article/details/52966634) 1.国内可用的更新源地址: (1)中科大地址 http://mirrors.ustc.edu.cn/ubuntu-old-releases (2)163 http://mirro
阅读全文
posted @ 2017-02-15 15:39
zxiaocheng
阅读(1074)
推荐(0)
摘要:
(一)分区 在XP下"我的电脑“管理功能,对硬盘分区,目的是从逻辑分区中拿出20G空间,分成3个盘(必须为逻辑盘); (1)512MB 用作Linux swap分区; (2)200MB 用作Linux /boot 挂载; (3)20GB 用作Linux /挂载; (二)制作 Fedora 引导U盘
阅读全文
posted @ 2017-02-15 11:04
zxiaocheng
阅读(416)
推荐(0)
摘要:
update是下载源里面的metadata的. 包括这个源有什么包, 每个包什么版本之类的. upgrade是根据update命令下载的metadata决定要更新什么包(同时获取每个包的位置).安装软件之前, 可以不upgrade, 但是要update. 因为旧的信息指向了旧版本的包, 但是源的服务
阅读全文
posted @ 2017-02-14 11:20
zxiaocheng
阅读(156)
推荐(0)
摘要:
在使用ubuntu16.4编译Linux-2.6.31内核时出现这样的错误 可以修改timeconst.pl的内容后正常编译。 以下是编译错误提示的内容: Can't use 'defined(@array)' (Maybe you should just omit the defined()?)
阅读全文
posted @ 2017-02-06 15:40
zxiaocheng
阅读(5293)
推荐(0)
摘要:
class_create(),device_create自动创建设备文件结点 从linux 内核2.6的某个版本之后,devfs不复存在,udev成为devfs的替代。相比devfs,udev有很多优势,在此就不罗嗦了,提醒一 点,udev是应用层的东东,不要试图在内核的配置选项里找到它;加入对ud
阅读全文
posted @ 2017-02-06 10:42
zxiaocheng
阅读(492)
推荐(0)
摘要:
setup terminal locale “chinese” OK!!!!!
阅读全文
posted @ 2017-01-23 09:37
zxiaocheng
阅读(248)
推荐(0)
摘要:
模块参数 引导模块时,可以向它传递参数。要使用模块参数加载模块,这样写: insmod module.ko [param1=value param2=value ...] 为了使用这些参数的值,要在模块中声明变量来保存它们,并在所有函数之外的某个地方使用宏MODULE_PARM(variable,
阅读全文
posted @ 2017-01-22 11:53
zxiaocheng
阅读(864)
推荐(0)
摘要:
1 引言1.1 编写目的 介绍Qualcom QMI 基本知识,API使用,设计原理,基于QMI的RemoteEfs(NV)分析1.2 阅读建议 高通平台入门1.3 参考资料 Qualcom 文档和msm代码 1.5 运行平台 Android 4.41.4 文档声明 2, 缩略语介绍 QMI: Qu
阅读全文
posted @ 2017-01-03 10:04
zxiaocheng
阅读(5447)
推荐(0)
摘要:
SurfaceFlinger是Android multimedia的一个部分,在Android 的实现中它是一个service,提供系统 范围内的surface composer功能,它能够将各种应用 程序的2D、3D surface进行组合。在具体讲SurfaceFlinger之前,我们先来看一下
阅读全文
posted @ 2016-09-13 16:23
zxiaocheng
阅读(6154)
推荐(0)