【操作系统】进程(二)内存管理、通信

JavaEE---进程(二)内存管理、通信

一、内存管理

1.映射访问

2.独立分布

防崩溃

二、通信

1.独立性保障

2.方式

2.1管道

2.1.2特点

2.1.2.1进程条件

2.1.2.2方向

2.1.2.3同步性

2.1.2.4性能

2.2消息队列

2.2.1特点

2.2.1.1方向

2.2.1.2同步性

2.2.1.3性能

2.3共享内存

2.3.1特点

2.3.1.1方向

2.3.1.2同步性

2.3.1.3性能

2.4套接字


前言:

上文【操作系统】进程(一)调度讲解了 进程++PCB的结构组织++ 、++资源分配++ 以及进程在cpu上 通过操作系统的++调度 实现并发执行++ 的效果,本文深入讲解 进程的内存管理进程间通信的相关知识


一、内存管理

1.映射访问

操作系统 为每个进程 都创建有:

  • 模局格式一样虚拟地址空间
  • 独属对应关系映射表

进程只能操作 直接的虚拟地址空间 经映射表映射着 间接访问 实际的物理内存 ,进程 在++自己的虚拟地址空间内 最大范围地访问 也不可能映射访问出 自己总的物理内存外面++


2.独立分布

每个进程的虚拟地址空间 整体映射出的 对应整体物理内存 都是完全互相隔离****的一块块

防崩溃

进程如果在自己的虚拟地址空间内 越界访问到 ++未申请开辟的虚拟空间++ 而造成进程崩溃时,只会破坏 该进程对应的物理内存,接着操作系统 对其进行资源回收,而其它进程的 虚拟空间和物理内存 都不受影响地 继续运行


二、通信

进程 在操作系统提供的特殊渠道独立置、取信息 来保持隔离地交流

1.独立性保障

  • 写进程 无法直接连续写入修改 读进程内存
  • 读进程 主动地收取数据 拥有 读取进来判断是否修改的权利

两进程 仍然互相保持着独立地 进行数据交流


2.方式

2.1管道

内核 将写进程写入的数据 复制到内核缓冲区 置放,再将其 复制到读进程中 收取(两进程是没有 内核的管道缓冲区映射关系的,无法通过 共享管道缓冲区内存 映射传输,所以只能通过 内核复制传输)

2.1.2特点
2.1.2.1进程条件

需要 有亲缘关系的 父子进程间通信


2.1.2.2方向

一个管道单向通信,得创建两个管道 才能实现双向通信


2.1.2.3同步性

数据是 按顺序先进 后才有出无边界的 字节流 ,先进再出 ++已保证 置取同步性++


2.1.2.4性能

两次内核复制 并且有阻塞等待 ,效率较,++适合少量数据传输++


2.2消息队列

写进程 按照特定格式(类型+数据) 将信息复制置入 操作系统维护的 邮箱队列 中,读进程 根据消息类型 从队列中 复制取出 属于自己的消息

2.2.1特点
2.2.1.1方向

双向通信


2.2.1.2同步性

消息是 按顺序先进 后才有出有格式、有边界的 结构化数据块 ,先进后出 ++已保证 置取同步性++


2.2.1.3性能

两次内核复制 并且有阻塞等待 ,效率较,++适合少量数据传输++


2.3共享内存

操作系统 划出一块物理内存 分别额外映射到 两进程的虚拟地址空间 中,两进程 便能直接映射到 此共享物理内存上 进行置放、收取数据 完成独立隔离地交流

2.3.1特点
2.3.1.1方向

双向通信


2.3.1.2同步性

因为读写两进程 可不按先后顺序地 映射到 操作获取 数据 ,所以需要使用++信号量++ 或++互斥锁++ 来同步进程 对共享资源的访问


2.3.1.3性能

不需要 内核中转复制,进程 直接映射 操作获取数据 ,性能极,++能频繁交换大量数据++


2.4套接字

能用于 网络上 不同计算机的 进程间通信

相关推荐
位东风4 分钟前
【c++学习记录】状态模式,实现一个登陆功能
c++·学习·状态模式
Star Curry13 分钟前
【新手小白的嵌入式学习之路】-STM32的学习_GPIO 8种模式学习心得
stm32·嵌入式硬件·学习
邓不利东40 分钟前
Spring中过滤器和拦截器的区别及具体实现
java·后端·spring
DIY机器人工房1 小时前
代码详细注释:ARM-Linux字符设备驱动开发案例:LCD汉字输出改进建议开发板断电重启还能显示汉字,显示汉字位置自定义
linux·嵌入式·文件io·diy机器人工房
网硕互联的小客服1 小时前
服务器经常出现蓝屏是什么原因导致的?如何排查和修复?
运维·服务器·stm32·单片机·网络安全
witton1 小时前
Go语言网络游戏服务器模块化编程
服务器·开发语言·游戏·golang·origin·模块化·耦合
成都极云科技1 小时前
成都算力租赁新趋势:H20 八卡服务器如何重塑 AI 产业格局?
大数据·服务器·人工智能·云计算·gpu算力
喜欢吃豆1 小时前
从零构建MCP服务器:FastMCP实战指南
运维·服务器·人工智能·python·大模型·mcp
海外空间恒创科技1 小时前
恒创科技:香港站群服务器做seo站群优化效果如何
运维·服务器·科技
得物技术1 小时前
eBPF 助力 NAS 分钟级别 Pod 实例溯源|得物技术
linux