Git Product home page Git Product logo

tinix's Introduction

Tinix

Forked from tinixdev一个迷你型的操作系统。

作者博客,我只是搬运工。 本工程只能在linux下编译,如果要在windows下编译,请下载作者原代码。

已经修改了makefile,现在可以在32位/64位系统中编译代码了。

目录

|-- floppy.img                                        #最终完成的软盘镜像
|-- tinix                                             #内核目录
|   |-- boot                                          #内核加载器目录
|   |-- kernel                                        #内核代码目录
|   |   |-- dev                                       #设备驱动目录
|   |   |-- fs                                        #文件系统目录
|   |   |-- include                                   #头文件
|   |   |-- init                                      #内核代码入口
|   |   |-- kernel                                    #任务管理、陷阱门、时钟、系统调用等
|   |   |-- lib                                       #内核lib
|   |   |-- mm                                        #内存管理目录
|   |   `-- Makefile.linux                            #用于linux下编译的makefile
|   |-- compile.sh                                    #编译并运行
|   |-- build.sh                                      #编译生成
|   |-- clean.sh                                      #清理
|   |-- run.sh                                        #用qemu运行操作系统
|   |-- loader.map                                    #内核加载器符号文件
|   |-- system.map                                    #内核符号文件
|   |-- system.idc                                    #用于IDA的内核符号脚本
|   |-- map2idc.pl                                    #生成IDA脚本的perl脚本
|   `-- oskernel                                      #最终编译出的内核镜像
`-- user                                              #用户态代码目录
    |-- app                                           #用户态应用源代码
    |-- include                                       #用户态头文件
    |-- lib                                           #用户态lib函数源代码
    |-- Makefile.eval                                 #用户态应用的几个makefile
    |-- Makefile.pi
    |-- Makefile.queens
    |-- Makefile.sh
`-- objs                                              #避免重新编译的obj文件

构建工具

sudo apt install make gcc binutils cgdb qemu
sudo ln -s /usr/bin/qemu-system-i386 /usr/bin/qemu

编译并运行

先chmod +x

./build.sh
./run.sh
./clean.sh

tinix's People

Contributors

bajdcc avatar tinixos avatar

Watchers

 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.