SynapseOS is a free and open source 64x operating system written in FASM and C

Overview

SynapseOS

SynapseOS is a free and open source 64x operating system written in FASM and C

Documentation

Documentation

Build

To build SynapseOS you need to download the build tools here

After you have downloaded the build tools, you need to install the WSL with the ubuntu image, after installing it, you need to write the following command in the ubuntu terminal and wait for the process to complete:

sudo apt update
sudo apt-get install grub-common
sudo apt-get install xorriso

Next, unpack the downloaded archive into a separate folder and run one of the files, after starting they will ask you to provide the path to the project, you will just need to transfer the required folder to the console and press enter


SynapseOS

SynapseOS это бесплатная open source 64x операционная система написанная на FASM и СИ

Документация

Документация

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

Чтобы собрать систему вам понадобится скачать инструметы для сборки здесь

После ттого как вы скачали инструменты для сборки вам нужно будет установить WSL с официального сайта и установить на него образ ubuntu. Затем вам потребуется запустить WSL и выполнить следующие команды:

sudo apt update
sudo apt-get install grub-common
sudo apt-get install xorriso

Далее распакуйте скачаный архив с инструментами для сборки и запустите один из файлов. После запуска у вас откроется командная строка где потребуется ввсети путь до места сборки/запуска и нажать Enter

