Linux 进程间的通信方式和原理
进程的概念 进程是操作系统的概念,每当我们执行一个程序时,对于操作系统来讲就创建了一个进程,在这个过程中,伴随着资源的分配和释放。可以认为进程是一个程序的一次执行过程。 进程通信的概念 进程用户空间是相互独立的,一般而言是不能相互访问的。但很多情况下进程间需要互相通信,来完成系统...
进程的概念 进程是操作系统的概念,每当我们执行一个程序时,对于操作系统来讲就创建了一个进程,在这个过程中,伴随着资源的分配和释放。可以认为进程是一个程序的一次执行过程。 进程通信的概念 进程用户空间是相互独立的,一般而言是不能相互访问的。但很多情况下进程间需要互相通信,来完成系统...
内核空间和用户空间 对 32 位操作系统而言,它的寻址空间(虚拟地址空间,或叫线性地址空间)为 4G(2的32次方)。也就是说一个进程的最大地址空间为 4G。操作系统的核心是内核(kernel),它独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限。为...
mmap概念 mmap是一种内存映射文件的方法,即将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。 实现这样的映射关系后,进程就可以采用指针的方式读写操作这一段内存,而系统会自动回写脏页面到对应的文件磁盘上,即完成了对文...
线程概述 进程是系统中程序执行和资源分配的基本单位。每个进程有自己的数据段、代码段和堆栈段。这就造成进程在进行切换等操作时都需要有比较负责的上下文切换等动作。为了进一步减少处理器的空转时间支持多处理器和减少上下文切换开销,也就出现了线程。 线程通常叫做轻量级进程。线程是在共享内存...
等待线程退出 线程从入口点函数自然返回,或者主动调用pthread_exit()函数,都可以让线程正常终止 线程从入口点函数自然返回时,函数返回值可以被其它线程用pthread_join函数获取 该函数是一个阻塞函数,一直等到参数th指定的线程返回;与多进程中的wait或wait...
线程的互斥 在Posix Thread中定义了一套专门用于线程互斥的mutex函数。mutex是一种简单的加锁的方法来控制对共享资源的存取,这个互斥锁只有两种状态(上锁和解锁),可以把互斥锁看作某种意义上的全局变量。为什么需要加锁,就是因为多个线程共用进程的资源,要访问的是公共区...
结构 由客户端和服务端组成。 有两个不兼容的版本分别是:1.x和2.x。 用SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。 OpenSSH 2.x同时支持SSH 1.x和2.x。 服务端是一个守护进程(daemon),他在后台运行并响应来自客户端的连接请求。...
TCP/IP协议族 TCP/IP是一个四层协议系统,自底而上分别是数据链路层、网络层、传输层和应用层。 数据链路层 实现了网卡接口的网络驱动程序,以处理数据在物理媒介上的传输。 常用协议 ARP RARP 网络层使用IP地址寻址一台机器,而数据链路层使用物理地址寻址一台机器,因此...
IP协议 概述 IP协议是TCP/IP协议族的核心协议,也是socket网络编程的基础之一。 IP头部信息出现在每个IP数据报中,用于指定IP通信的源端IP地址、目标端IP地址,指导IP分片和重组,以及指定部分通信行为。 IP数据报的路由和转发发生在除目标机器之外的所有主机和路由...
搜索当前分类