Uinxed-Kernel
Uinxed is a monolithic UNIX-like x86_64 kernel, written from scratch in C. It boots via the Limine bootloader, supports SMP, and implements a Linux-compatible syscall ABI (Linux 6.12 x86_64 numbering, syscall 0-462). The kernel emphasizes modern scheduler design (EEVDF), comprehensive memory management including swap, and a full VFS/driver stack.
File Explorer
Download Latest Version (.zip)- main.yml
- bootx64.efi
- background.jpg
- limine-bios-cd.bin
- limine-bios.sys
- limine-uefi-cd.bin
- limine.conf
- linker.ld
- ovmf-code.fd
- limine_module.c
- limine_request.c
- Uinxed-Kernel Project Outline.docx
- device.c
- atapi.c
- ide.c
- ahci.c
- satapi.c
- blockdev.c
- gendisk.c
- partition.c
- nvme.c
- i2c-core.c
- pci.c
- virtpci.c
- tpm.c
- tpm_crb.c
- tpm_tis.c
- tpm_vfs.c
- chrdev.c
- kmsg.c
- mem.c
- acpi.c
- apic.c
- event.c
- facp.c
- drm_auth.c
- drm_drv.c
- drm_file.c
- drm_init.c
- drm_ioctl.c
- drm_print.c
- drm_vblank.c
- drm_framebuffer.c
- drm_gem.c
- drm_atomic.c
- drm_atomic_uapi.c
- drm_connector.c
- drm_crtc.c
- drm_dpms.c
- drm_edid.c
- drm_encoder.c
- drm_mode_config.c
- drm_mode_object.c
- drm_modes.c
- drm_plane.c
- drm_property.c
- drm_hashtab.c
- drm_idr.c
- drm_modeset_lock.c
- drm_rect.c
- simpledrm.c
- drm_test.c
- virtgpu.c
- virtgpu_cmd.c
- virtgpu_gem.c
- virtgpu_kms.c
- virtgpu_vq.c
- fbcon.c
- klogo.c
- video.c
- gpu_drivers.c
- evdev.c
- evdev_queue.c
- keyboard.c
- mouse.c
- ps2.c
- ps2_keyboard_protocol.c
- ps2_mouse_protocol.c
- e1000.c
- rtl8139.c
- rtl8169.c
- parport.c
- parport_pc.c
- ppdev.c
- audio.c
- hda.c
- sb16.c
- speaker.c
- hpet.c
- rtc.c
- tsc.c
- pty.c
- 8250.c
- serial_core.c
- console.c
- tty_core.c
- tty_io.c
- vt.c
- vt_ansi.c
- hid.c
- hid_parser.c
- storage.c
- storage_protocol.c
- usb_core.c
- ehci.c
- ohci.c
- uhci.c
- xhci.c
- xhci_ring.c
- host.c
- cgroupfs.c
- fs_txn.c
- inotify.c
- superblock.c
- vfs.c
- cpio.c
- devtmpfs.c
- alloc.c
- dir.c
- extents.c
- extfs.c
- extfs_jnl.c
- inode.c
- super.c
- diskio.c
- fatfs_vfs.c
- fattime.c
- ff.c
- ffsystem.c
- ffunicode.c
- volpart.c
- isofs_vfs.c
- rock.c
- util.c
- ntfs_vfs.c
- procfs.c
- block_sysfs.c
- dmi_sysfs.c
- drm_sysfs.c
- fb_sysfs.c
- i2c_sysfs.c
- input_sysfs.c
- kernel_sysfs.c
- mem_sysfs.c
- module_sysfs.c
- net_sysfs.c
- pci_sysfs.c
- rtc_sysfs.c
- sound_sysfs.c
- sysfs.c
- tpm_sysfs.c
- tty_sysfs.c
- usb_sysfs.c
- tmpfs.c
- cmos.h
- common.h
- cpuid.h
- dma.h
- fpu.h
- gdt.h
- idt.h
- smbios.h
- smp.h
- tss.h
- limine.h
- limine_module.h
- cgroup.h
- device.h
- atapi.h
- ide.h
- ahci.h
- satapi.h
- blockdev.h
- gendisk.h
- partition.h
- nvme.h
- i2c.h
- pci.h
- virtpci.h
- tpm.h
- chrdev.h
- acpi.h
- apic.h
- simpledrm.h
- virtgpu_cmd.h
- virtgpu_drv.h
- virtgpu_format.h
- virtgpu_gem.h
- virtgpu_kms.h
- virtgpu_vq.h
- drm.h
- drm_device.h
- drm_edid.h
- drm_fourcc.h
- drm_hashtab.h
- drm_idr.h
- drm_init.h
- drm_mode.h
- drm_modeset_lock.h
- drm_print.h
- drm_rect.h
- fbcon.h
- fbdev.h
- klogo.h
- video.h
- gpu_drivers.h
- evdev.h
- evdev_queue.h
- ps2.h
- ps2_keyboard.h
- ps2_mouse.h
- input_event.h
- e1000.h
- rtl8139.h
- rtl8169.h
- parport.h
- audio.h
- hda.h
- sb16.h
- speaker.h
- rtc.h
- tsc.h
- pty.h
- 8250.h
- serial_core.h
- console.h
- tty.h
- tty_core.h
- tty_driver.h
- vt_ansi.h
- usb_hid.h
- usb_storage.h
- usb.h
- ehci.h
- ohci.h
- uhci.h
- xhci.h
- host.h
- cgroupfs.h
- fs_txn.h
- inotify.h
- superblock.h
- vfs.h
- cpio.h
- devtmpfs.h
- extfs.h
- extfs_jnl.h
- fatfs_disk.h
- fatfs_vfs.h
- ff.h
- ffconf.h
- ffdiskio.h
- isofs.h
- rock.h
- ntfs_vfs.h
- procfs.h
- block_sysfs.h
- dmi_sysfs.h
- drm_sysfs.h
- fb_sysfs.h
- i2c_sysfs.h
- input_sysfs.h
- kernel_sysfs.h
- mem_sysfs.h
- module_sysfs.h
- net_sysfs.h
- pci_sysfs.h
- rtc_sysfs.h
- sound_sysfs.h
- sysfs.h
- tpm_sysfs.h
- tty_sysfs.h
- usb_sysfs.h
- tmpfs.h
- epoll.h
- futex.h
- pipe.h
- posix_mq.h
- sysv_ipc.h
- cmdline.h
- debug.h
- ringlog.h
- symbols.h
- interrupt.h
- elf.h
- module.h
- module_elf.h
- timer.h
- config.h
- errno.h
- printk.h
- termios.h
- uinxed.h
- writer.h
- bmp.h
- fonts.h
- gfx_proc.h
- kobject.h
- circular_list.h
- intrusive_list.h
- singly_list.h
- math.h
- stdarg.h
- stdbool.h
- stddef.h
- stdint.h
- stdlib.h
- string.h
- crc32c.h
- gzip.h
- rbtree.h
- utflib.h
- alloc.h
- bitmap.h
- buddy.h
- frame.h
- heap.h
- hhdm.h
- page.h
- page_walker.h
- pagecache.h
- slab.h
- swap.h
- inet.h
- endian.h
- ethernet.h
- net.h
- netdev.h
- packet.h
- pbuf.h
- arp.h
- dhcp.h
- icmp.h
- ipv4.h
- icmpv6.h
- ipv6.h
- ndp.h
- netlink.h
- tcp.h
- udp.h
- socket.h
- elf_loader.h
- file_status.h
- kthread.h
- process.h
- ptrace.h
- sched.h
- task.h
- uaccess.h
- seccomp.h
- rt_mutex.h
- signal.h
- spin_lock.h
- eventfd.h
- fcntl.h
- memfd.h
- mmap.h
- poll.h
- signalfd.h
- syscall.h
- syscall_basic.h
- syscall_table.h
- timerfd.h
- main.c
- epoll.c
- futex.c
- pipe.c
- posix_mq.c
- rt_mutex.c
- sysv_ipc.c
- cmos.c
- common.c
- cpuid.c
- dma.c
- fpu.c
- gdt.c
- idt.c
- smbios.c
- smp.c
- tss.c
- cgroup.c
- cmdline.c
- debug.c
- printk.c
- ringlog.c
- symbols.c
- empty_interrupt.c
- inthandle.c
- elf.c
- exports.c
- module.c
- elf_loader.c
- elf_loader_entry.c
- kthread.c
- process.c
- ptrace.c
- task.c
- sched.c
- signal.c
- eventfd.c
- fcntl.c
- memfd.c
- mmap.c
- poll.c
- signalfd.c
- syscall.c
- syscall_basic.c
- timerfd.c
- timer.c
- bmp.c
- fonts.c
- gfx_proc.c
- kobject.c
- circular_list.c
- intrusive_list.c
- singly_list.c
- math.c
- stdlib.c
- string.c
- spin_lock.c
- crc32c.c
- gzip.c
- rbtree.c
- utflib.c
- liblogo-uinxed.a
- alloc.c
- bitmap.c
- buddy.c
- frame.c
- heap.c
- hhdm.c
- page.c
- page_walker.c
- pagecache.c
- swap.c
- uaccess.c
- inet.c
- core.c
- ethernet.c
- arp.c
- dhcp.c
- icmp.c
- ipv4.c
- icmpv6.c
- ipv6.c
- ndp.c
- netlink.c
- tcp.c
- udp.c
- socket.c
- kconfig.mk
- seccomp.c
- seccomp_bpf.c
- mkfs_simplefs.c
- .clang-format
- .clang-tidy
- .clangd_template
- .config-default
- .gitignore
- Kconfig
- LICENSE
- Makefile
- NOTICE
- README.md
- SECURITY.md
# Installation Guide
git clone https://github.com/ViudiraTech/Uinxed-Kernel
Downloads the entire project code from GitHub to your computer.
cd Uinxed-Kernel
Moves into the project folder you just downloaded.
2. Official Install Script
Easy Recommended- APT (Debian/Ubuntu κ³μ΄) Built into Debian/Ubuntu-based Linux distributions.
sudo apt install make gcc qemu-system xorriso clang-format clang-tidy kconfig-frontends libncurses-dev dos2unix
Installs directly from the APT package repository (Debian/Ubuntu-based).
Pulled directly from this repo's README.
3. Make
Medium- Git Needed to download the project code from GitHub.
- Make Usually pre-installed on Linux/macOS. On Windows, install separately (e.g. via MSYS2 or WSL).
make
Compiles the code based on the generated build configuration to produce an executable.
make run
Compiles the code based on the generated build configuration to produce an executable.
make gen.clangd
Compiles the code based on the generated build configuration to produce an executable.
Pulled directly from this repo's README.
