从一条指令到多个任务

系统实验室

让程序轮流使用 CPU。观察每台独立机器暂停、休眠、等待和恢复。

这是教学模型,不是完整操作系统或硬件模拟器。每个进程拥有自己的八个寄存器和 256 字节内存。每个模拟时刻,各核心执行一条指令;轮转调度为就绪进程提供有界执行机会。

程序与输入留在此浏览器中。无需账户、网络服务或学生记录。

模拟模式

改变模式、核心数或时间片会重置执行,保留进程程序和初始输入。显示速度只改变实际播放速度。一个模拟时刻为 10 毫秒。

就绪 / 已暂停 · 时刻 0 · 0 ms
核心 0

空闲

本轮已执行指令: 0

就绪队列: p1 · 中断队列: 空

添加进程

计数器、斐波那契和计算器在同一台经过测试的表情符号 CPU 中本地运行。可修改或添加自己的程序。实验室没有文件系统或网络模拟器。

唤醒等待的进程

队列为空的 INPUT 在同一 PC 等待,不消耗 CPU 周期。送入整数后,再使用单步或运行。SLEEP 让普通进程暂时释放核心,直到模拟唤醒时间。

进程控制块

进程控制块(PCB)记录继续执行所需的机器状态。打开内存摘要检查非零字节。内存属于该进程;数据栈与调用帧独立于内存网格。

p1: 计数器 就绪

PC: 0 · SP: 255 · 周期: 0 · Z=0 N=0 O=0

R0: 0R1: 0R2: 0R3: 0R4: 0R5: 0R6: 0R7: 0

数据栈: 空 · 调用帧: 空

独立内存: 0 / 256 非零字节
全部字节为零。
暂无输出。

调度器时间线

最近 80 个事件展示实际进程与核心分配、执行的源代码指令、输出和上下文变化。完整时间线保留在此本地模拟中,直到重置。

  1. 0 ms · 已添加进程 p1
    事件详情

    任务: p1 · 核心: — · 时刻: 0