- 博客(27)
- 资源 (6)
- 收藏
- 关注
转载 Linux下thread编程(三)
作者:Sam(甄峰) sam_cdoe@hotmail.com1.创建thread.int pthread_create(pthread_t *restrict thread, const pthread_attr_t *restrict attr, void *(*start_routine)(void*), void *restrict arg); 参
2009-06-26 14:01:00
1885
1
转载 Linux下thread编程(二)
作者: Sam(甄峰) sam_code@hotmail.com thread属性:pthread_create()中,第二个参数(pthread_attr_t)为将要创建的thread属性。通常情况下配置为NULL,使用缺省设置就可以了。但了解这些属性,有利于更好的理解thread.属性对象(pthread_attr_t)是不透明的,而且不能通过赋值直接进行修改。系统提
2009-06-26 14:00:00
1669
1
转载 Linux下thread编程 (一)
作者:Sam (甄峰) sam_code@hotmail.com Sam前些天在提供一个库给别的公司时,因为不喜欢使用pthread_jion等函数,被人骂为垃圾程序。呵呵,之前因为在写多thread程序时,习惯让每个thread都为detach属性,这样他们就可以自我管理。而不需要再由别人回收资源。呵呵,不说这么多了,把POSIX thread方面的东西记下来吧。 Linu
2009-06-26 13:59:00
2284
转载 linux多线程设计
linux多线程设计 1 引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。 为什么有了进程的概念后,还
2009-06-26 13:51:00
622
转载 linux 下对 flash 设备操作的应用程序(嵌入式参考用)
linux下对dataflash设备操作(擦除、写入文件)的应用程序,注意,所有的操作必须要使用mtdx的字符设备。 放出这个程序,帮助大家理解一些mtdchar的字符设备驱动!#include #include #include #include #include #include #include #include #include int non_region_erase(in
2009-06-26 11:57:00
4395
转载 字符设备 register_chrdev_region()、alloc_chrdev_region() 和 register_chrdev()。
内核中所有已分配的字符设备编号都记录在一个名为 chrdevs 散列表里。该散列表中的每一个元素是一个 char_device_struct 结构,它的定义如下: static struct char_device_struct { struct char_device_struct *next; // 指向散列冲突链表中的下一个元素的指针 unsigned in
2009-06-25 16:40:00
20459
1
转载 如何在linux/unix中设置线程的优先级
如何在linux/unix中设置线程的优先级int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void*), void *arg);来创建线程,但是如何设置线程的优先级呢?在讨论这个问题的时候,我们先要确定当前线程使用的调度策略,posix提供了int pthread
2009-06-25 16:39:00
2902
转载 Linux下patch的制作和应用(转)
Linux下patch的制作和应用(转) 首先介绍一下diff和patch。在这里不会把man在线文档上所有的选项都介绍一下,那样也没有必要。在99%的时间里,我们只会用到几个选项。所以必须学会这几个选项。1、diff -------------------- NAME diff - find differences betw
2009-06-22 17:18:00
614
转载 从2.4 到2.6:Linux 内核可装载模块机制的改变对设备驱动的影响
从 2.4 到 2.6,Linux 内核在可装载模块机制、设备模型、一些核心 API 等方面发生较大改变,设备驱动开发人员面临着将驱动从 2.4 移植到 2.6 内核,或是使驱动同时支持2.4 与 2.6 内核的任务。站在设备驱动开发人员的角度,驱动由一个或几个外部可加载内核模块组成,本文针对 2.6 内核里模块机制的改变对编写设备驱动程序的影响,从内核模块的编译、装载时的版本检查、初
2009-05-20 23:58:00
489
转载 vi的复制粘贴命令
vi编辑器有3种模式:命令模式、输入模式、末行模式。掌握这三种模式十分重要: 命令模式:vi启动后默认进入的是命令模式,从这个模式使用命令可以切换到另外两种模式,同时无论在任何模式下只要按一下[Esc]键都可以返回命令模式。在命令模式中输入字幕“i”就可以进入vi的输入模式编辑文件。 输入模式:在这个模式中我们可以编辑、修改、输入等编辑工作,在编辑器最后一行显示一个“--INSERT--”标志
2009-05-20 09:48:00
3442
转载 udev详解
如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略。在Linux早期,设备文件仅仅是是一些带有适当的属性集的普通文件,它由mknod命令创建,文件存放在/dev目录下。后来,采用了devfs,一个基于内核的动态设备文件系统,他首次出现在2.3.46 内核中。Mandrake,Gentoo等Linux分发版本采用了这种方式。de
2009-05-19 23:35:00
1973
转载 udev轻松上路
第一、什么是udev? 这篇文章UDEV Primer给我们娓娓道来,花点时间预习一下是值得的。当然,不知道udev是什么也没关系, 把它当个助记符好了,有了下面的上路指南,可以节省很多时间。我们只需要树立一个信念:udev很简单! 嵌入式的udev应用尤其简单。 第二、为什么udev要取代devfs? 这是生产关系适应生产力的需要,udev好,devfs坏,用好的不用坏的。 ud
2009-05-19 23:27:00
1115
1
转载 利用udev在/dev下动态生成/移除设备文件
用udev在/dev/下动态生成设备文件,这样用户就不用手工调用mknod了。利用的kernel API: class_create : 创建class class_destroy : 销毁class class_device_create : 创建device class_device_destr
2009-05-19 23:16:00
781
转载 利用udev、sys动态创建linux设备结点
在Linux 2.6内核中,devfs被认为是过时的方法,并最终被抛弃,udev取代了它。Devfs的一个很重要的特点就是可以动态创建设备结点。那我们现在如何通过udev和sys文件系统动态创建设备结点呢? 下面通过一个实例,说明udev、sys动态创建设备结点的方法。注意代码中红色的部分是为了实现动态创建设备结点添加的。 #include #include #include #i
2009-05-19 23:13:00
598
转载 Linux下Shell编程
建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在 bash的大姐,bourne shell中运行)。 如同其他语言一样,通过我们使用任意一种文字编辑器,比如nedit、kedit、
2007-09-04 19:13:00
661
转载 Linux下Makefile的automake生成全攻略(转贴)
作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了。 在本文中,将给大家介绍如何使用autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的Makefile,这样就可以象常
2007-07-24 11:22:00
531
转载 shell基础12:tr
关于trt r用来从标准输入中通过替换或删除操作进行字符转换。t r主要用于删除文件中控制字符或进行字符转换。使用t r时要转换两个字符串:字符串1用于查询,字符串2用于处理各种转换。t r刚执行时,字符串1中的字符被映射到字符串2中的字符,然后转换操作开始。下面讲述:去除重复出现的字符下面文件包含了一些打印错误。这种情况时常发生,例如在v i编辑器中,偶尔按住一个键不放。
2007-07-23 20:28:00
899
转载 shell基础11:文件分类、合并和分割(sort,uniq,join,cut,paste,split)
" 实用的分类(s o r t)操作。" uniq。" join。" cut。" paste。" split。sort用法s o r t命令选项很长,下面仅介绍各种选项。选项s o r t命令的一般格式为:
2007-07-23 20:27:00
6921
转载 shell基础十:sed
sed 用法介绍s e d是一个非交互性文本流编辑器。它编辑文件或标准输入导出的文本拷贝。11 附加文本要附加文本,使用符号a /,可以将指定文本一行或多行附加到指定行。如果不指定文本放置位置, s e d缺省放在每一行后面。附加文本时不能指定范围,只允许一个地址模式。文本附加操作时,结果输出在标准输出上。注意它不能被编辑,因为s e d执行时,首先将文件的一行文本拷贝至缓冲区,在这里s e d编
2007-07-23 20:26:00
2382
转载 shell基础九:awk
shell基础九:awk 终于看经常用的到的awk了下面没有讲述a w k的全部特性,也不涉及a w k的深层次编程,仅讲述使用a w k执行行操作及怎样从文本文件和字符串中抽取信息。 2. 域和记录a w k执行时,其浏览域标记为$ 1,$ 2 . . . $ n。这种方法称为域标识。使用
2007-07-23 20:24:00
1628
转载 shell基础八:文本过滤工具(grep)
以 grep 来说, 在 Linux 上可找到 grep, egrep, fgrep 这几个程序, 其差异大致如下: * grep: 传统的 grep 程序, 在没有参数的情况下, 只输出符合 RE 字符串之句子. 常见参数如下: -v: 逆反模示, 只输出"不含" RE 字符串之句子. -r: 递归模式, 可同时处理所有层级子目录里的文件. -q: 静默模式, 不输出任何结果(stderr
2007-07-23 20:21:00
798
原创 shell基础五:输入和输出(echo,read,cat,管道,tee,重定向等)
下面的所有环境都在在REDHAT LINUX9下试验的在LINUX中,要使转义符生效,需加参数-e从echo的变量开始说起如:e c h o命令输出转义符以及变量。
2007-07-23 20:20:00
2392
转载 shell基础三和四:后台(crontab,at,&,nohup)及(*,?,[]等)
• 设置c r o n t a b文件,并用它来提交作业。• 使用a t命令来提交作业。• 在后台提交作业。•
2007-07-23 20:19:00
843
转载 shell基础二:查找技巧,find及xargs的使用
由于f i n d具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。即使系统中含有网
2007-07-23 20:15:00
681
原创 shell基础一:文件安全与权限
本文主要有以下内容: 文件权限位基本命令chmodsuid/guidchownchgrpumask算法和用法符号链接当创建一个文件的时候,系统保存了有关该文件的全部信息,包括:" 文件的位置。" 文件类型。" 文件长度。" 哪位用户拥有该文件,哪些用户可以访问该文件。" i节点。" 文件的修改时间。" 文件的权限位。让我们用touch命令创建一个文件: $ to
2007-07-23 20:14:00
1184
转载 Linux与Windows相互访问
[转帖]Linux与Windows相互访问 如今,大概没有人会低估Linux的发展前途,但是至少现在,我们仍然不能对Windows说不。因此,许多电脑爱好者只好将一部分硬盘空间让出来安装Linux。那么,能不能实现在Linux与Windows之间相互访问呢? 要想在Windows下访问Linux,需要工具软件的帮助;而在Linux下访问Windows,根据不同的分区格式,有不同的方法。 在Wi
2007-07-23 09:42:00
1358
STM32F10x_StdPeriph_Lib_V3.5.0.rar
2011-11-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人