littlebot
Published on 2025-04-03 / 0 Visits
0

【源码】基于C++的操作系统诊断Shell

项目简介

本项目是名为dash的系统诊断Shell,专为系统进程诊断和实验设计。它不仅支持基本的Shell操作,如管道、文件重定向、内存管理和进程管理,还提供了一系列自定义命令,用于获取系统信息和进行内存管理。

项目的主要特性和功能

  • 基本Shell操作:支持文件重定向和管道等常见操作。
  • 系统信息获取:可通过命令获取CPU信息、内存信息、内核版本和系统运行时间。
  • 内存管理:提供memman命令计算输入内存地址的页号和偏移量。
  • 进程管理:支持进程ID的分配和释放。
  • 自定义命令:提供cmdnmpidsystat等命令,用于获取进程信息和系统状态。

安装使用步骤

1. 编译项目

确保已下载项目源码文件,使用以下命令编译: bash make 此命令将生成dash可执行文件。

2. 清理编译文件

若需清理编译生成的文件,使用以下命令: bash make clean

3. 运行Shell

编译完成后,使用以下命令启动dash Shell: bash ./dash

4. 使用自定义命令

dash Shell中,可使用以下自定义命令: - cmdnm <process_id>:打印启动指定进程ID的命令。 - pid <command>:打印与指定命令名称关联的进程ID。 - systat:打印系统状态信息。 - memman <memory address>:计算输入内存地址的页号和偏移量。

5. 其他操作

dash Shell支持管道和文件重定向,类似BASH和其他Shell。但管道功能存在已知bug,可能导致Shell挂起。

已知问题

  • 偶尔出现backspace键映射问题。
  • 管道功能可能挂起。
  • 有时命令执行后Shell会锁定,需通过ctrl-c和重新启动dash解决。使用时需注意这些问题。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】