Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

关于Qt,Qt/E,Qtopia Core, Qtopia 区别和联系

关于Qt,Qt/E,Qtopia Core, Qtopia 区别和联系

关于Qt,Qt/E,Qtopia Core, Qtopia这些版本之间的区别和联系,似乎没有看到一个比较有价值的讨论,本人现在总结一下个人的理解: Qt泛指Qt的所有桌面版本,比如Qt/X11,Qt Windows,Qt Mac等。由于Qt最早是在Linux中随着KDE流行开来的,因此通常很多人说的Qt都指用于Linux/Unix的Qt/X11。 Qt/E(Qt/Embedded)是用于嵌入式Linux系统的Qt版本。Qt/E去掉了X Lib的依赖而直...
Linux条件变量用法

Linux条件变量用法

Linux条件变量是线程中的东西,就是等待某一条件的发生,和信号一样。以下是说明,条件变量使我们可以睡眠等待某种条件出现。 条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待"条件变量的条件成立"而挂起;另一个线程使"条件成立"(给出条件成立信号)。为了防止竞争,条件变量的使用总是和一个互斥锁结合在一起。 条件变量类型为pthread_cond_t创建和注销 条件变量和互斥锁一样,都有静态动态两种创建方式,静态方式使用PT...
Linux下/dev/mem和/dev/kmem的区别

Linux下/dev/mem和/dev/kmem的区别

Linux下/dev/mem和/dev/kmem的区别:/dev/mem: 物理内存的全镜像。可以用来访问物理内存。/dev/kmem: kernel看到的虚拟内存的全镜像。可以用来访问kernel的内容。作用:前者用来访问物理IO设备,比如X用来访问显卡的物理内存,或嵌入式中访问GPIO。用法一般就是open,然后mmap,接着可以使用map之后的地址来访问物理内存。这其实就是实现用户空间驱动的一种方法。后者一般可以用来查看kernel的变量,或者用作r...
在Linux上获得线程id的方法

在Linux上获得线程id的方法

在Linux上获得线程id的方法我使用了第二种方法,很方便:#define gettid() syscall(__NR_gettid)用到的地方 gettid()在Linux2.4版本后,Linux使用了NPTL作为自己的线程库,为了兼容POSIX标准,所以在内核task中有两个域tgid和tid,前者是进程id,后者是线程id。在Linux上获得线程id的方法,目前我所知的有三种,当然这里的三种是指在用户态的程序中,否则除非自己写的kernel modu...
Linux下内存占用多的原因

Linux下内存占用多的原因

当Linux第一次读取一个文件运行时,一份放到一片内存中cache起来,另一份放入运行程序的内存中,正常运行,当程序运行完,关闭了,cache中的拿一分却没有释放第二次运行的时候,系统先看看在内存中是否有一地次运行时存起来的cache中的副本,如果有的话,直接从内存中读取,那样,速度就快多了。说明这种情况的很典型的例子是启动firefox,由于firefox程序很大,因此第一次读取运行的时候很慢,尤其在速度不快的机器上,但是当你彻底关闭了firefox,p...
Linux系统在多个VI终端间实现文件内容拷贝

Linux系统在多个VI终端间实现文件内容拷贝

由于Linux系统并没有如同windows上面的那样通用的剪贴板。所以,在多个VI终端窗口之间拷贝文件内容需要一点技巧。其中一个方法就是利用一个文件来作中转,下面这段代码的原理即是如此。将以下两行代码添加到你的.vimrc里面去,在使用VI时,定义一个标签(如mm定义了标签m),在命令行模式下用C m来拷贝标签m与当前行之间的文件内容,即可在另外的终端上用V来粘贴。该方法在任何linux和Unix下面都是可行的。代码(在Vim 7.1环境下):comman...
Linux shell之grep

Linux shell之grep

1.什么是grepLinux grep全称为全局正则表达式打印(global regular expression print),用于查找输入文本中匹配正则表达式的所有行,并写入到标准输出(显示器)。可以说,grep是一个程序家族,它拥有三个实用程序。(1)grep标准grep,只支持部分正则表达式。(2)egrep扩展的grep,支持大部分正则表达式。(3)fgrep快速grep,只支持字符串模式,不支持正则表达式。2.grep工作原理 为了正确使用gr...
嵌入式:关于Linux开发环境的建立

嵌入式:关于Linux开发环境的建立

本人还是比较喜欢在windows中开发程序,毕竟windows使用了这么多年了较为熟悉,从这一点来说本人算不上真正的Linux人员,当然这是本人努力的目标。 环境建立的思路---本人认为在开发路上遇到任何问题,只要解决思路是正确的,问题最终会解决,所以本文不会太多涉及具体的解决方法,主要是针对解决思路做一下解释。 大多数情况我们开发项目会买到开发板,并且开发板会提供比如开发环境、Linux内核、文件系统等等!当我们开发时也应该尽量按照开发板中的说明...
Linux驱动与RTC驱动泛泛研究

Linux驱动与RTC驱动泛泛研究

1、对Linux下的目录更清楚了,ARCH 是和板子或者是硬件系统CPU相关的,也是移植的重点地方,drivers是驱动的文件目录,FS ,NET等是特殊驱动的目录。2、Kconfig 和 Makefile 配合使用,Kconfig 定义一些宏,用户可以选择定义或者不定义,但是正真管理定义了的宏便宜哪些文件,就由Makefile来确定了,根据这一点,我们可以很容易的找到每一个选项背后的源文件在哪里。3、移植的和板子相关的内容都在MACHINE_START ...
在Linux下用g++编译SDL程序的方法

在Linux下用g++编译SDL程序的方法

好几天没进li了。今天在Fedora Core 3(x86_64)下成功编译了我的几个SDL程序。格式是:g++ -o temp temp.cpp `sdl-config --cflags --libs`注意一个问题:头文件名的大小写。是"SDL.h",而不是"sdl.h"。由于最开始是用VC6编的,没注意到,所以搞得莫名其妙了大半天。最后需要强调的一点,`sdl-config --cflags --libs`两端的貌似单引号的东西不是单引号,是Tab键上...
在Linux2.6内核下实现进程隐藏

在Linux2.6内核下实现进程隐藏

很早以前的小程序,比较简单但是觉得有趣原理很简单,Linux查看进程的命令ps是通过系统调用sys_getdents实现,sys_getdents用户获取一个指定路径下的目录条目,实际上就是枚举/proc/ 下的pid,这样我们只需要hook一下sys_getdents,把相应的要隐藏的pid信息去掉即可。以下是LKM代码,在Linux-2.6.14测试并运行成功#include <linux/module.h>#include <lin...
Linux下多语言开发

Linux下多语言开发

Linux下开发多语言软件是一件非常困难的事,各个国家的字符集的编码方式、货币符号、日期格式、数字格式、文字表现都各不相同,glibc提供了大量的函数处理这些事情,不再聱述了。这里要做的是,用一个简单的实例说明一下GetText的用法,GetText是一系列的工具和库函数,帮助程序员和翻译人员开发多语言软件的。 GetText并不是一个神秘的东西,若非要在Win32下找一个东东与之对应的话,我想应该是资源文件(.res),它替你把字符串管理起来,在运...
<< 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 >>