Skip to content

Latest commit

 

History

539 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PureC OS

PureC OS Logo

PureC OS - это простая 64-битная операционная система, написанная на C и ассемблере x86_64 И немного C++20. Она включает в себя

  • UserSpace
  • Интернет поддержка только в VirtualBox Инетрфейс только Intel Pro 100 82540EM
  • Файлловую систему FAT32 и VFS и EXT2
  • Реализованы драйверы экрана, клавиатуры и диска
  • Реализованы драйверы USB
  • User Программы В Ring 3
  • У purec Syscall ~100
  • Начали Портировать TCC в PureC OS

Toolschain PureC OS

  • gcc (GCC) 16.2.1 20260810
  • g++ 16.2.1 20260810
  • nasm 3.02 compiled on Jun 30 2026
  • Limine 12.8.0
  • VirtualBox Version 7.2.16 r174877
  • Cross-Compiler x86_64-elf-gcc (GCC) 15.2.0

Сборка и запуск

Linux (Ubuntu)

На Ubuntu:

sudo apt update
sudo apt install make gcc g++ limine nasm

Если нет в репах (старый Ubuntu), то нужно установить limine вручную.

sudo apt install xorriso mtools
git clone https://github.com/limine-bootloader/limine.git --branch=v8.x-binary --depth=1
cd limine && make

Ставив Кросс-компилятор для x86_64

sudo apt install build-essential bison flex libgmp-dev libmpc-dev libmpfr-dev texinfo

# Качаем исходники

wget https://ftp.gnu.org/gnu/binutils/binutils-2.42.tar.gz
wget https://ftp.gnu.org/gnu/gcc/gcc-14.1.0/gcc-14.1.0.tar.gz

tar -xf binutils-2.42.tar.gz
tar -xf gcc-14.1.0.tar.gz

# Собираем binutils

mkdir build-binutils && cd build-binutils
../binutils-2.42/configure --target=x86_64-elf --prefix=/usr/local --with-sysroot --disable-nls --disable-werror
make -j$(nproc) && sudo make install
cd ..

# Собираем GCC

mkdir build-gcc && cd build-gcc
../gcc-14.1.0/configure --target=x86_64-elf --prefix=/usr/local --disable-nls --enable-languages=c,c++ --without-headers
make all-gcc -j$(nproc) && sudo make install-gcc
make all-target-libgcc -j$(nproc) && sudo make install-target-libgcc
Linux (Fedora) На Fedora: ```bash sudo dnf update --refresh sudo dnf install make gcc g++ limine nasm ``` Если нет в репах (старый Fedora), то нужно установить `limine` вручную.
sudo dnf install xorriso mtools
git clone https://github.com/limine-bootloader/limine.git --depth=1
cd limine && make

Ставив Кросс-компилятор для x86_64 Fedora

sudo dnf install gcc gcc-c++ make bison flex gmp-devel libmpc-devel mpfr-devel texinfo

# Качаем исходники
wget https://ftp.gnu.org/gnu/binutils/binutils-2.42.tar.gz
wget https://ftp.gnu.org/gnu/gcc/gcc-14.1.0/gcc-14.1.0.tar.gz

tar -xf binutils-2.42.tar.gz
tar -xf gcc-14.1.0.tar.gz

# Собираем binutils
mkdir build-binutils && cd build-binutils
../binutils-2.42/configure --target=x86_64-elf --prefix=/usr/local --with-sysroot --disable-nls --disable-werror
make -j$(nproc) && sudo make install
cd ..

# Собираем GCC
mkdir build-gcc && cd build-gcc
../gcc-14.1.0/configure --target=x86_64-elf --prefix=/usr/local --disable-nls --enable-languages=c,c++ --without-headers
make all-gcc -j$(nproc) && sudo make install-gcc
make all-target-libgcc -j$(nproc) && sudo make install-target-libgcc
Linux (Arch)
sudo pacman -Syu

// Установить базовые зависимости
sudo pacman -S --needed base-devel git

// Установить зависимости
sudo pacman -S make gcc g++ limine nasm

Скачайте исходный код yay из официального репозитория AUR:

git clone https://aur.archlinux.org/yay.git

Переход в директорию и сборка

Перейдите в папку с клонированным проектом и запустите сборку и установку пакета:

cd yay
makepkg -si

Проверьте установку yay:

yay -V

Собераем крос компилятор для x86_64

yay -S x86_64-elf-gcc x86_64-elf-binutils

Ставим VirtualBox

Установка пакетовОбновите систему и установите основной пакет:

sudo pacman -S virtualbox

Выберите хост-модули ядра

В зависимости от вашего ядра (обычно используется virtualbox-host-modules-arch для стандартного ядра Linux или virtualbox-host-dkms, если вы используете кастомное или ZEN-ядро):

sudo pacman -S virtualbox-host-modules-arch

Настройка после установки

Добавьте вашего пользователя в группу vboxusers, чтобы получить доступ к USB-устройствам:

sudo usermod -aG vboxusers $USER

Загрузите модули ядра (или перезагрузите компьютер):

sudo modprobe vboxdrv

Demo Foto

Boot Screen

Perc OC Boot

UserSpace

Perc OC UserSpace

Systemsetings

Perc OC Systemsetings

Network

Perc OC Network

Filesystem

Perc OC Filesystem

Hex Editor

Perc OC Hex

System Monitor

Perc OC SystemMonitor

About

PureC OS 64-bit system with Fat32 USB Stack, etc.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages