linux
文章平均质量分 69
guyun_shine
这个作者很懒,什么都没留下…
展开
-
POSIX多线程
一个进程中的线程之间主要共享:进程的指令、大多数数据(除了私有数据)、signal的处理方式和处理例程、进程的运行环境等。线程之间也有它们的区别,它们各自拥有自己的线程ID、寄存器、私有的线程栈、错误代码变量errno、信号掩码(signal mask)以及各自的优先级。编程时,要加入头文件,并在编译链接时链入Pthread库,例如cc -lpthread -o xxx xxx.c。转载 2009-03-27 18:39:00 · 362 阅读 · 0 评论 -
ps,grep,kill
1、程序和进程;程序是为了完成某种任务而设计的软件,比如OpenOffice是程序。什么是进程呢?进程就是运行中的程序。一个运行着的程序,可能有多个进程。比如 LinuxSir.Org 所用的WWW服务器是apache服务器,当管理员启动服务后,可能会有好多人来访问,也就是说许多用户来同时请求httpd服务,apache服务器将会创建有多个httpd进程来对其进行服务。转载 2009-06-15 14:57:00 · 531 阅读 · 0 评论 -
Lcd帧缓冲设备收藏
<br /><br />帧缓冲(framebuffer)是Linux为显示设备提供的一个接口,是把显存抽象后的一种设备,它允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作,这种操作是抽象的,统一的。用户不必关心物理显存的位置,换页机制等等具体细节。这些都由Framebuffer设备驱动程序完成的。帧缓冲驱动应用广泛,在linux的桌面系统中,Xwindow服务器就是利用帧缓冲进行窗口绘制的。尤其是通过帧缓冲设备可显示汉字点阵,成为linux汉化的唯一可行方案。<br /> 帧缓冲设备对应的设备原创 2010-11-18 17:32:00 · 724 阅读 · 0 评论 -
对FrameBuffer的简单解释和用法示例
<br /><br />大家都知道Unix/Linux系统是由命令驱动的。那么最基本的系统是命令行的(就是想DOS一样的界面)。X-Window-System是Unix/Linux上的图形系统,它是通过X-Server来控制硬件的。但有一些Linux的发行版在引导的时候就会在屏幕上出现图形,这时的图形是不可能由X来完成的,那是什么机制呢?答案是FrameBuffer。<br />FrameBuffer不是一个图形系统,更不是窗口系统。它比X要低级,简单来说FrameBuffer就是一种机制的实现。这种机制是转载 2010-11-18 17:23:00 · 779 阅读 · 0 评论 -
mmap与内存管理
mmap与内存管理转载 2010-11-18 17:14:00 · 739 阅读 · 0 评论 -
Frame Buffer
<br /><br />Linux的帧缓冲(Frame Buffer)之一:原理及控制参数<br />大家都知道Unix/Linux系统是由命令驱动的。X-Window-System是Unix/Linux上的图形系统,它是通过X-Server来控制硬件的。但有一些Linux的发行版在引导的时候就会在屏幕上出现图形,这时的图形是不可能由X来完成的,那是什么机制呢?答案是FrameBuffer。<br /> 帧缓冲(framebuffer)是 Linux 为显示设备提供的一个接口,把显存抽象后的一种设转载 2010-11-18 17:26:00 · 2212 阅读 · 0 评论 -
linux debug : addr2line追踪出错地址
linux debug : addr2line追踪出错地址转载 2011-02-23 19:54:00 · 1568 阅读 · 0 评论 -
编译android 出错, java JDK版本版本切换(ubuntu)
安装jdk5,jdk6,可以通过apt-get方式安装,这样就可以直接添加到ubuntu的jdk菜单里了,查看:update-alternatives --config javaupdate-alternatives --config javac 如果没有在菜单里可以如下方式添加:update-alternatives --install /usr/bin/java jav转载 2011-06-22 17:22:00 · 561 阅读 · 0 评论 -
UNIX Domain Socket IPC
UNIX Domain Socket IPC socket API原本是为网络通讯设计的,但后来在socket的框架上发展出一种IPC机制,就是UNIX Domain Socket。虽然网络socket也可用于同一台主机的进程间通讯(通过loopback地址127转载 2011-09-20 09:53:05 · 462 阅读 · 0 评论 -
Linux Socket domain
无名套接口套接口并不总是需要有一个地址。例如, socketpair函数创建了两个彼此相连的两个套接口,但是却没有地址。实际上,他们是无名套接口。想像一下冷战期间美国总统与苏联之间的红色电话。 他们任何一端并不需要电话号码,因为他们是直接相连的。同样,socketpair函数转载 2011-09-20 10:09:30 · 677 阅读 · 0 评论 -
linux socket --INET
一个完整的Socket则用一个相关描述:{协议,本地地址,本地端口,远程地址,远程端口}。每 一个Socket有一个本地的唯一Socket号,由操作系统分配。套接字有3种类型:流式套接字(SOCK_STREAM)、数据包套接字 (SOCK_DGRAM)和原始套接字。流式套转载 2011-09-20 10:12:45 · 744 阅读 · 0 评论 -
linux 以前常用的命令
netstat -an |grep 1521ps -ef | grep 加你的程序名----取得进程号kill -9 加进程号netstat -npl | grep LogServerOld LogServerOld 占用了哪个端口netstat -anp | grep LogServerOldnetstat -nap | grep 8080 清除端口占用线程valgri转载 2009-06-14 16:14:00 · 416 阅读 · 0 评论 -
静态库和共享库库的定位搜索路径
库文件在连接(静态库和共享 库)和运行(仅限于使用共享库的程序)时被使用,其搜索路径是在系统中进行设置的。一般 Linux 系统把 /lib 和 /usr/lib 两个目录作为默认的库搜索路径,所以使用这两个目录中的库时不需要进行设置搜索路径即可直接使用。对于处于默认库搜索路径之外的库,需要将库的位置添加到 库的搜索路径之中。设置库文件的搜索路径有下列两种方式,可任选其一使用: 在环境变量 L转载 2009-06-14 16:13:00 · 794 阅读 · 0 评论 -
linux中select()函数分析
select()的机制中提供一fd_set的数据结构,实际上是一long类型的数组, 每一个数组元素都能与一打开的文件句柄(不管是Socket句柄,还是其他 文件或命名管道或设备句柄)建立联系,建立联系的工作由程序员完成, 当调用select()时,由内核根据IO状态修改fd_set的内容,由此来通知执 行了select()的进程哪一Socket或文件可读,下面具体解释:#include #inc转载 2009-06-01 16:50:00 · 487 阅读 · 0 评论 -
Linux 线程实现机制分析
自从多线程编程的概念出现在 Linux 中以来,Linux 多线应用的发展总是与两个问题脱不开干系:兼容性、效率。本文从线程模型入手,通过分析目前 Linux 平台上最流行的 LinuxThreads 线程库的实现及其不足,描述了 Linux 社区是如何看待和解决兼容性和效率这两个问题的。一.基础知识:线程和进程按照教科书上的定义,进程是资源管理的最小单位,线程是程序执行的最小单位。转载 2009-03-27 19:08:00 · 376 阅读 · 0 评论 -
Linux 上实现双向进程间通信管道
2004 年 9 月 01 日本文阐述了一个使用 socketpair 系统调用在 Linux 上实现双向进程通讯管道的方法,并提供了一个实现。问题和常见方法Linux 提供了 popen 和 pclose 函数 (1),用于创建和关闭管道与另外一个进程进行通信。其接口如下:FILE *popen(const char *command, const char *转载 2009-04-07 18:14:00 · 943 阅读 · 0 评论 -
Linux下多线程编程详解
线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。 为什么有了进程的概念后,还要再引入线程呢?使用多线程到底有哪些好转载 2009-05-06 11:10:00 · 727 阅读 · 0 评论 -
Linux必学的60个命令
Linux必学的60个命令Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这转载 2009-05-11 00:04:00 · 626 阅读 · 0 评论 -
ubuntu 基本设置
配置:AMD2500 ,NVIDIA显卡, 下载*i386.iso这个32位版本的,以及对应的vmlinuz和initrd.gz文件,这两个文件一定要是对应版本的,并将这三个文件放到 fat32分区根目录下。下载grub_for_dos-0.4.2,解压至windows系统根目录下面,然后去掉boot.ini文件只读属性然后打 开加入以下语句c:/grldr=grub然后保存。重启windows转载 2009-05-10 23:08:00 · 816 阅读 · 0 评论 -
ubuntu 安装和卸载软件
方法一:可以用终端安装或卸载软件。方法二:用系统自带的“新立得软件包管理器”在终端里安装软件 apt-get install softname1 softname2 softname3……卸载软件 apt-get remove softname1 softname2 softname3……卸载并清除配置 apt-get remove --purge softname1更新软件信息数据库 apt-g转载 2009-05-10 23:20:00 · 452 阅读 · 0 评论 -
简述 Linux 文件系统的目录结构
Linux文件系统结的结构是树形结构,其入口从/开始,了解Linux文件系统的结构,对于我们需要掌握的基础知识点之一。 1、什么是文件系统; 请参见:《Linux 文件系统概述》 2、文件系统的组织结构简说; 当您使用Linux的时候,如果您通过ls -la / 就会发现,在/下包涵很多的目录,比如etc、usr、var、bin ... ... 等目录,而在这些目转载 2009-05-10 23:22:00 · 439 阅读 · 0 评论 -
Linux中批量增加用户并设置密码
作为一个系统管理员,可能要经常的为机器添加用户,可能是在一台机器上添加很多用户,也有可能是在很多机器上要添加同一个用户。而我就是这么一个系统员,公司每进一个新的员工,就要在多达50好几台的机器上为之一一建立帐号。也不知道为什么,以前的老管理员总是喜欢一台一台的去操作,我一进公司,他们就把这个事情交给了我。在我看来,这是一件非常枯燥而且无味的事情,于是我试着用script来自动完成这些操作转载 2009-05-25 11:00:00 · 2905 阅读 · 2 评论 -
STL的数据结构,容器
转载 2009-05-27 16:53:00 · 452 阅读 · 0 评论 -
gdb调试需要使用到的一些知识(心得)
为了更好的使用gdb来调试程序,需要具备一下技能:gdb的基本调试手段,比如b **.c:fun linenum 设置断点 , next:单步执行, step 单步调试,可以跟踪进函数。注意编译的时候要加上-g选项。info reg:查看寄存器状态。info locals:查看局部变量 p:打印变量的值 l:显示代码。x:以16进制的方式打印地址中的值。linux内存分配原理:局转载 2009-05-25 11:01:00 · 486 阅读 · 0 评论 -
普通应用使用Surface的方法
Android的NDK提供了Surface类,可供应用向屏幕绘图,但使用这个类,有很多机关,如果不注意,代码就不会正常工作。下面是我们使用的时候遇到的问题与解决方法。1,在C++代码里要使用Surface类,必须在APK的工程文件Android.mk里增加权限uses-permission android:name="android.permission.ACCESS_SU转载 2012-03-30 21:07:13 · 985 阅读 · 0 评论