
LINUXC
JackieLee524
专注Linux系统开发,驱动移植
展开
-
linux下二进制文件比较程序
今天写了个能够在linux下比较二进制文件并标记出不同的小程序,暂且命名为bdiff。有需要的可以从https://github.com/jackielee524/bdiff 地址下载。当然也希望大家可以提出更好的建议。 正如这幅图所示,程序的运行输出只是以十六进制打印出存在不相同的行,并且将不相同的字节用方框圈出。 具体的输出格式为:该行首字节的偏移;第一个文件的十六原创 2013-03-30 23:08:58 · 1134 阅读 · 0 评论 -
Linux内核中的jiffies(转)
硬件给内核提供一个系统定时器用以计算和管理时间,内核通过编程预设系统定时器的频率,即节拍率(tickrate),每一个周期称作一个tick(节拍)。Linux内核从2.5版内核开始把频率从100调高到1000(当然带来了很多优点,也有一些缺点). jiffies是内核中的一个全局变量,用来记录自系统启动一来产生的节拍数。譬如,如果计算系统运行了多长时间,可以用jiffies/tick原创 2013-03-25 17:56:32 · 583 阅读 · 0 评论 -
容易混淆LINUX时钟的xtime和jiffie…
在LINUX的时钟中断中涉及至二个全局变量一个是xtime,它是timeval数据结构变量,另一个则是jiffies,首先看timeval结构struct timeval{time_t tv_sec;susecond_t tv_usec;}这个地方一直有很多人容易混淆,到底microsecond是毫秒还是微秒,我也经常犯这个错误,也被搞的糊涂了很久,我们理清一下吧,1秒=1000毫秒原创 2013-03-25 17:56:30 · 1067 阅读 · 0 评论 -
linux之write函数
书上关于write函数的讲法往往如下:#include ssize_t write(int fd, const void *buf, size_t count);参数: fd:要进行写操作的文件描述符buf:需要输出的缓冲区count:最大输出字节计数而其相对于read函数却是不同的#include ssize_t read(int fd, const void *buf,原创 2013-03-25 17:56:24 · 710 阅读 · 0 评论 -
Linux下vfork实例
#include #include #include #include //exit()函数的库文件int main(void){ pid_t pid; int count = 0; pid = vfork(); count++; printf("count = %d\n", count); exit(0); //这个exit(0);很关键,这个实现了进程的退出,要不然会原创 2013-03-25 17:56:26 · 510 阅读 · 0 评论 -
c语言中static 用法总结
惨痛教训:假设在test.h中定义了一个static bool g_test=false;若test1.c和test2.c都包含test.h,则test1.c和test2.c分别生成两份g_test,在test1.c 中置g_test=true,而test2.c中仍然为false并未改变!shit!!一、c程序存储空间布局C程序一直由下列部分组成: 1)正文段——CP转载 2013-05-08 20:43:55 · 573 阅读 · 0 评论 -
static用法小结
static关键字是C, C++中都存在的关键字, 它主要有三种使用方式, 其中前两种只指在C语言中使用, 第三种在C++中使用(C,C++中具体细微操作不尽相同, 本文以C++为准).(1)局部静态变量(2)外部静态变量/函数(3)静态数据成员/成员函数下面就这三种使用方式及注意事项分别说明一、局部静态变量在C/C++中, 局部变量按照存储形式可分为三种auto, static, registe转载 2013-05-08 21:25:26 · 480 阅读 · 0 评论