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。

这个是改变文件图标的。

相关推荐
润滑卫士19 小时前
工业油液在线监测系统架构:传感网络、数据采集与通讯协议设计
运维
红红谈说19 小时前
定时发布关机就停,本地定时任务的补跑策略怎么设计?
运维·服务器·定时任务·本地调度·补跑策略·幂等互斥·执行记录
宁波阿成20 小时前
CentOS 7 环境下 Tomcat 8.5 升级至 9.0.123 操作总结
linux·centos·tomcat
4SAPI20 小时前
企业级大模型工作流基础设施选型指南:4SAPI、硅基流动与 OpenRouter 的架构权衡
运维·人工智能·架构·自动化
2401_8685347820 小时前
论纯IPv6(IPv6-Only)演进与地址规划设计与实施
服务器·网络
幽默小吴20 小时前
nginx篇
运维·nginx
爱和冰阔落20 小时前
【Linux网络】UDP 服务器怎么写?从 socket、bind 到 recvfrom/sendto,手写完整回显服务器
linux·运维·服务器·网络
maochongsandai11020 小时前
Centos上运行docker应用命令汇总
linux·docker·centos
知已难寻20 小时前
00 · OpenStack 总纲——从云计算到 OpenStack 全景
运维·服务器·云原生·云计算·负载均衡·openstack·perl
小白的码BUG之路20 小时前
K8S -- 集群搭建环境基础
java·服务器·kubernetes