Comments
  • Не отображается введённый в консоли текст

    Не отображается введённый в консоли текст

    Описание Не отображается введённый в консоли текст, в логах присутствует ошибка линковки: ld.lld: error: cannot open ./bin/asm.o: No such file or directory

    Воспроизведение

    1. Скачать репозиторий
    2. Собрать систему командой python3 build.py

    Ожидаемое поведение Что вы ожидали увидеть?

    Скриншоты image

    Среда:

    • os: Garuda Linux x86_64
    • qemu: 7.0.0
    • lld: 14.0.6
    • clang: 14.0.6 Target: x86_64-pc-linux-gnu Thread model: posix

    Qemu.log

    Ошибка Нужна помощь 
    opened by Domaman202 3
  • Не стартует ОС в VMWare Workstation 12

    Не стартует ОС в VMWare Workstation 12

    При старте ядра, успевает обработать информацию о оперативной памяти. Пишет установлено: 167892 KB -> 163 MB А доступно: 36414 KB -> 35 MB В виртуальной машине установлено значение в 36 MB

    После определения режима ОЗУ, выскакивает ошибка виртуальной машины и гласит оно следующие: Произошел сбой виртуального процессора что вызвало выключение. Если эта ошибка произошла за пределами виртуальной машины, это вызвало бы физическую машину для перезагрузки. Выключение может быть вызвано неправильной настройкой виртуальной машины, ошибка в гостевой системе, или проблема в VMware Workstation.

    Хост: OS: Windows 8.1 x64 RAM: 4 GB DDR2

    Виртуалка: OS: SynapseOS v0.2.12 (Dev) (unstable) RAM: 36 MB CPU: 1 Core HDD: 8 GB

    Ошибка 
    opened by pimnik98 2
  • Временный заместитель

    Временный заместитель

    Я на 5 дней уезжаю в лагерь. Буду без интернета. Не могу временно вносить изменения. Я очень волнуюсь за состояние проекта. Надеюсь кто-нибудь кинет pull-request или баг репорт.

    Я подготовил пару постов. Они будут опубликованы по таймеру.

    Нужна помощь 
    opened by 0Nera 2
  • Ура! Ура! Ура! Программы снова работают!

    Ура! Ура! Ура! Программы снова работают!

    Проверено:

    • ./hi - все в порядке
    • ./chronicles - все в порядке
    • ./melody - все в порядке
    • ./NeraMath - !!! виснет при вводе !!!
    • ./snake - работает
    • ./vggi - просто выходит с кодом 0
    opened by NDRAEY 1
  • Апгрейд в системе сборки: Компиляция только измененных файлов

    Апгрейд в системе сборки: Компиляция только измененных файлов

    Каждый раз когда происходит сборка ядра, собираются абсолютно все файлы, даже если они не были изменены. Но теперь если изменить какой-нибудь сишный файл, то компилируется только он, а линковаться будут все файлы.

    opened by NDRAEY 1
  • Не запускается.

    Не запускается.

    Описание Сбой при запуске.

    Воспроизведение Шаги воспроизведения ошибки:

    1. Скачать репозиторий
    2. Собрать систему командой python3 build.py

    Ожидаемое поведение Работа как 2 дня назад.

    Скриншоты image

    Среда:

    • os: Garuda Linux x86_64
    • qemu: 7.0.0
    • lld: 14.0.6
    • clang: 14.0.6 Target: x86_64-pc-linux-gnu Thread model: posix

    Qemu.log

    Ошибка Легко 
    opened by Domaman202 1
  • Ошибки STDIO

    Ошибки STDIO

    Описание Баг ведет себя так: при запуске программ hi программа просто выходит с кодом 0 и сообщает об ошибке что произошла попытка удалить страницу памяти. И при запуске программы char система зависает "намертво".

    Как повторить?

    1. Скачать репозиторий
    2. Собрать систему командой python3 build.py

    Скриншоты NoPrints

    Утилиты сборки

    • OS: Ubuntu 20.04.4 LTS 64-bit
    • QEMU: 7.0.0
    • ld.lld: 10.0.0
    • clang: Ubuntu clang version 12.0.0-3ubuntu1~20.04.5 Target: x86_64-pc-linux-gnu Thread model: posix
    Ошибка 
    opened by NDRAEY 1
  • Обновлен сайт

    Обновлен сайт

    Теперь кнопка Скачать работает:

    Парсит с github последний релиз:

    let download = document.getElementById('download');
    download.innerText = "Загрузка";
    
    fetch(`https://api.github.com/repos/0Nera/SynapseOS/releases`).then(data => {
        data.json().then(json => {
            fetch(json[0].assets_url).then(adata => {
                adata.json().then(ajson => {
                    let downloadHref = ajson[0].browser_download_url;
                    console.log(downloadHref);
                    download.href = downloadHref;
                    download.innerText = "Скачать";
                });
            });
        });
    });
    

    image


    Обновил favicon:

    image image

    opened by Agzam4 1
  • Kernel Update v0.0.2 by pimnik98

    Kernel Update v0.0.2 by pimnik98

    Обновления ядра 0.0.2 [*] Добавлено base64encode / base64decode [*] Добавлены функции str_split (для разделения строк) и str_cdsp (для подсчета количества строк, которые могут быть разделены) [] Обновлена функция для определния наличия строки в тексте, а также добавлена функция-зеркало, только возращает bool [] Переписан shell.c - Теперь работает через split [] shell.c - все команды работают через shell [] shell.c - для запуска команды использовать run пример run Russia или просто название программы Russia. Учтите, что запуск программы выполняется с папки в которой вы находитесь. [] shell.c - добавлена функция hostname - без аргументов выводит название пк, если указать название то сменит его [] shell.c - добавлена функция whoami - выводит имя текущего пользователя [] kernel.c - улучшена обработка kCMD - переведен на split [] kernel.c - добавлено больше вариаций для загрузки [*] ну и прочие

    Все доступные вариации загрузки:

    • --bootscreen=minimal - Включает BootScreen в режиме логгирования
    • --bootscreen=light - Светлая тема для BootScreen
    • --bootscreen=dark - Темная тема для BootScreen
    • --tshell - После загрузки, вы сразу попадете в TShell
    • --nortl8139 - Отключает проверку иницилизации драйвера Realtek RTL8139

    Следуют учесть, что некоторые параметры переопределяют друг друга, тот что в конце, тот и главнее. И все параметры можно комбинировать, просто добавите их после параметра ядра. Вот обычный вариант: multiboot /boot/kernel.elf Вариант с параметрами: multiboot /boot/kernel.elf --nortl8139 --bootscreen=minimal

    Инновация 
    opened by pimnik98 0
  • Kernel Upgrade v0.0.1 by pimnik98

    Kernel Upgrade v0.0.1 by pimnik98

    Обновления aka Фичи:

    • Появился BootScreen - Красивый запуск ОС, также поддерживает режим минимальной загрузки (загружается в виде лога на экране)
    • Получение аргументов с grub
    • В тестовом режиме обработчик команд kCMD (полученные от grub) (нестабильно работает)
    • Режим блокировки печати в tty
    • Поправлен grub и добавлены новые варианты загрузки ОС
    • При загрузке отображается прогресс-бар в BootScreen
    • BootScreen поддерживает два режима работы. и прочие
    Инновация 
    opened by pimnik98 0
  • Ошибка. ATA вызывает General Protection Fault

    Ошибка. ATA вызывает General Protection Fault

    Описание Ошибка. ATA вызывает General Protection Fault

    Воспроизведение Шаги воспроизведения ошибки:

    1. Собрать ядро с драйвером ATA
    2. Запустить в QEMU
    3. Получить ошибку

    Ожидаемое поведение Нормальная загрузка ядра

    Скриншоты Если возможно, прикрепите сюда фотографии

    Дополнительная информация Пора исправлять варнинги

    Ошибка 
    opened by 0Nera 0
  • Стандартная библиотека

    Стандартная библиотека

    Стандартные

    • [ ] assert.h
    • [ ] complex.h
    • [ ] ctype.h
    • [ ] errno.h
    • [ ] fenv.h
    • [ ] float.h
    • [ ] inttypes.h
    • [x] iso646.h
    • [ ] limits.h
    • [ ] locale.h
    • [x] math.h
    • [ ] setjmp.h
    • [ ] signal.h
    • [ ] stdalign.h
    • [ ] stdarg.h
    • [ ] stdatomic.h
    • [ ] stdbool.h
    • [ ] stddef.h
    • [X] stdint.h
    • [x] stdio.h
    • [x] stdlib.h
    • [x] stdnoreturn.h
    • [x] string.h
    • [ ] tgmath.h
    • [ ] threads.h
    • [ ] time.h
    • [ ] uchar.h
    • [ ] wchar.h
    • [ ] wctype.h

    Только под SynapseOS

    • [ ] module.h
    • [ ] GUI.h
    • [ ] graphic.h
    • [x] sysapi.h
    • [ ] neuro.h
    • [ ] compiler.h
    • [ ] filesystems.h
    • [ ] crypto.h
    • [ ] asm.h
    Легко Нужна помощь 
    opened by 0Nera 4
