Tinyos

A simple operating system on x86
Alternatives To Tinyos
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Reactos13,137
5 hours ago151gpl-2.0C
A free Windows-compatible Operating System
Toaruos5,677
5 days ago40ncsaC
A completely-from-scratch hobby operating system: bootloader, kernel, drivers, C library, and userspace including a composited graphical UI, dynamic linker, syntax-highlighting text editor, network stack, etc.
Build3,266
5 hours ago68gpl-2.0Shell
Armbian Linux Build Framework
Lilith1,005
3 years ago8otherCrystal
x86-64 os made in crystal
Embox992
2 days ago188bsd-2-clauseC
Modular and configurable OS for embedded applications
Jingos829
2 years ago43gpl-3.0
Awesome - JingOS - The World’s First Linux-based OS design for Tablets
Mykernel676
9 months ago11gpl-2.0C
mykernel 2.0: Develop your own OS kernel by reusing Linux infrastructure, based on x86-64/Linux Kernel 5.4.34.
Rust_os662
2 months ago2otherRust
An OS kernel written in rust. Non POSIX
Rust Os Comparison549
2 months ago7
A comparison of operating systems written in Rust
Ghost531
a month ago6gpl-3.0C
Ghost, a micro-kernel based hobby operating system.
Alternatives To Tinyos
Select To Compare


Alternative Project Comparisons
Readme

TinyOS

学习用小型操作系统,运行在x86(32位)单核计算机上。Bootloader部分参考了《操作系统真象还原》一书,其他的部分就放飞自我、甚至可以说是非Unix-like了。


特性

  • [x] 分页内存管理
  • [x] 抢占式线程调度
  • [x] 信号量
  • [x] 进程资源管理
  • [x] 系统调用框架
  • [x] 键盘驱动程序
  • [x] 进程间消息传递
  • [x] 文件系统
  • [x] 用户界面
  • [x] 管道通信
  • [x] cat等基本应用程序,以及一个简易文本编辑器

编译

bochs的编译运行依赖于:

bochs 2.65+, gnu make, gcc, g++, ld, nasm, dd, bximage(通常随bochs一起安装)

要使用bochs运行该系统,可执行以下步骤:

  1. 跟据bochs所附带的显示插件,修改bochsrc.txt中的display_library
  2. 初次运行前,运行make fs初始化磁盘映像
  3. 运行make run以构建项目并启动虚拟机

由于磁盘映像创建工具bximage的命令参数格式曾发生变动,因此若无法正确初始化磁盘映像文件,可尝试运行bash setup.sh以解决问题。

交互

ss01 ss02

系统默认交互界面分为Output区域和Command区域,前者用于显示输出,后者用于输入命令。系统已经提供的命令包括:

  1. cd path : 修改当前工作路径
  2. clear : 清空Output区域
  3. exec path name ... : 从一个elf文件创建一个进程
  4. exit : 退出系统
  5. fg [pid] : 将一个后台进程切换到前台
  6. kill p1 [p2] ... : 销毁一些进程
  7. ps : 查看后台运行的进程列表

此外,还有以下应用程序可供使用:

  1. cat : 查看文件内容
  2. cp : 复制文件
  3. ed : 一个简单的文本编辑器
  4. file : 将管线输出保存到文件
  5. help : 查看命令/应用程序的帮助信息
  6. less : 以只读方式浏览文件内容
  7. ls : 查看当前工作路径下的文件列表
  8. pwd : 查看当前工作路径

输入help command/application可以查看命令或应用程序的用法。

Popular X86 Projects
Popular Operating System Projects
Popular Hardware Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
C
Kernel
Operating System
Cats
X86
Elf