摘要: asctime(将时间和日期以字符串格式表示) 相关函数 time,ctime,gmtime,localtime 表头文件 #include 定义函数 char * asctime(const struct tm * timeptr); 函数说明 asctime()将参数timeptr所指的tm结构 阅读全文
posted @ 2017-10-13 11:24 zxiaocheng 阅读(36418) 评论(0) 推荐(1) 编辑
摘要: 在Linux Driver开发中,经常要用到延迟函数:msleep,mdelay/udelay. 虽然msleep和mdelay都有延迟的作用,但他们是有区别的. 1.)对于模块本身 mdelay是忙等待函数,在延迟过程中无法运行其他任务.这个延迟的时间是准确的.是需要等待多少时间就会真正等待多少时 阅读全文
posted @ 2017-10-12 11:17 zxiaocheng 阅读(727) 评论(0) 推荐(0) 编辑
摘要: Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如 connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等 待某个事件的发生,如果事 阅读全文
posted @ 2017-10-11 18:52 zxiaocheng 阅读(316) 评论(0) 推荐(0) 编辑
摘要: fcntl系统调用可以用来对已打开的文件描述符进行各种控制操作以改变已打开文件的的各种属性 函数原型: [objc] view plain copy print? #include<unistd.h> #include<fcntl.h> int fcntl(int fd, int cmd); int 阅读全文
posted @ 2017-10-11 10:16 zxiaocheng 阅读(34367) 评论(0) 推荐(0) 编辑
摘要: O_NONBLOCK和O_NDELAY所产生的结果都是使I/O变成非搁置模式(non-blocking),在读取不到数据或是写入缓冲区已满会马上return,而不会搁置程序动作,直到有数据或写入完成。它们的差别在于设立O_NDELAY会使I/O函式马上回传0,但是又衍生出一个问题,因为读取到档案结尾 阅读全文
posted @ 2017-10-11 10:14 zxiaocheng 阅读(894) 评论(0) 推荐(0) 编辑
摘要: 一、数据成员 termios 函数族提供了一个常规的终端接口,用于控制非同步通信端口。 这个结构包含了至少下列成员:tcflag_t c_iflag; /* 输入模式 */tcflag_t c_oflag; /* 输出模式 */tcflag_t c_cflag; /* 控制模式 */tcflag_t 阅读全文
posted @ 2017-10-11 10:08 zxiaocheng 阅读(304) 评论(0) 推荐(0) 编辑
摘要: select()函数用法以及FD_ZERO、FD_SET、FD_CLR、FD_ISSET select函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复用输入/输出模型,原型: int select(int maxfd,fd_set *rdset,fd_ 阅读全文
posted @ 2017-10-11 10:07 zxiaocheng 阅读(1348) 评论(0) 推荐(0) 编辑
摘要: Linux中信号相关的一个结构体struct sigaction主要在sigaction信号安装和sigqueue信号发送时会用到 该结构位于/usr/include/bits/sigaction.h 在里面可以找到该结构的描述 /* Structure describing the action 阅读全文
posted @ 2017-10-11 10:04 zxiaocheng 阅读(1270) 评论(0) 推荐(0) 编辑
摘要: sigaction函数的功能是检查或修改与指定信号相关联的处理动作(可同时两种操作)。 他是POSIX的信号接口,而signal()是标准C的信号接口(如果程序必须在非POSIX系统上运行,那么就应该使用这个接口) 给信号signum设置新的信号处理函数act, 同时保留该信号原有的信号处理函数ol 阅读全文
posted @ 2017-09-28 14:18 zxiaocheng 阅读(426) 评论(0) 推荐(0) 编辑
摘要: 0.NAND的操作管理方式 NAND FLASH的管理方式:以三星FLASH为例,一片Nand flash为一个设备(device),1 (Device) = xxxx (Blocks),1 (Block) = xxxx (Pages),1(Page) =528 (Bytes) = 数据块大小(51 阅读全文
posted @ 2017-09-28 10:28 zxiaocheng 阅读(3728) 评论(0) 推荐(0) 编辑
摘要: AP:即无线接入点,是一个无线网络的中心节点。通常使用的无线路由器就是一个AP,其它无线终端 可以通过AP相互连接。 STA:即无线站点,是一个无线网络的终端。如笔记本电脑、PDA等。 1》工作在STA的模式下 这是一种基木的组网方式,由一个AP和许多STA组成,如下图。其特点是AP处于中心地位,S 阅读全文
posted @ 2017-09-21 20:32 zxiaocheng 阅读(1436) 评论(0) 推荐(0) 编辑
摘要: UBI文件系统简介 在linux-2.6.27以前,谈到Flash文件系统,大家很多时候多会想到cramfs、jffs2、yaffs2等文件系统。 它们也都是基于文件系 统+mtd+flash设备的架构。linux-2.6.27后,内核加入了一种新型的flash文件系统UBI(Unsorted Bl 阅读全文
posted @ 2017-09-21 17:32 zxiaocheng 阅读(3845) 评论(0) 推荐(0) 编辑
摘要: 配置内核,使其支持ubifs文件系统 1)Device Drivers >Memory Technology Device (MTD) support >UBI - Unsorted block images >Enable UBI 2)File systems >Miscellaneous fil 阅读全文
posted @ 2017-09-21 15:11 zxiaocheng 阅读(6447) 评论(0) 推荐(0) 编辑
摘要: RmNet和CDC-ECM区别:更像是两种拨号方式的区别,RmNet获取公网IP,ECD-ECM获取局域网IP。 在高通平台上,rmnet driver 和标准的CDC-ECM是有区别的,rmnet 也是属于CDC-ECM他们具体的区别在于对于USB命令的封装以及使用的USB接口,端点定义方式不同  阅读全文
posted @ 2017-09-21 15:11 zxiaocheng 阅读(6756) 评论(0) 推荐(0) 编辑
摘要: 一直弄不懂,管道不就是把前一个命令的结果作为参数给下一个命令吗,那在 | 后面加不加xargs有什么区别 NewUserFF 写道: 懒蜗牛Gentoo 写道: 管道是实现“将前面的标准输出作为后面的标准输入” xargs是实现“将标准输入作为命令的参数” 你可以试试运行: 代码: echo "-- 阅读全文
posted @ 2017-09-20 10:43 zxiaocheng 阅读(206) 评论(0) 推荐(0) 编辑
摘要: sqlite3 的insert记录项思路 1.组合一个insert的sql语句 2.判断是否需要立即执行,若不是立刻执行的语句,则插入到待处理的链表中,供后续事务处理时提交。必须有一个专门线程来对事务进行处理。 3.若是立刻需要执行的,则可以调用sqlite3_exec来进行执行。 (sqlliet 阅读全文
posted @ 2017-09-14 10:41 zxiaocheng 阅读(260) 评论(0) 推荐(0) 编辑
摘要: unsigned int 0~4294967295 int -2147483648~2147483647 unsigned long 0~4294967295 long -2147483648~2147483647 long long的最大值:9223372036854775807 long lon 阅读全文
posted @ 2017-09-12 17:40 zxiaocheng 阅读(237) 评论(0) 推荐(0) 编辑
摘要: unsigned char *skb_pull(struct sk_buff *skb, int len)该函数将 data 指针向数据区的末尾移动,减少了len 字段的长度。该函数可用于从接收到的数据头上移去数据或协议头。unsigned char *skb_push(struct sk_buff 阅读全文
posted @ 2017-09-12 15:25 zxiaocheng 阅读(420) 评论(0) 推荐(0) 编辑
摘要: atoll是c99标准加入的函数,在编译的时候可能要打开C99标准的编译选项 -std=c99。 另外,必须包含stdlib.h头文件,否则会出错。 ☞ C程序代码如下所示: #include <stdio.h> #include <stdlib.h> // 声明atoll函数 int main() 阅读全文
posted @ 2017-09-08 11:03 zxiaocheng 阅读(1419) 评论(0) 推荐(0) 编辑
摘要: from : http://blog.chinaunix.NET/uid-21556133-id-118208.html 安装Sqlite3: 从www.sqlite.org上下载Sqlite3.2.2运源代码,依照Readme中的步骤: tar xzf sqlite3.2.2.tar.gz mkd 阅读全文
posted @ 2017-09-01 15:35 zxiaocheng 阅读(1324) 评论(0) 推荐(0) 编辑
摘要: 1. 安装SQLite3 sudo apt-get install sqlite3 2. 安装Sqlite3编译需要的工具包 如果,你需要的话可以安装该工具包。只是为了体验一把,可以不安装。该项是可选项。 apt-get install libsqlite3-dev 3. 检查安装是否成功 执行下面 阅读全文
posted @ 2017-09-01 15:34 zxiaocheng 阅读(7273) 评论(0) 推荐(0) 编辑
摘要: 最近在Linux下用到数据库sqlite3,于是开始了该方面的学习。 0. 引言 我们这篇文章主要讲述了如何在C/C++语言中调用 sqlite 的函数接口来实现对数据库的管理, 包括创建数据库、创建表格、插入数据、查询数据、删除数据等。 1. 说明 这里我们假设你已经编译好了sqlite的库文件 阅读全文
posted @ 2017-09-01 15:33 zxiaocheng 阅读(2038) 评论(0) 推荐(0) 编辑
摘要: 打开数据库链接sqlite3_open用法 原型: 用这个函数开始数据库操作。需要传入两个参数,一是数据库文件名,比如:E:/test.db。文件名不需要一定存在,如果此文件不存在,sqlite会自动建立它。如果它存在,就尝试把它当数据库文件来打开。二是sqlite3**,即前面提到的关键数据结构。 阅读全文
posted @ 2017-09-01 15:32 zxiaocheng 阅读(16674) 评论(1) 推荐(0) 编辑
摘要: sqlite3使用简介 一.使用流程 要使用sqlite,需要从sqlite官网下载到三个文件,分别为sqlite3.lib,sqlite3.dll,sqlite3.h,然后再在自己的工程中配置好头文件和库文件,同时将dll文件放到当前目录下,就完成配置可以使用sqlite了。 使用的过程根据使用的 阅读全文
posted @ 2017-09-01 15:31 zxiaocheng 阅读(1105) 评论(0) 推荐(0) 编辑
摘要: from : http://blog.sina.com.cn/s/blog_5f2e119b0101ibwn.html SQLite3 (http://www.sqlite.org)是一个非常强大的小型开源数据库软件,特别嵌入到一些软件中存储数据,当然,移植到嵌入式系统上也是非常有必要的。众所周知的 阅读全文
posted @ 2017-09-01 15:30 zxiaocheng 阅读(870) 评论(0) 推荐(0) 编辑
摘要: { sqlite3 *db; char *errmsg=NULL; //用来存储错误信息字符串 char ret=0; int my_age=0; //类型根据要提取的数据类型而定 char **dbResult; int nRow=0, nColumn=0; //nRow 查找出的总行数,nCol 阅读全文
posted @ 2017-09-01 15:29 zxiaocheng 阅读(2974) 评论(0) 推荐(1) 编辑
摘要: 在操作数据库时 SQL语句中难免会用到变量 比如 在條件值已知的情況下 INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....) SELECT * FROM Persons WHERE FirstName='Bush' 在条件值是變量的情況下 阅读全文
posted @ 2017-09-01 15:28 zxiaocheng 阅读(5599) 评论(0) 推荐(0) 编辑
摘要: source: SQL中文站:http://www.sqlite.com.cn/MySqlite/4/378.Html OS X自从10.4后把SQLite这套相当出名的数据库软件,放进了作业系统工具集里。OS X包装的是第三版的SQLite,又称SQLite3。这套软件有几个特色: 软件属于公共财 阅读全文
posted @ 2017-09-01 15:27 zxiaocheng 阅读(478) 评论(0) 推荐(0) 编辑
摘要: 数据库的操作 我们在这个项目中使用的是SQLITE3数据库软件。 通过使用SQLITE3进行创建数据库,创建表,插入记录,查询记录,更新记录,关闭数据库等操作来实现将相应的数据存入数据库中。 打开数据库,创建表 1.1 sqlite * db; 定义一个sqlite * 的变量 sqlite3_op 阅读全文
posted @ 2017-09-01 15:25 zxiaocheng 阅读(538) 评论(0) 推荐(0) 编辑
摘要: sqlite常量的定义(SQLite3返回值的意思): SQLITE_OK = 0; 返回成功 SQLITE_ERROR = 1; SQL错误或错误的数据库 SQLITE_INTERNAL = 2; An internal logic error in SQLite SQLITE_PERM = 3; 阅读全文
posted @ 2017-09-01 11:31 zxiaocheng 阅读(1910) 评论(0) 推荐(0) 编辑
摘要: 简介sqlite3一款主要用于嵌入式的轻量级数据库,本文旨在为熟悉sqlite3基本命令提供技术文档。 备注:本文所有操作均在root用户下进行。1、安装sqlite3 ubuntu下安装sqlite3直接在终端运行命令:#apt-get install sqlite3查看版本信息:#sqlite3 阅读全文
posted @ 2017-09-01 11:24 zxiaocheng 阅读(7747) 评论(0) 推荐(0) 编辑
摘要: from : http://www.sqlite.com.cn/MySqlite/5/251.Html 1.0 总览 SQLite3是SQLite一个全新的版本,它虽然是在SQLite 2.8.13的代码基础之上开发的,但是使用了和之前的版本不兼容的数据库格式和API. SQLite3是为了满足以下 阅读全文
posted @ 2017-09-01 11:23 zxiaocheng 阅读(532) 评论(0) 推荐(0) 编辑
摘要: from: http://baike.so.com/doc/1529694.html 由于Linux下侧重使用命令,没有win的操作容易上手,所以在测试C操作SQLITE时会比较容易出现错误,给大家做一个简单的程序进行测试,演示怎么应用。打开vi编辑器,输入如下代码: [cpp] view plai 阅读全文
posted @ 2017-09-01 10:50 zxiaocheng 阅读(396) 评论(0) 推荐(0) 编辑
摘要: http://blog.chinaunix.NET/uid-30441-id-2133838.html 1、下载源代码http://www.sqlite.org/download.html 2、tar -zxvf sqlite-amalgamation-3.6.23.1.tar.gz 3、进入sql 阅读全文
posted @ 2017-09-01 10:48 zxiaocheng 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 自我补充:ubuntu在线安装sqlite3数据库的方法: 系统平台:ubuntu12.04 在ubuntu里面直接使用命令:sudo apt-get install sqlite3 ,出现: ………… ………… libsqlite3-0 (= 3.7.9-2ubuntu1) but 3.7.9-2 阅读全文
posted @ 2017-09-01 10:42 zxiaocheng 阅读(3014) 评论(0) 推荐(0) 编辑
摘要: Linux下如何查看哪些进程占用的CPU内存资源最多 linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合:ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|headlinux下获取占用内存资源最多的10个进程,可以使用如下命令组合:p 阅读全文
posted @ 2017-08-31 15:31 zxiaocheng 阅读(529) 评论(1) 推荐(0) 编辑
摘要: 可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令: (1)top top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 可以直接使用top 阅读全文
posted @ 2017-08-31 15:25 zxiaocheng 阅读(778) 评论(0) 推荐(0) 编辑
摘要: 在 Linux 服务器上遇到点小问题,上去折腾半天。这还是第一次注意到 Linux 这个多年来就存在的特性:OOM Killer 。说白了 OOM Killer 就是一层保护机制,用于避免 Linux 在内存不足的时候不至于出太严重的问题,把无关紧要的进程杀掉,有些壮士断腕的意思。 先要学习点老知识 阅读全文
posted @ 2017-08-31 14:55 zxiaocheng 阅读(584) 评论(0) 推荐(0) 编辑
摘要: 当我修改了/etc/profile文件,我想让它立刻生效,而不用重新登录;这时就想到用source命令,如:source /etc/profile对source进行了学习,并且用它与sh 执行脚本进行了对比,现在总结一下。source命令:source命令也称为“点命令”,也就是一个点符号(.),是 阅读全文
posted @ 2017-08-28 18:30 zxiaocheng 阅读(1041) 评论(0) 推荐(0) 编辑
摘要: 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 阅读(225) 评论(0) 推荐(0) 编辑