自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (3)
  • 收藏
  • 关注

原创 管道-命名管道(FIFO)

命名管道(FIFO)和管道(pipe)基本相同,但也有一些不同的地方:1)FIFO在文件系统中作为一个特殊的文件而存在,但FIFO中的内容却存放在内存中。(某个目录下有一个文件名)2)当使用FIFO的进程退出后,FIFO文件将继续保存在文件系统中以便以后使用。3)FIFO有名字,不相关的进程可以通过打开命名管道进行通信。FIFO文件的创建#include <sys/types.h>#i...

2018-02-28 17:41:37 1290 1

原创 复制文件描述符dup和dup2

文件描述符的复制:dup和dup2是两个非常有用的系统调用,都是用来复制一个文件的描述符,使新的文件描述符也标识旧的文件描述符所标识的文件。>> int dup(int oldfd);>> int dup2(int oldfd,int newfd);dup和dup2经常用来重定向进程的stdin,stdout和strerr。如:ls > log.txt 将ls的输出信...

2018-02-27 17:51:41 1483

原创 管道-无名管道

管道(pipe)概述:(怎样使用管道实现父子进程间通信)不相关的两个进程无法通过无名管道进行进程间通信。管道又称无名管道(没有名字),无名管道是一种特殊类型的文件,在应用层体现为两个打开的文件描述符。管道是最古老的UNIX IPC方式,其特点是:1> 半双工,数据在同一时刻只能在一个方向上流动。(单工-收音机)2> 数据只能从管道的一端写入,从另一端读出。3> 写入管...

2018-02-12 15:19:42 655

原创 可重入函数和信号集

--- 可重入函数:可重入函数是指函数可以由多个任务并发使用,而不必担心数据错误。编写可重入函数:>>不使用(返回)静态的数据、全局变量(除非用信号量互斥)>>不调用动态内存分配、释放函数。>>不调用任何不可重入的函数(如标准I/O函数)注:即使信号处理函数使用的都是可重入函数,也要注意进入处理函数时,首先要保存errno的值,结束时,再恢复原值。因为信号处理过...

2018-02-11 16:17:31 343

原创 信号-signal

1、Kill:调用kill函数终止进程#include <sys/types.h>#include <signal.h>int kill(pid_t pid, int signum);功能:给指定的进程发送编号为signum的信号。返回值:成功返回0,失败返回-1.>> pid的取值有4种情况:1)pid>0:将信号传送给进程ID为pid的进程。(单个进程...

2018-02-06 15:39:04 298

原创 IPC和Kill

进程间通信(IPC:Inter Processes Communication)进程是一个独立的资源分配单元,不同进程(通常指用户进程)之间的资源是独立的,没有关联。不能在一个进程中直接访问另一个进程的资源(例如打开的文件描述符)进程不是孤立的,不同的进程需要进程信息的交互和状态的传递等,因此需要进程间通信。>> 进程间通信功能:1)数据传输:一个进程需要将它的数据发送给另一个

2018-02-05 16:17:35 369

原创 exit和vfork

在linux中,可以用以下函数结束正在运行的进程。>> exit函数—库函数#include <stdlib.h>void exit(int value);参数:value是返回给父进程的参数,低8位有效。>> _exit函数—系统调用#include<unistd.h>void _exit(int value);参数:value是返回给父进程的参数...

2018-02-03 18:07:51 345

原创 Linux系统编程 - 写缓冲和sleep

缓冲----行缓冲:标准C库的输入输出函数,向屏幕(标准输出)写东西的时候是行缓冲的。Write系统函数,无缓冲使用库函数往屏幕上写东西时是行缓冲。系统调用是无缓冲的。>> 也就是输出的内容会存在缓冲区里,直到缓冲区里有‘\n’才刷新缓冲区。>> 或者调用fflush(stdout)人为的刷新缓冲区。>> 程序结束了也会刷新缓冲区。>> 缓冲区满了,也会刷新缓冲区。-

2018-02-02 16:16:17 416 3

原创 等待子进程结束wait()和waitpid()

父子进程有时需要简单的进程间同步,如父进程等待子进程的结束。linux提供了以下两个等待函数:wait(),waitpid().需要包含头文件:#include <sys/types.h>#include <sys/wait.h>1)  pid_t wait(int *status);功能:等待任一子进程终止,如果子进程终止了,此函数会回收子进程的资源。调用wait函数的进...

2018-02-02 15:07:12 13415

原创 Linux系统编程 - 孤儿进程和僵尸进程

1)孤儿进程(Orphan Process):父进程已亡,即父进程运行结束,但是子进程未结束的进程。孤儿进程的父进程是1号进程-即init进程。父进程死亡之后终端释放。此时不能用ctrl-c结束进程。#include <sys/wait.h>#include <sys/types.h>#include <unistd.h>#include <stdi...

2018-02-02 11:03:25 290 1

原创 进程控制块和进程号

进程控制块PCB - process control block进程号pid唯一的标识了一个进程。>> OS是根据PCB来对并发执行的进程进行控制和管理的。系统在创建一个进程的时候会开辟一段内存空间存放与此进程相关的PCB数据结构。>> PCB是操作系统中最重要的记录型数据结构。PCB中记录了用于描述进程进展情况及控制进程运行所需的全部信息。>> PCB是进程存...

2018-02-01 15:18:53 916

原创 进程创建-fork

fork函数:创建一个新进程,需要包含下面的头文件#include #include pid_t fork(void);功能:fork()函数用于从一个已存在的进程中创建一个新进程,新进程称为子进程,原进程称为父进程。返回值: >> 成功:子进程中返回0,父进程中返回子进程ID。 >> 失败:返回-1.说明:使用fork函数得到的子进程是父

2018-02-01 15:01:07 1384 2

eclipse.exe

用于Android开发的Eclipse开发环境,有利于Android的开发的编译和运行

2014-10-07

SDK Manager

android 软件开发包SDK(software Development kit)

2014-10-07

粒子群优化算法

表述了人工智能中对粒子群的行为等的研究,并总结出优化算法

2012-12-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除