Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
kerla.x64.elf | 2021-12-24 | 7.9 MB | |
README.md | 2021-12-24 | 3.2 kB | |
v0.1.0 source code.tar.gz | 2021-12-24 | 206.6 kB | |
v0.1.0 source code.zip | 2021-12-24 | 285.8 kB | |
Totals: 4 Items | 8.4 MB | 1 |
Run the following command to try Kerla on QEMU:
qemu-system-x86_64 -m 512 -cpu Icelake-Server -serial mon:stdio \
-netdev user,id=net0 \
-device virtio-net,netdev=net0,disable-legacy=on \
-kernel kerla.x64.elf
Notable Changes
- The first cloud support for DigitalOcean: for example, my website is now powered by Kerla on DigitalOcean!
- boot2dump support: if an ext4 disk is attached over virtio-blk, kernel panic log will automatically saved into
/kerla.dump
.
All Changes
Baye Dieng (2): - Remove redundant files already defined in virtio crate (#84) - Make driver trait available globally for other drivers and typo fix (#89)
Seiya Nuta (42):
- Isolate arch-specific and memory allocators into a separate library (kerla_runtime
) (#77)
- Use Rust 2021 edition (#78)
- Turn device drivers into libraries (#80)
- build: Use Docker image cross compiling for M1 Mac (#81)
- Update author fields
- Implement deferred job (#82)
- Add some README.md
- Rename initramfs to testing (#83)
- Release IRQ_HANDLERS' lock before running deferred jobs (#85)
- Generate the kernel extensions loader (#86)
- Implement log filtering (#92)
- build: Add $(QEMU_ARGS) option (#93)
- Support the secondary serial port for kernel messages (#94)
- x64: Make SyscallFrame compatible with Linux's struct pt_regs (#95)
- Remove kexts_loader (#97)
- initramfs: Implement file size (#122)
- Implement shutdown(2) (#118)
- Implement exit_group(2) syscall (#119)
- Re-disable interrupts after handling an interrupt (#124)
- Kill a process immediately if its parent ignores SIGCHLD (#121)
- Make network parameters and allowed PCI devices configurable via cmdline (#123)
- Support freeing pages (#120)
- Use yapf for formatting python scripts (#125)
- Implement /proc/metrics (#126)
- Add rust-toolchain.toml (#129)
- build: Allow specifying extra kernel parameters through $(CMDLINE) (#127)
- downcast: Take a reference instead of the ownership (#130)
- virtio: Fix a bug in used descriptors GC (#131)
- net: Fix a memory leak (#132)
- virtio: Support legacy virtio devices (#133)
- /proc/metrics: Expose the monotonic clock (#134)
- x64: Fill an XSAVE area with zeroes (#136)
- net: Fix for dhcp=off (#135)
- x64: Dump some important registers on an unsupported exception (#138)
- allocator: Fill allocated pages with zeroes by default (#137)
- Support saving kernel crash logs using boot2dump (#139)
- x64: Fix memory leaks in a process internal buffers (#140)
- Add docs
- Fix some docs
- Allow specifying multiple interrupt handlers for the same IRQ number (#143)
- testing: Refactor Dockerfile (#128)
- Add tools/create-release.py
Serhiy Barhamon (4): - Panic on irq_handler overwrite (#53) - Single thread gettid syscall implementation (#75) - rt_sigprocmask syscall implementation (#112) - [#112] followup (bugfix and fix build) (#114)
dependabot[bot] (1): - build(deps): bump memoffset from 0.6.4 to 0.6.5 (#113)