Releases(latest-unstable)
It's a simple and free x86_64 architecture operating system created by one person, GoofOS started since 2022

This project is while developing... GoofOS GoofOS is a text operating system for x86 computers. About This is a 32 bit x86_64 graphical operating syst

null 3 May 1, 2022
Free,Open-Source,Cross-platform agent and Post-exploiton tool written in Golang and C++, the architecture and usage like Cobalt Strike

Khepri Free,Open-Source,Cross-platform agent and Post-exploiton tool written in Golang and C++ Description Khepri is a Cross-platform agent, the archi

Young 1.4k Jan 3, 2023
OpenTibiaBR - Canary Project is a free and open-source MMORPG server emulator written in C++.

OpenTibiaBR - Canary Project is a free and open-source MMORPG server emulator written in C++. It is a fork of the OTServBR-Global project. To connect to the server and to take a stable experience, you can use our own client or tibia client and if you want to edit something, check our customized tools.

OpenTibiaBR 104 Dec 28, 2022
Sourcetrail - free and open-source interactive source explorer

Sourcetrail Important Note: This project was archived by the original autors and maintainers of Sourcetrail by the end of 2021. If you want to know mo

Coati Software 13.1k Jan 1, 2023
Hobbyist Operating System targeting x86_64 systems. Includes userspace, Virtual File System, An InitFS (tarfs), Lua port, easy porting, a decent LibC and LibM, and a shell that supports: piping, file redirection, and more.

