linux
文章平均质量分 61
eric491179912
这个作者很懒,什么都没留下…
展开
-
linux内核哈希表一例v1.0
作者:clusterlee题记:毕业课题需要,再内核环境下写了个哈希表,和使用C# 、Java 、C++的hash_map相比考虑的东西多了许多,受益匪浅。要点:1.内存的分配和回收2.临界区的互斥、并发控制代码结构:hash_example/hash_example.c /*内核模块,使用示例*/hash_example/hash_table.h /* 结构类型定义、宏以及接口定义*/hash_example/hash_table.c /* 接口实现*转载 2011-02-11 22:06:00 · 2198 阅读 · 0 评论 -
《unix环境高级编程》笔记1
第二章 文件I/O1、文件描述符 对于内核而言,所有打开的文件都通过文件描述符引用,文件描述符是一个非负整数。 使用open或者creat返回文件描述符,让read或write使用 Unix shell使用文件描述符0表示标准输入,1表示标准输出,2表示标准出错输出,为了避免在代码中出现魔数,在头文件中,1,2,3替换为符号常量STDIN_FILENO,STDOUT_转载 2012-03-22 17:10:21 · 1057 阅读 · 0 评论 -
Linux下的实时流媒体编程(RTP,RTCP,RTSP)
流媒体指的是在网络中使用流技术传输的连续时基媒体,其特点是在播放前不需要下载整个文件,而是采用边下载边播放的方式,它是视频会议、IP电话等应用场合的技术基础。RTP是进行实时流媒体传输的标准协议和关键技术,本文介绍如何在Linux下利用JRTPLIB进行实时流媒体编程。一、流媒体简介 随着Internet的日益普及,在网络上传输的数据已经不再局限于文字和图形,而是逐渐向声音和视转载 2012-01-06 15:40:00 · 1162 阅读 · 0 评论 -
在ubuntu上安装Sourcery G++工具链(GNU ARM)
在网上找了找支持Cortex-M3的Toolchain,发现网上许多同行都在SourceryG++用这个免费的GNU ARM编译器,其它比较“主流”的IDE(主要是在Windows下)还没有更新到可以支持CM3。下载地址:http://www.codesourcery.com/sgpp/lite/arm/portal/subscription3057这是一个跨平台的工具链,在Windows转载 2011-12-23 16:15:43 · 2906 阅读 · 0 评论 -
去掉复制代码之前行号的小技巧
有些在CSDN等网站上复制的代码,前面会有一些行号,这是很烦人的,要是一个一个删除的话,是会疯掉的。可以将代码复制到能使用正则表达式的文本编辑器中,例如eclipse中,在选择替换(Find/Replace)选项卡中,选择正则表达式(Regularexpressions),用空字符串替换正则表达式[0-9]+即可。【注】“[0-9]”表示0-9的任一数字,“+”匹配前面的子表达式一次或多次转载 2011-12-12 10:34:24 · 4646 阅读 · 1 评论 -
线程的那些事儿
转载于http://edsionte.com/techblog/archives/3254--------1.线程通过操作系统原理课,我们知道进程是系统资源分配的基本单位,线程是程序独立运行的基本单位。线程有时候也被称作小型进程,首先,这是因为多个线程之间是可以共享资源的;其次,多个线程之间的切换所花费的代价远远比进程低。在用户态下,使用最广泛的线程操作接口即为PO转载 2011-10-24 17:02:35 · 889 阅读 · 0 评论 -
linux设备驱动程序(第三版)读书笔记2
2.2. Hello World 模块许多编程书籍从一个 "hello world" 例子开始, 作为一个展示可能的最简单的程序的方法.本书涉及的是内核模块而不是程序; 因此, 对无耐心的读者, 下面的代码是一个完整的"hello world"模块#include#includeMODULE_LICENSE("DualBSD/GPL");static inthello_i原创 2011-10-21 09:42:36 · 889 阅读 · 0 评论 -
linux设备驱动程序(第三版)读书笔记1
第 1 章 设备驱动简介在编写驱动时, 程序员应当特别注意这个基础的概念: 编写内核代码来存取硬件, 但是不能强加特别的策略给用户, 因为不同的用户有不同的需求. 驱动应当做到使硬件可用, 将所有关于如何使用硬件的事情留给应用程序.原创 2011-10-19 21:21:21 · 764 阅读 · 0 评论 -
ubuntu下配置jdk+eclipse+android sdk
一直准备学一点Linux的东西,一直没有付诸行动,这个周末准备安装一下,做了将近半年的android开发,准备学一点关于框架和源码的东西。。。安装之前也百度谷歌了很多次,也看了网上不少的资料,总结一点,就是对于像我这种入门级的人来说,还是不够明确,结合网上的资料,本人在此再做转载 2011-10-17 17:33:07 · 948 阅读 · 0 评论 -
Ubuntu(Linux)使用Eclipse搭建C/C++编译环境
Ubuntu(Linux)使用Eclipse搭建C/C++编译环境 这两天,给自己电脑弄了双系统,除了原来的Windows 7系统外,装上了Linux系统,使用的版本是Ubuntu(点击可到相应的下载页面)。开始我装的Linux版本是fedora9,对于一个根转载 2011-10-17 17:31:19 · 1818 阅读 · 0 评论 -
eclipse CDT Unresolved inclusion 错误解决办法
真正解决办法:启动eclipse后,经过 Windows-->Preferences-->C/C++-->Build-->Environment增加Environment variables to set及点Add添加:Name: C_INCLUDE_PATHVa转载 2011-10-17 17:29:35 · 10623 阅读 · 0 评论 -
Linux系统基础知识(二)BIOS
BIOS(basic input/output system,基本输入输出系统)是一组被固化到电脑中,为电脑提供最低级、最直接的硬件控制的程序,它是连接软件程序和硬件设备的枢纽。 BIOS存在的目的包括:检测硬件、初始化硬件、分配资源(如转载 2011-10-14 16:25:10 · 5096 阅读 · 0 评论 -
Linux系统基础知识(一)硬盘
硬盘 硬盘是可以存储大量信息资源的媒介。我们平时看到的硬盘是方方正正的一块挺沉的铁匣子,但是其实硬盘是圆的,加上一些控制电路以后,为了便于携带而设计成 为方形外壳。但是硬盘真是圆的,不骗你,要不怎么叫做盘呢?第二,你需要知道的是硬盘可以进行分区。可以把硬盘分区成为很多个分区,转载 2011-10-10 22:25:48 · 1065 阅读 · 0 评论 -
进程上下文
<br /><br />请问进程上下文是什么意思?<br />回答者的答案集合:<br />1.<br />进程上下文一般在进程切换中提到,也就是当进程要切换时关于当前进程的寄存器内容以及内存页表的详细信息等等内容,一句话概括也就是关于描述进程的信息。<br />2.<br /> <br /> <br />同意楼上的,就是很多书本上提到的进程控制块PCB,保存着进程的很多详细信息<br />3.<br />补充(LINUX完全注释中的一段话):<br />当一个进程在执行时,CPU的所有寄存器中的值、进程的转载 2011-02-21 14:03:00 · 1491 阅读 · 0 评论 -
grep 与正则表达式
<br />rep一般格式为:<br />grep [选项] 基本正则表达式 [文件]<br />这里基本正则表达式可为字符串。<br />1.1 双引号引用<br /> 在grep命令中输入字符串参数时,最好将其用双引号括起来。例如:“m y s t r i n g”。这样做有两个原因,一是以防被误解为s h e l l命令,二是可以用来查找多个单词组成的字符串,例如:<br />“jet plane”,如果不用双引号将其括起来,那么单词p l a n e将被误认为是一个文件,查询结果<br />将转载 2011-03-04 22:27:00 · 893 阅读 · 0 评论 -
《unix环境高级编程》笔记2
第四章 文件和目录本章将描述文件系统特征和文件性质1、stat、fstat和lstat函数原型:#includeint stat(const char* restrict pathname, struct stat *restrict buf);int fstat(int filedes, struct stat *buf);int lstat(const char*转载 2012-03-29 16:47:29 · 897 阅读 · 0 评论