Coder Social home page Coder Social logo

wangyx0055 / os-one Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ibreaker/os-one

0.0 1.0 0.0 4.07 MB

一个自制的树莓派操作系统

Home Page: http://os.0x7c00.cn

License: GNU General Public License v3.0

Makefile 1.60% C 77.98% C++ 7.16% Objective-C 2.49% Assembly 5.75% Logos 5.01%

os-one's Introduction

OS One

一个自制的树莓派操作系统, OS one 这个名字来自于电影 《Her》

特性:

  1. 提供GPIO处理函数.
  2. GUI界面,有窗体demo, 窗体可对鼠标操作做出相应.
  3. 默认分辨率 1440 × 900 .
  4. 可显示bmp 24位色(true color)图片.
  5. 支持鼠标键盘输入设备.
  6. 多任务,默认最多16个任务.
  7. 时间片轮转调度.
  8. 任务间通信
  9. 任务阻塞, 挂起
  10. 支持动态申请内存.
  11. 系统最多支持255个timer定时器
  12. 支持UART通信

编译:

硬件: Raspberry Pi B+ (其他版本树莓派没有测试)
Host : Linux version 3.13.0-44-generic (buildd@lamiak) #73-Ubuntu SMP Tue Dec 16 00:22:43 UTC 2014
工具链arm-none-eabi- V4.8.2

###kernel.img
make = make kernel.img -编译最终产生的 kernel.img
make clean -清理项目
make install -将kernel.img 复制到sd卡, 复制之前确认请修改Makefile里的设备名称和路径

###minocom for OS One 树莓派输入设备(鼠标键盘)用串口通信,所以必须运行串口程序
make,然后make install <千万不要./configure !!!>

使用:

  1. 接上树莓派串口线, 两个LED灯分别连接到GPIO16和GPIO19。这两个等会显示内核状态信息(不接这两个LED不影响系统运行)
  2. 编译运行 minocom for OS One ,
  3. 编译kernel.img 并复制到sd卡,覆盖原来的kernel.img (原来的kernel.img 要备份)
  4. 加电运行
  5. 可以试着移动鼠标,拖动窗口
  6. 屏幕左上角显示Task1 和 Task2 的通信状态
  7. 屏幕右上角显示四个Timer的状态
  8. 窗口显示kernel status 。 分别有任务栈适用情况,鼠标键盘状态,空闲堆内存大小
  9. 可以试着按键, 窗口上input status 中的key 会显示按键的ASCII码
  10. 移动鼠标, 单机右击窗口都有显示

已知漏洞:

##参考资料

  1. 《操作系统设计 Xinu方法》
  2. 《30天自制操作系统》
  3. 《嵌入式实时操作系统uc/os III》
  4. 《linux内核设计的艺术》
  5. 《Linux 0.01内和分析与操作系统设计》

项目主页OS One主页
github(国外) : https://github.com/iBreaker/OS-ONE.git
coding.net(国内)https://coding.net/breaker/OS-ONE.git

Breaker
[email protected]
2015-03-12 15:05:14

os-one's People

Contributors

ibreaker avatar

Watchers

wyx avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.