Linux进程间通信(一).进程间通信概念&&环境切换(着重强调vscode)

一.理解层面

1.为何要有进程间通信?

2.什么是通信?

3.怎么通信?

进程间通信的本质:先让不同的进程,**先看到同一份资源("内存"),**然后才有通信的条件。

同一份资源绝对不能由任何一个进程提供!因为进程间具有独立性 ,要是这个进程提供了资源,那另一个进程就看不到了。那么由谁提供呢?答案是OS !为了实现资源的创建,销毁等操作,需要提供系统调用 。既然要系统调用,就需要提供对应的OS接口,这些接口在设计时需要保证统一性,这样跨平台,跨系统的通信才更为方便。既然有统一,就需要去遵循一种标准。

4.具体的通信方式

管道

• 匿名管道pipe

• 命名管道
SystemVIPC

• SystemV消息队列

• SystemV共享内存

• SystemV信号量
POSIXIPC

• 消息队列

• 共享内存 • 信号量

• 互斥量

• 条件变量

• 读写锁

后面的文章将仔细讲解这些通信方式。

5.vscode的插件的下载和配置

①.Remote - SSH

在左边菜单栏这个地方可以找到插件:

我们做的是远程开发,在vs本地写好的代码,会被同步到自己的云服务器上去,这样需要用到链接云服务器的插件:

接下来讲讲如何配置:

Ⅰ.找到云服务器的IP,将其拷贝下来。

Ⅱ.点击加号,在框内输入ssh+用户名+@+IP并回车

Ⅲ.选择配置文件

右下角出现已添加主机,就说明添加成功了。

Ⅳ.输入服务器密码

这样就是链接成功:

Ⅴ.在打开文件夹中选定指定文件,再输入一次密码,就可以打开云服务器上的文件。

Ⅵ.想要做开发,就再对应目录下创建.c/.cpp文件:

写完代码后,按ctrl + s,就可以将代码同步到远端服务器上了!

如果要在vscode上编译,这怎么实现呢?

答案是在对应目录下创建makefile文件,并在内部写编译链接的指令,然后Ctrl +~,调出vscode对应的xshell,然后在命令行上,就可以用指令编译了。

②.其余插件

在vs上想要调试代码,可以安装GDB Debug。但是由于笔者的服务器是土豆服务器,用这个插件调试会卡死,还是建议使用cgdb+.exe。

这个是改变文件图标的。

相关推荐
在角落发呆1 小时前
工具配置备份步骤:从手动备份到自动化方案
运维·windows·自动化
_upupup2 小时前
Linux的调试工具——gdb/cgdb
linux·服务器
百度一下吧2 小时前
Nginx 使用手册:从安装配置到实战部署
运维·nginx
JeJe同学3 小时前
Docker镜像导入、容器启动
linux·运维·docker
Jason_zhao_MR3 小时前
Linux与实时控制如何兼得
linux·嵌入式硬件·机器人·工业控制
回眸&啤酒鸭3 小时前
【回眸】自动化白盒测试落地实战指南
运维·自动化·log4j
闲云野鹤在人间4 小时前
MySQL|从理论、安装、备份到主从复制、MHA高可用详解
linux·运维·数据库·mysql·云计算
一个风轻云淡5 小时前
GCC 和 GDB命令简单解读
java·linux·前端
H.莓飛5 小时前
【数据结构】二叉树_OJ题
linux·开发语言·数据结构·算法
资料库015 小时前
Linux 8个常见运维故障排查
java·linux·运维