metootxy

导航

 

2013年5月3日

摘要: http://www.cnblogs.com/forward/archive/2012/01/10/2318483.html 阅读全文
posted @ 2013-05-03 11:25 metootxy 阅读(839) 评论(0) 推荐(0)
 

2013年4月25日

摘要: 1、撤销某个提交版本的命令:git revert commit_id执行一次revert撤销命令也会作为一次提交进行保存,即也相当于一次commit;最后执行git push original current_work_branch:master即可;撤销前一次版本的提交:git revert HEAD撤销前前一次版本的提交:git revert HEAD^2、回退到以前的某个版本的命令git reset跟git revert命令不同,git reset命令是将当前版本库中的HEAD重置,不会留log,比较残酷一点,不想revert只是撤销版本库中的某一次提交。git reset --hard 阅读全文
posted @ 2013-04-25 19:18 metootxy 阅读(198) 评论(0) 推荐(0)
 

2013年4月18日

摘要: 锂电池battery,很简单的用途充电,可是他到底是怎么完成充电的,大电流是不是可以一直充电,他又是如何放电的,电池是如何保护的,电池,保护板,电芯又有什么样的联系呢?带着一些列的疑问,我们一起来学习电池吧!充电电池是由保护板和电芯组成的。电芯是电池中的蓄电部分,电芯的质量决定了电池的质量。电池保护板:对锂电池其保护作用的集成电路板。主要作用是过充保护,过放保护,过流、短路保护;1、正常工作时:当电芯电压在2.5V和4.35V之间时,电芯的负极与保护板的P-断相当于直接连通,保护板有电压输出。2、保护板过放时:当电池通过外接负载放电时,电芯的电压降慢慢降低,当电芯的电压下降到2.3V时,降认为 阅读全文
posted @ 2013-04-18 20:31 metootxy 阅读(502) 评论(0) 推荐(0)
 

2013年4月11日

摘要: 1、在C语言中常用的数据类型:char, short, int, long, float, double, struct, union, enum,signed, unsigned, void;一般char 1byte; short 2byte; int 4byte; long 8byte;2、首先,一起来了解一下,计算机中用于表达数据的补码,反码和原码;我们知道计算机中是按字节来存储数据的,1byte = 8bit; 并且计算机只能识别0和1;所以在计算机中都是用二进制来表示的;比如我们定义一个一个字节的无符号整数型变量unsigned char,他所能表示的最大范围0~255(2^8 - 阅读全文
posted @ 2013-04-11 21:54 metootxy 阅读(182) 评论(0) 推荐(0)
 

2013年4月2日

摘要: 记得前面有篇文章介绍了终端的实现等,现在我们在了解一下,中断的种类:中断分为不同的种类:一、状态触发:在状态中断系统中,一个等待响应的中断会在中断请求路线上以特定的电平标识,如高电平(1)或低电平(0)。当一个设备希望发送中断请求信号时,他的驱动中断请求线路至响应的电平,并在CPU发出强制停止命令或处理所请求的中断时间之前始终保持。该中断模式在共享中断中存在一个严重的问题:只要还有任何设备的中断请求还未被处理,线路就会一直保持有效电平状态,而将导致CPU没有机会去探查其他设备所发生的状态变化。二、边沿触发:在边沿触发的中断系统中,中断设备通过向中端线路发送一个脉冲来表示其中断请求。脉冲可以为上 阅读全文
posted @ 2013-04-02 19:13 metootxy 阅读(3595) 评论(0) 推荐(0)
 
摘要: 现象:$ adb shell* daemon not running. starting it now on port 5037 ** daemon started successfully *error: insufficient permissions for device想到有可能是自己权限不够,ls -al usr/bin/adb 发现自己的用户和组都是root:root;有可能是adb service的问题。所以,首先kill掉adb服务:adb kill-server;然后再开启服务:sudo adb start-server;在只用前,查看一下当前设备是否可用:adb devic 阅读全文
posted @ 2013-04-02 18:30 metootxy 阅读(1053) 评论(0) 推荐(0)
 

2013年4月1日

摘要: 前面两篇文章,介绍的锁机制都是可用于可睡眠的线程中,但是自旋锁可以用于中断上下文中,因为他是不可睡眠的锁。自旋锁用于中断上下文,不能用于进程上下文,它是不可睡眠的锁,该进程若有睡眠,就不能使用该锁,因为会发生死锁。在内核中,自旋锁机制是如果当前可获得自旋锁则代码进入临界区,如果当前锁不可获得,则代码进入忙循环中并时刻检查该锁,知道锁可用。所以这个忙循环就是自旋锁的“自旋”部分。1、头文件:include/linux/spinlock.h结构体:spinlock_t lock;2、定义及其初始化自旋锁:277 #define spin_lock_init(_lock) ... 阅读全文
posted @ 2013-04-01 20:29 metootxy 阅读(1295) 评论(0) 推荐(0)
 
摘要: 前一篇文章讲的是completion信号量,该机制不能用于中断上下文中,因为该锁可睡眠。接下来,介绍的锁机制也是一个可以睡眠的锁——互斥锁,所以该锁也不能用于中断上下文中;1、头文件:include/linux/mutex.h结构体: 48 struct mutex { 49 /* 1: unlocked, 0: locked, negative: locked, possible waiters */ 50 atomic_t count; 51 spinlock_t wait_lock; ... 阅读全文
posted @ 2013-04-01 19:48 metootxy 阅读(678) 评论(0) 推荐(0)
 
摘要: 在linux内核中,引入锁机制主要是解决资源并发与竞争问题;主要常用锁机制:信号量,自旋锁,互斥锁;该篇文章主要讲解的是completion信号量。(1)completion信号量:completion信号量是一个轻量级的机制,它允许一个线程告诉另一个线程某个工作已经做完了;1、头文件:include/linux/completion.h结构体:1 25 struct completion {2 26 unsigned int done;3 27 wait_queue_head_t wait;4 28 };5 29 2、定义及其初始化一个信号量:静态定... 阅读全文
posted @ 2013-04-01 19:40 metootxy 阅读(4539) 评论(0) 推荐(0)
 
摘要: 第一次,来到cnblog这个大家园,现在开始记录我的一切吧!只要朝着太阳的方向,不断努力,就会有新的希望所以真善美,metootxy加油哦!!! 阅读全文
posted @ 2013-04-01 18:53 metootxy 阅读(96) 评论(0) 推荐(0)