自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Linux网络编程之UDP

一、概述 UDP 是 User Datagram Protocol 的简称, 中文名是用户数据报协议,是一个简单的面向数据报的运输层协议,在网络中用于处理数据包,是一种无连接的协议。UDP 不提供可靠性的传输,它只是把应用程序传给 IP 层的数据报发送出去,但是并不能保证它们能到达目的地。由于 ...

2017-12-06 15:55:31

阅读数 61

评论数 0

原创 Linux网络编程之TCP编程

一.概述 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。二.TCP 具有以下特点 1.电话系统服务模式的抽象 2.每一次完整的数据传输都要经过建立连接、使用连接、终止连接的过程 3.可靠、出错重传、且...

2017-12-06 15:44:19

阅读数 84

评论数 0

原创 Linux的内核相关问题

1、简述Linux进程内存空间分为哪几个段?作用分别是什么? 主要分为以下5部分: Text:存放可执行的指令操作,其只读不能写; Bss:存放未初始化的全局变量和静态变量; Data:存放初始化的全局变量和静态变量; Stack:存放临时变量,函数参数等; Heap:存放New/...

2017-12-05 17:15:01

阅读数 62

评论数 0

原创 Linux的线程间通信方式总结

Linux系统中的线程间通信方式主要以下几种: *  锁机制:包括互斥锁、条件变量、读写锁和自旋锁。    互斥锁确保同一时间只能有一个线程访问共享资源。当锁被占用时试图对其加锁的线程都进入阻塞状态(释放CPU资源使其由运行状态进入等待状态)。当锁释放时哪个等待线程能获得该锁取决于内核的调度...

2017-12-05 16:06:33

阅读数 1671

评论数 0

原创 Linux进程间通信方式总结

Linux系统中的进程间通信方式主要以下几种: 同一主机上的进程通信方式    * UNIX进程间通信方式: 包括管道(PIPE), 有名管道(FIFO), 和信号(Signal)    * System V进程通信方式:包括信号量(Semaphore), 消息队列(Messag...

2017-12-05 16:05:27

阅读数 74

评论数 0

转载 Linux进程间通信——使用匿名管道

在前面,介绍了一种进程间的通信方式:使用信号,我们创建通知事件,并通过它引起响应,但传递的信息只是一个信号值。这里将介绍另一种进程间通信的方式——匿名管道,通过它进程间可以交换更多有用的数据。 一、什么是管道 如果你使用过Linux的命令,那么对于管道这个名词你一定不会感觉到陌生,因为...

2017-12-04 15:21:40

阅读数 82

评论数 0

转载 Linux进程间通信——使用命名管道

在前一篇文章——Linux进程间通信——使用匿名管道中,我们看到了如何使用匿名管道来在进程之间传递数据,同时也看到了这个方式的一个缺陷,就是这些进程都由一个共同的祖先进程启动,这给我们在不相关的的进程之间交换数据带来了不方便。这里将会介绍进程的另一种通信方式——命名管道,来解决不相关进程间的通信问...

2017-12-04 15:19:59

阅读数 60

评论数 0

转载 Linux进程间通信——使用消息队列

下面来说说如何用不用消息队列来进行进程间的通信,消息队列与命名管道有很多相似之处。有关命名管道的更多内容可以参阅我的另一篇文章:Linux进程间通信——使用命名管道 一、什么是消息队列 消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。  每个数据块都被认为含有一个类型,接...

2017-12-04 15:18:20

阅读数 47

评论数 0

转载 Linux进程间通信——使用信号量

这篇文章将讲述别一种进程间通信的机制——信号量。注意请不要把它与之前所说的信号混淆起来,信号与信号量是不同的两种事物。有关信号的更多内容,可以阅读我的另一篇文章:Linux进程间通信——使用信号。下面就进入信号量的讲解。 一、什么是信号量 为了防止出现因多个程序同时访问一个共享资源而引...

2017-12-04 15:15:26

阅读数 31

评论数 0

转载 Linux进程间通信——使用共享内存

下面将讲解进程间通信的另一种方式,使用共享内存。 一、什么是共享内存 顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自...

2017-12-04 15:12:29

阅读数 54

评论数 0

转载 Linux进程通信之信号

一、什么是信号 用过Windows的我们都知道,当我们无法正常结束一个程序时,可以用任务管理器强制结束这个进程,但这其实是怎么实现的呢?同样的功能在Linux上是通过生成信号和捕获信号来实现的,运行中的进程捕获到这个信号然后作出一定的操作并最终被终止。 信号是UNIX和Linux系统响...

2017-12-04 12:34:15

阅读数 57

评论数 0

转载 fork()复制进程

fork()复制进程 1、fork()的基本概念 一个现有进程可以用fork()函数通过系统调用创建一个新进程,该函数定义如下: [cpp] view plain copy print? #include   pid_t fork(void);  ...

2017-12-02 21:14:05

阅读数 163

评论数 0

转载 fork之后子进程到底复制了父进程什么

[cpp] view plain copy print? #include  #include  #include  #include    void main()  {      char str[6]="hello";        pid_t ...

2017-12-02 20:42:15

阅读数 111

评论数 0

转载 Linux进程地址空间 && 进程内存布局

一 进程空间分布概述     对于一个进程,其空间分布如下图所示:                                       程序段(Text):程序代码在内存中的映射,存放函数体的二进制代码。 初始化过的数...

2017-12-02 18:22:09

阅读数 72

评论数 0

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