--- Gnu-Mach/NEWS 2020/09/02 04:42:30 1.1.1.3 +++ Gnu-Mach/NEWS 2020/09/02 04:51:44 1.1.1.7 @@ -1,6 +1,79 @@ --*- Text -*- +Version 1.7 (2016-05-18) -Changes between version 1.2 and version 1.3 +The code has been updated to work with newer versions of GCC, and numerous bugs +have been fixed throughout the code, including a pageout deadlock. The code +uses integer types from now instead of the old Mach types. + +The VM cache policy change has been merged. The kernel now caches +unreferenced VM objects unconditionally instead of using a fixed +limit. + +The physical page allocator of the X15 kernel has been integrated, and +is now used directly by the slab allocator. This increases the kernel +heap addressing important scalability issues. + +The gsync synchronization mechanism was added, similar to the Linux kernel's +futexes, to allow efficient and powerful userland synchronization. + +Support for profiling kernel code from userland through sampling was added. + +Version 1.6 (2015-10-31) + +The code has been updated to work with newer versions of the compiler, +and numerous bugs have been fixed throughout the code. + +The lock debugging infrastructure has been revived and improved, and +many locking issues have been fixed. + +The IPC tables and the hash table mapping objects to IPC entries have +been replaced by radix trees. This addresses a scalability issue, as +IPC tables required huge amounts of continuous virtual kernel memory. + +The kernel now allows non-privileged users to wire a small amount of +memory. + +A bug hindering the eviction of inactive pages by the pageout daemon +has been identified and fixed. + +The kernel now keeps timestamps relative to the system boot time. +Among other things this fixes bogus uptime readings if the system time +is altered. + +A reference leak in the exception handling mechanism has been +identified and fixed. + +ANSI escape sequences are now handled when using `printf'. This fixes +the formatting of messages printed by various Linux drivers. + +Version 1.5 (2015-04-10) + +Numerous cleanups and stylistic fixes of the code base. Several +problems have been identified using static analysis tools and +subsequently been fixed. + +A protected payload can now be associated with capabilities. This +payload is attached by the kernel to delivered messages and can be +used to speed up the object lookup in the receiving task. + +The kernel debugger can now parse ELF symbol tables, can be invoked +over serial lines, gained two new commands and has received usability +improvements. + +The vm pageout policy has been tuned to accommodate modern hardware. + +The kernel gained partial ACPI support on x86, enough to power down +the system. + +Version 1.4 (2013-09-27) + +Really too many to list them individually. Highlight include numerous bug and +stability fixes, a Xen port for 32-bit x86 including basic support for Physical +Address Extension (PAE), an initial AHCI driver (SATA hard disks), a new SLAB +memory allocator to replace the previous zone allocator, support for memory +object proxies, access restrictions for x86 I/O ports, support for some PCMCIA +devices based on the pcmcia-cs package. + +Version 1.3 The kernel now directly supports "boot scripts" in the form of multiboot module names with the same syntax as the Hurd's `serverboot' program. @@ -20,9 +93,8 @@ it perform better on today's machines. The console supports ANSI escape sequences for colors and attributes. Support for the terminal speeds B57600 and B115200 has been added. - -Changes between version 1.1 and version 1.2 +Version 1.2 Many bug fixes. @@ -46,9 +118,8 @@ former will install only the kernel, and the header files. Print out Mach device names instead of Linux ones. - -Changes between versions 1.0 and 1.1: +Version 1.1 Cross-compilation support is much improved. Any of various popular libc's is now sufficient for building clib-routines.o.