SynnixOS Epic Hobby OS targeting x86_64 CPUs, it includes some hacked together functionality for most essential OSs although, with interactivity via Q

RaidTheWeb 42 Oct 28, 2022
Operating system project - implementing scheduling algorithms and some system calls for XV6 OS

About XV6 xv6 is a modern reimplementation of Sixth Edition Unix in ANSI C for multiprocessor x86 and RISC-V systems.

Amirhossein Rajabpour 22 Dec 22, 2022
🏢 A bold, unapologetic, and honest operating system written in modern C

A bold, unapologetic, and honest operating system written in modern C About Striking modernist shapes and bold use of modern C are the hallmarks of BR

Brutal 929 Jan 5, 2023
Slops (SLow OPerating System) | An hobby OS written in C and assembly

slops: SLow OPerating System slops is a simple unix-like operating system, written in assembly and C. BUILD ISO IMAGE 1. sync limine git submodule upd

Slops 5 Dec 22, 2021
Slops (SLow OPerating System) An hobby OS written in C and assembly

slops: SLow OPerating System slops is a simple unix-like operating system, written in assembly and C. How to use Build iso image 1. build the toolchai

null 3 Jan 20, 2022
KGKernel1 is an operating system written in C

Kernel commands echo: echo 'String' clr shellcolor: shellcolor colorcode cursorset: cursorset cursorcode reboot shutdown calc cursorcodes cursorcode 0

null 25 Nov 22, 2021
Tisix is an operating system written in C++17

Tisix Tisix is an operating system written in C++17 (I try not to overuse it though). Features Tiny microkernel (~2k LoC). Rich and modern C++ freesta

Abbix 15 Nov 27, 2022
A Modern Operating System Written in C++ From Scratch!

README Features Long Mode (64-bit) OS Higher Half Kernel Stack Based - Page Frame Allocator (PMM) with O(1) time complexity Virtual Memory Manager (VM

null 10 Jan 2, 2023
Khepri is a Cross-platform agent, the architecture and usage like Coblat Strike but free and open-source.

Khepri Free,Open-Source,Cross-platform agent and Post-exploiton tool written in Golang and C++ Description Khepri is a Cross-platform agent, the archi

Young 1.4k Dec 30, 2022
SDR++ is a cross-platform and open source SDR software with the aim of being bloat free and simple to use.

SDR++ is a cross-platform and open source SDR software with the aim of being bloat free and simple to use.

AlexandreRouma 2.2k Jan 7, 2023
Free and Open Source API and drivers for immersive technology.

OpenHMD This project aims to provide a Free and Open Source API and drivers for immersive technology, such as head mounted displays with built in head

null 1.1k Dec 28, 2022
The FLIP Fluids addon is a tool that helps you set up, run, and render high quality liquid fluid effects all within Blender, the free and open source 3D creation suite.

FLIP Fluids The FLIP Fluids addon is a tool that helps you set up, run, and render liquid simulation effects. Our custom built fluid engine is based a

Ryan Guy 1.4k Dec 22, 2022
"Sigma File Manager" is a free, open-source, quickly evolving, modern file manager (explorer / finder) app for Windows, MacOS, and Linux.

"Sigma File Manager" is a free, open-source, quickly evolving, modern file manager (explorer / finder) app for Windows, MacOS, and Linux.

Aleksey Hoffman 1.1k Dec 31, 2022
Free and open source CSGO hack

Csgo Very short and commented source aimed for legit gameplay Information In development, not every feature may work perfectly. Features: BunnyHop Cha

Bartis 129 Dec 30, 2022
A free and open-source cross-platform application to control your Philips hue compatible lights💡

?? OpenHue ?? A cross platform application to control your Philips hue compatible lights. licensed under the gpl 3.0 license. Currently in super early

BOB450 4 Dec 28, 2022