Giter Site home page Giter Site logo

aos's Introduction

AOS

osdev project for studying purposes. First target is pintos and second is run gcc at my os.

Under Developing

  1. Now palloc and malloc is implemented. But, palloc have to be changed to bitmap allocator.
  2. Start Implement ext2 File system!!! First to do! VFS.

Bugs

  1. While loading elf program, scheduling out triggers deadlock.
  2. After loading simple elf program, kernel panic due to general protection fault.

Basic Todo List

X86_64

  • GDT
  • TSS
  • LDT
  • Detecting CPU
  • Multitasking

Memory

  • Implement kmalloc
  • User, Kernel Pool
  • Bitmap Allocator
  • Buddy Allocator
  • Anonymouse page
  • Stack / Heap
  • MMAP
  • Swap in and out
  • Cpoy on write

User Process

  • Elf Loader
  • Dynamic Linker
  • Argument Passing
  • User Memory
  • System calls - Have to implement POSIX
  • Process Termination Messages
  • Safty
  • Extend File Descriptor
  • IPI

Thread

  • Implement Clock
  • Implement RTC
  • Basic Scheduler (FIFO)
  • Basic thread implementation

Sync

  • Spin lock
  • Mutex
  • Semaphore

Driver

  • Serial
  • Graphic Driver
  • Soudn Driver
  • APIC
  • ACPI
  • HPET
  • ATA
  • ATAPI, SATA, SATAPI
  • USB
  • NVME
  • PCI

Library

  • Small LibC
  • kernel stdlib
  • List, Queue
  • Bitmap
  • Hash
  • Btree+

Filesystem

  • Ext2 - under development
  • Ext4
  • VFS - under development
  • Journaling
  • RamDisk

ETC

  • PerCPU
  • Assert, Panic, Debug
  • Minish (Bash Like Shell)

aos's People

Contributors

ahn9807 avatar

Stargazers

shadow avatar Eason Wang avatar  avatar Sunghyun Kang avatar

Watchers

 avatar

Forkers

hbcbh1999

aos's Issues

Current Problems

  1. PMM is not working correctly. Free is not implemented and allocation less then 0x9c** is ignored.
  2. Keybard cannot get full keyboard strokes.
  3. Booting at real machine is not working...

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.