Files
blackbird/lci
2026-08-02 20:15:07 +08:00
..
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00
2026-08-02 20:15:07 +08:00

进程机器(PMC)

这是一个可以创建、管理子进程以及模块的程序。

pmc是一个什么项目?

这是一个可扩展的模块,可以在文件夹下建立单独的模块,pmc核心模块可以托管运行这些模块。

为什么要做一个这样的项目?

2024年的时候,我想做一个树莓派机器人,准备用python来写控制程序,可是当时python的多线程能力较弱,所以想到使用子系统,就自己写了一个进程托管程序

项目的文件结构是怎样的?

users用户可以在目录下创建子模块,extra下面还有一些额外的模块。

请留意模块的README文件

如何托管外部模块

编辑启动列表程序,常为init.txt

PMC的安装方式

# 1.安装依赖
sudo apt update
sudo apt install git g++ make
#sudo apt install python3 python3-pip python3-venv
#sudo dnf install python3-virtualenv
sudo apt install libboost-all-dev
#sudo apt install libssl-dev
#sudo apt install cimg-dev
#sudo apt install libcurl4-openssl-dev
#sudo apt install libcurl4-gnutls-dev
#sudo apt install libargs-dev
#sudo apt install libcpp-httplib-dev

2. 创建项目
git clone https://github.com/gopsc/pmc
cd pmc  # 这是pmc模块
make pmc
#sudo make install

加密通信机制(废弃)

PMC在启动时生成一个AES密钥,然后用一个RSA公钥将其加密发送给访问者。

然后访问者与客户端之间的交流全部用此AES密钥加密

如何使用并发机器运行程序

首先应该在模块中创建一个启动脚本,脚本中应该完成工作目录的切换、虚拟环境的激活,以及程序的启动。

需要创建启动脚本(废弃)

# _run.sh
# 启动脚本 - 示例
# 需要执行权限

#!/bin/bash

# 切换工作目录
cd "$(dirname "$0")" || exit

# 准备工作(安装依赖)
#bash ./_set.sh

# 准备工作(比如激活虚拟环境)
#source ./.env/bin/activate

# 执行程序前一定要加exec 否则杀不死
exec python main.py