Skip to content

OrangeYYC/TinyOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TinyOS 操作系统课程设计

华中科技大学 网络空间安全学院 2023 操作系统课程设计 by OrangeYYC

主要功能

  1. 实现保护模式初始化程序,能将CPU带入保护模式,实现不同权限级别的代码跳转。在屏幕输出相应的字符串指示程序工作情况状态。

  2. 定义多个任务,每个任务的优先数不同,在时钟中断服务程序中,采用“优先数调度算法”实现多个任务的切换。

    • 每个任务都是死循环,循环输出字符串
    • 每个任务字符显示时长与优先级一致(优先数大,运行机会多,显示时长就大)
    • 使用时钟中断服务程序(选择任务,切换任务)

构建与运行

运行项目

运行项目需要在 Linux 系统下使用 bochs 模拟器,测试环境为 bochs 2.6.11 版本,在项目目录下使用命令 make start 即可运行。

构建项目

构建项目需要使用 GCC 编译器及其链接器 LD,测试环境为 gcc 9.4.0 版本。在构建前使用 bximage 工具创建 10M 大小、扇区为 512 字节的硬盘,命名为 TinyOS.img,放置在 bin/ 目录下,注意需要手工写入 0xaa55 标志。(也可以直接使用项目中已有的镜像文件)。之后在目录下使用命令

mkdir build
make

即可构建项目。

Releases

No releases published

Packages

No packages published