
linux
文章平均质量分 60
xiaoyuxianshenging
这个作者很懒,什么都没留下…
展开
-
linux 常用命令
Linux下的常用命令ls 查看文件信息 (如同dos系统中的dir命令)-a 显示所有的文件(包括隐藏文件) 即:ls -a-l 通过一个列表的形式将文件显示出来 即:ls -lmore即:ls -l | more(查看文件时,每次只显示一页,按q键退出)ca 切换工作目录cd .. 返回上层目录cd 文件目录原创 2017-03-08 20:39:40 · 201 阅读 · 0 评论 -
多线程
进程与线程进程:首先进程是一个实体,每一个进程都有自己的内存地段,进程是执行中的程序,但程序是一个没有生命的实体。进程是操作系统中最基本的,最重要的概念。线程:线程包含了表示进程内执行环境必须的信息,包括标识线程的线程ID,一组寄存器值,栈,调度优先级和策略,信号屏蔽字,errno变量以及线程私有数据。每一个程序至少有一个线程。一个进程在同一时间只能做一件事,多线程可以同时做多原创 2017-04-03 11:34:53 · 222 阅读 · 0 评论 -
守护进程实例
Linux守护进程:守护进程是运行在后台的一种特殊进程,它无需用户输入就能够运行,经常是提供某种服务。Linux的大多数服务器就是用守护进程实现的。守护进程的步骤1 首先执行fork后,让父进程退出。2 在子进程中调用setsid,取消进程与任何控制终端的关联。3 让根目录成为子进程的当前工作目录。 chdir('/')4 设置进程的umask = 0(设置权限)。5原创 2017-04-02 20:09:06 · 678 阅读 · 0 评论 -
Linux进程间通信——使用信号
一、什么是信号用过Windows的我们都知道,当我们无法正常结束一个程序时,可以用任务管理器强制结束这个进程,但这其实是怎么实现的呢?同样的功能在Linux上是通过生成信号和捕获信号来实现的,运行中的进程捕获到这个信号然后作出一定的操作并最终被终止。信号是UNIX和Linux系统响应某些条件而产生的一个事件,接收到该信号的进程会相应地采取一些行动。通常信号是由一个错误产生的。但它们转载 2017-03-14 12:45:24 · 298 阅读 · 0 评论 -
Linux守护进程的编程实现
Linux 守护进程的编程方法守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任务。比如,作业规划进程crond,打印进程lpd等。守护进程的编转载 2017-03-14 12:38:53 · 226 阅读 · 0 评论 -
Linux进程间通信——使用命名管道
在前一篇文章——Linux进程间通信——使用匿名管道中,我们看到了如何使用匿名管道来在进程之间传递数据,同时也看到了这个方式的一个缺陷,就是这些进程都由一个共同的祖先进程启动,这给我们在不相关的的进程之间交换数据带来了不方便。这里将会介绍进程的另一种通信方式——命名管道,来解决不相关进程间的通信问题。一、什么是命名管道命名管道也被称为FIFO文件,它是一种特殊类型的文件,它在文件系转载 2017-03-14 12:36:23 · 156 阅读 · 0 评论 -
Linux进程间通信——使用共享内存
下面将讲解进程间通信的另一种方式,使用共享内存。一、什么是共享内存顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言函数malloc分配的内存一转载 2017-03-14 12:30:52 · 270 阅读 · 0 评论 -
如何让linux在当前目录下找到可执行程序
在vi中写完c文件后,使用gcc进行编译,即:gcc xx.c 生成xx.out文件,然后再输入 ./xx.out 再执行。虽然能够完成对c文件的编译,但是较麻烦。使用.bash_profile来完成。第一步:cd 进入宿主目录下第二步:vi .bash_profile打开宿主目录名为.bash_profile的文件,若没有此文件则新建它第三步:在PATH后面加" :.原创 2017-03-09 10:05:18 · 2092 阅读 · 0 评论 -
C/C++文件的编译过程
在Windows下使用VS/VC等编译器,(其实VS只是编码器,在幕后是CL编译器在帮助其编译)编译C/C++文件我们并不能直观的看到详细过程,编译器直接自动编译。其实在Linux中VI/VIM编译器编译时,就能详细掌握此过程。其实编译分为三个阶段:1 预处理(预编译)2 编译(C/C++代码编译成二进制指令)3 链接原创 2017-03-09 10:33:25 · 701 阅读 · 0 评论 -
vi/vim 基本使用方法
转自:http://www.lupaworld.com/?uid-296380-action-viewspace-itemid-118973vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!i/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮转载 2017-03-07 20:17:58 · 337 阅读 · 0 评论 -
linux下的make
在Linux下写写简单的程序可以使用gcc/g++进行编译,若涉及的.c文件太多,则使用起来太麻烦,容易出错,且灵活性不高。make 是一种能够控制编译或者重复编译软件的工具。原创 2017-03-09 11:01:55 · 254 阅读 · 0 评论 -
线程同步
线程共享进程的内存空间,打开的文件描述符,全局变量。当有多个线程同时访问一块内存空间或者一个变量、一个文件描述符,如果不加控制,那么可能会出现意想不到的结果。 互斥(mutex)是相互排斥的意思,它是一种锁或者信号灯。互斥用来保护多个线程共享的数据和结构不会被同时修改,一个互斥锁只能有两个状态 –locked---加锁 –unlocked---解锁加锁后互斥不让其他原创 2017-04-03 13:32:07 · 189 阅读 · 0 评论