General
- Vast improvements to the book
- Support for i686 (32-bit x86 from the Pentium II and up) has been added, and is generally working on real hardware
- Support for aarch64 (64-bit ARM) has been improved, and is booting to login on QEMU. Real hardware is not working yet
- Support for multiple displays, if firmware provides framebuffer information
- Audio is now generally supported
- BIOS and EFI images have been merged, one install can boot on either
- The clone and exec syscalls have been moved to userspace. This change also involved the introduction of bootstrap and escalated.
bootstrap
is a very simply linked program the kernel loads into userspace, that can then handle loading ELF files such asinit
.escalated
provides support forsetuid
programs likesudo
. - Use the redox-daemon crate to simplify setting up daemons
- Update cargo lock files on most repositories
redox
- A work in progress hardware compatibility list was added, please consider contributing your own information: https://gitlab.redox-os.org/redox-os/redox/-/blob/master/HARDWARE.md
- The build system was refactored to allow building multiple architectures in one source tree
- Multiple filesystem configs are provided, and can be built side by side in the same source tree. The default is at
config/ARCH/desktop.toml
, whereARCH
is by defaultx86_64
- A demo configuration, providing example applications not present in the desktop configuration, has been added
- A
build.sh
script was added to make building for different architectures and configurations easier - An option for building with
podman
was added. This option will eventually become the default, as it eliminates many issues with ensuring a clean build environment on any potential Linux distribution a user may want to build on - The bootloader, kernel, and initfs packages are now built by the cookbook like every other package
- BIOS and UEFI images have been merged
- ISOLinux has been removed, now the
bootloader
supports booting from CD-ROM and images always have valid ISO headers
cookbook
- Support for i686 was added
- Builds now happen in a architecture specific folder, so multiple architectures can be built in the same source tree
- Icons and manifests were added for a number of GUI programs, making them show up in the launcher
- Various new recipes were added and many recipes were updated, see detailed link: https://gitlab.redox-os.org/redox-os/cookbook/-/compare/c9e203a...3d72057
audiod
- Support for software volume control was added, with the default being 50%, as this ends up working well on real hardware. This volume control works by multiplying the samples by the cube of the volume as a ratio. So, for the default of 50%, each sample is multiplied by 0.125.
bootloader
- Support for i686 (BIOS) was added
- Support for aarch64 (UEFI) was improved
- Read performance was increased for BIOS systems
- The bootloader can now boot from the same disk image for both BIOS and UEFI systems
- CHS (cylinder, head, sector) support has been added for CD boot
- ISO metadata was added to all disk images
- Framebuffer stride is now provided to the OS
- Multiple displays can now be supported, if using UEFI and there is a GOP driver for each display
- Various fixes for problems on real hardware, see detailed link: https://gitlab.redox-os.org/redox-os/bootloader/-/compare/c92ba0b...d398e37
drivers
- Support for i686 was added
- Support for aarch64 was improved
- Added AC’97 and IDE drivers, which are common on i686 systems
- Intel HD Audio driver has been enabled by default, and has had various improvements:
- Improved detection of best output path. Pin sense information is used, and headphones are prioritized over speakers if they are plugged in
- Improved buffer sizing and usage. This prevents static while ensuring latency is still low. The ac97 driver has identical buffer sizing for consistency
- Ensure all widgets in output path are in power state D0 (on)
- Set headphone amp enable on output pins
- Fix output stream cyclic buffer length
- Ensure all input and output amps in output path are set to 0 dB, based on their reported capabilities
- Wait for output stream to start before completing initialization
- Add a file where codec information can be read
audiohw:codec
- Add MSI support
- NVMe driver has had fixes to improve real hardware support
- PCI driver now supports both 32-bit and 64-bit memory BARs
- PS/2 driver has had fixes to ensure more touchpads are working properly
- PS/2 driver now handles extended scancodes, providing volume up/down/mute support
- RTL8168 driver now supports MSI and MSI-X
- USB HID driver can now support QEMU’s USB keyboard, mouse, and touchpad. Real hardware support is blocked pending fixes in the XHCI driver
- VESA driver can now handle multiple displays, if information is provided by firmware
installer
- bootloader, bootstrap, kernel, and initfs are installed from packages and are now placed in /boot
- Installs can support both BIOS and UEFI boot
- Various fixes for issues on real hardware, see detailed link: https://gitlab.redox-os.org/redox-os/installer/-/compare/2418286...f710fa7
kernel
- Support for i686 was added
- Support for aarch64 was improved
- clone syscall was removed, replaced by userspace
- exec syscall was removed, replaced by userspace
- Support for userspace manipulation of address spaces was added
- Kernel memory space was greatly simplified
- RMM integration was completed, old recursive paging code has been removed
- Support for reading partial time between timer ticks, with very high accuracy
- Highly accurate CPU time is now stored per context and shown in
sys:context
- Internal time tracking changed to u128 of nanoseconds
- Preemptive context switch timer reduced to 6.75ms, to reduce latency
- llvm_asm replaced with new asm macro
- initfs scheme moved to userspace
- Fixes for real hardware issues
- The kernel in particular had a lot of changes this cycle, see detailed link: https://gitlab.redox-os.org/redox-os/kernel/-/compare/b5a9301...d298459. The syscall crate also changed to support these kernel changes, and those changes are included
orbital
- Support for multiple displays, if firmware provides information
- Pass super keypresses to launcher, which allows the launcher to specify shortcuts like
Super+T
for launching a terminal,Super+B
for launching a browser, andSuper+F
for launching a file manager - Improvements for relative mouse cursor handling (used often by games)
- Improved reliability when displays are resized (supported by VirtualBox)
- Volume can be changed with volume keys or
Super+[
for volume down,Super+]
for volume up, andSuper+\\
for volume toggle - On-screen display when volume changes
orbutils
- Autofill username if there is only one user (usually
user
on a Redox image) - Do not keep login background resident in memory
- Support loading background on multiple displays
- Show categories in start menu if defined in manifests.
Games
is a new catagory, for example
redoxfs
- Modify disk cache size for lower memory systems, it is now 16 MiB and is pre-allocated
- Various improvements, see detailed link: https://gitlab.redox-os.org/redox-os/redoxfs/-/compare/0e0ae52...f601b2a
relibc
- Support for i686 was added
- Support for aarch64 was improved
- clone and exec syscall implemented with
redox-exec
crate - Varous fixes for dynamic linking and C applications, see detailed link: https://gitlab.redox-os.org/redox-os/relibc/-/compare/7f3f2fa...ee0193a
Exhaustive Details
Here is an exhaustive list of changes, generated by the new changelog script:
- redox: https://gitlab.redox-os.org/redox-os/redox/-/compare/8f210bb...c8634bd
- cookbook: https://gitlab.redox-os.org/redox-os/cookbook/-/compare/c9e203a...3d72057
- rust: https://gitlab.redox-os.org/redox-os/rust/-/compare/45e40dd6819...3e6631a06e7
- audiod: https://gitlab.redox-os.org/redox-os/audiod/-/compare/e05506d...20474ef
- bootloader: https://gitlab.redox-os.org/redox-os/bootloader/-/compare/c92ba0b...d398e37
- bootstrap: New repository at https://gitlab.redox-os.org/redox-os/bootstrap
- contain: https://gitlab.redox-os.org/redox-os/contain/-/compare/2840700...42b381b
- coreutils: https://gitlab.redox-os.org/redox-os/coreutils/-/compare/0010276...690460d
- drivers: https://gitlab.redox-os.org/redox-os/drivers/-/compare/465aaa6...fc4a69c
- escalated: New repository at https://gitlab.redox-os.org/redox-os/escalated
- extrautils: https://gitlab.redox-os.org/redox-os/extrautils/-/compare/3424cda...1f9cf9c
- installer: https://gitlab.redox-os.org/redox-os/installer/-/compare/2418286...f710fa7
- ion: https://gitlab.redox-os.org/redox-os/ion/-/compare/63dc0c3...b9c354e
- ipcd: https://gitlab.redox-os.org/redox-os/ipcd/-/compare/3aa2415...c930dfd
- kernel: https://gitlab.redox-os.org/redox-os/kernel/-/compare/b5a9301...d298459
- netstack: https://gitlab.redox-os.org/redox-os/netstack/-/compare/8669516...54d64d6
- netutils: https://gitlab.redox-os.org/redox-os/netutils/-/compare/55c55eb...34d1ec9
- orbital: https://gitlab.redox-os.org/redox-os/orbital/-/compare/2ebe592...e93c270
- orbterm: https://gitlab.redox-os.org/redox-os/orbterm/-/compare/1e30d3d...8e95662
- orbutils: https://gitlab.redox-os.org/redox-os/orbutils/-/compare/9bb13b4...b5aaf1e
- pkgutils: https://gitlab.redox-os.org/redox-os/pkgutils/-/compare/226cb67...8cc4d84
- ptyd: https://gitlab.redox-os.org/redox-os/ptyd/-/compare/1c1eccd...d1709e5
- redoxfs: https://gitlab.redox-os.org/redox-os/redoxfs/-/compare/0e0ae52...f601b2a
- relibc: https://gitlab.redox-os.org/redox-os/relibc/-/compare/7f3f2fa...ee0193a
- resist: https://gitlab.redox-os.org/redox-os/resist/-/compare/ef02eca...8d420dc
- smith: https://gitlab.redox-os.org/redox-os/Smith/-/compare/b3d650c...52bdeef
- userutils: https://gitlab.redox-os.org/redox-os/userutils/-/compare/cbed606...0621709
- uutils: https://gitlab.redox-os.org/redox-os/uutils/-/compare/1bf3019e...7ed2657e
- init: https://gitlab.redox-os.org/redox-os/init/-/compare/44f7557...0c87d80
- logd: https://gitlab.redox-os.org/redox-os/logd/-/compare/1991764...734bb92
- nulld: https://gitlab.redox-os.org/redox-os/nulld/-/compare/28b4d1c...5af44eb
- ramfs: https://gitlab.redox-os.org/redox-os/ramfs/-/compare/1af1a59...d3fd7f2
- randd: https://gitlab.redox-os.org/redox-os/randd/-/compare/1804f1a...934f130
- zerod: https://gitlab.redox-os.org/redox-os/zerod/-/compare/d5a9818...4b1b17c
- A hozzászóláshoz be kell jelentkezni
- 427 megtekintés