|
|
1.1.1.8 ! root 1: Version 1.8 (2016-12-18) ! 2: ! 3: The memory management system was extensively reworked. A new type for ! 4: physical addresses is now used where appropriate, and the system can ! 5: make use of the high memory segment. Many paging issues have been ! 6: addressed, and as a result the system handles low memory situations ! 7: more gracefully now. ! 8: ! 9: The virtual memory system now uses a red-black tree for allocations, ! 10: and as a result it now supports tasks with tens of thousands of ! 11: mappings. ! 12: ! 13: Debugging and error reporting has been improved. Among other things ! 14: the VM maps are now augmented with names that are used in error ! 15: messages, panics and assertions point to their locations, the lock ! 16: debugging mechanism has been fixed, and the kernel debugger can now ! 17: inspect stack traces reaching into the machine-dependent bits ! 18: implemented in assembler. ! 19: ! 20: As usual, bugs have been fixed throughout the code, including minor ! 21: issues with the gsync synchronization mechanism which is now used for ! 22: the internal locks in the GNU C Library (glibc). ! 23: ! 24: The deprecated external memory management interface has been removed. ! 25: ! 26: The partial ACPI support has been removed. ! 27: 1.1.1.7 root 28: Version 1.7 (2016-05-18) 29: 30: The code has been updated to work with newer versions of GCC, and numerous bugs 31: have been fixed throughout the code, including a pageout deadlock. The code 32: uses integer types from <stdint.h> now instead of the old Mach types. 33: 34: The VM cache policy change has been merged. The kernel now caches 35: unreferenced VM objects unconditionally instead of using a fixed 36: limit. 37: 38: The physical page allocator of the X15 kernel has been integrated, and 39: is now used directly by the slab allocator. This increases the kernel 40: heap addressing important scalability issues. 41: 42: The gsync synchronization mechanism was added, similar to the Linux kernel's 43: futexes, to allow efficient and powerful userland synchronization. 44: 45: Support for profiling kernel code from userland through sampling was added. 46: 1.1.1.6 root 47: Version 1.6 (2015-10-31) 48: 49: The code has been updated to work with newer versions of the compiler, 50: and numerous bugs have been fixed throughout the code. 51: 52: The lock debugging infrastructure has been revived and improved, and 53: many locking issues have been fixed. 54: 55: The IPC tables and the hash table mapping objects to IPC entries have 56: been replaced by radix trees. This addresses a scalability issue, as 57: IPC tables required huge amounts of continuous virtual kernel memory. 58: 59: The kernel now allows non-privileged users to wire a small amount of 60: memory. 61: 62: A bug hindering the eviction of inactive pages by the pageout daemon 63: has been identified and fixed. 64: 65: The kernel now keeps timestamps relative to the system boot time. 66: Among other things this fixes bogus uptime readings if the system time 67: is altered. 68: 69: A reference leak in the exception handling mechanism has been 70: identified and fixed. 71: 72: ANSI escape sequences are now handled when using `printf'. This fixes 73: the formatting of messages printed by various Linux drivers. 74: 1.1.1.5 root 75: Version 1.5 (2015-04-10) 76: 77: Numerous cleanups and stylistic fixes of the code base. Several 78: problems have been identified using static analysis tools and 79: subsequently been fixed. 80: 81: A protected payload can now be associated with capabilities. This 82: payload is attached by the kernel to delivered messages and can be 83: used to speed up the object lookup in the receiving task. 84: 85: The kernel debugger can now parse ELF symbol tables, can be invoked 86: over serial lines, gained two new commands and has received usability 87: improvements. 88: 1.1.1.8 ! root 89: The VM pageout policy has been tuned to accommodate modern hardware. 1.1.1.5 root 90: 91: The kernel gained partial ACPI support on x86, enough to power down 92: the system. 93: 94: Version 1.4 (2013-09-27) 1.1.1.3 root 95: 1.1.1.4 root 96: Really too many to list them individually. Highlight include numerous bug and 97: stability fixes, a Xen port for 32-bit x86 including basic support for Physical 98: Address Extension (PAE), an initial AHCI driver (SATA hard disks), a new SLAB 99: memory allocator to replace the previous zone allocator, support for memory 100: object proxies, access restrictions for x86 I/O ports, support for some PCMCIA 101: devices based on the pcmcia-cs package. 102: 103: Version 1.3 1.1.1.3 root 104: 105: The kernel now directly supports "boot scripts" in the form of multiboot 106: module names with the same syntax as the Hurd's `serverboot' program. 107: That is, instead of telling GRUB "module /boot/serverboot", you can give 108: GRUB a series of command like "module /hurd/ext2fs ${...}" where the 109: syntax after "module" is the same as in boot scripts for Hurd's `serverboot'. 110: 111: The kernel message device `kmsg' is now enabled by default. 112: --disable-kmsg turns it off. 113: 114: Large disks (>= 10GB) are now correctly supported, the new get_status 115: call DEV_GET_RECORDS can return the number of records of a device. 116: 117: Lots of tweaks have been done to the virtual memory management to make 118: it perform better on today's machines. 119: 120: The console supports ANSI escape sequences for colors and attributes. 121: 122: Support for the terminal speeds B57600 and B115200 has been added. 123: 1.1.1.4 root 124: Version 1.2 1.1.1.2 root 125: 126: Many bug fixes. 127: 128: The task_basic_info RPC now has an additional field, holding the 129: creation time of the task. Likewise for thread_basic_info. 130: 131: The interface generator `MiG' has been split out. 132: 133: Partition names for disks are now printed in the correct way. 134: 135: Linux drivers are updated to 2.0.36. Many thanks to Okuji Yoshinori 136: for great work here. The Linux emulation support is much improved. 137: 138: The kernel message device `kmsg' is supported. --enable-kmsg turns on 139: the device. 140: 141: The parallel driver is enabled by --enable-lpr. 142: 143: New make targets, install-kernel and install-headers are added. The 144: former will install only the kernel, and the latter will install only 145: the header files. 146: 147: Print out Mach device names instead of Linux ones. 148: 1.1.1.4 root 149: Version 1.1 1.1 root 150: 151: Cross-compilation support is much improved. Any of various popular 152: libc's is now sufficient for building clib-routines.o. 153: 154: New configure option --enable-kdb asks for kernel debugger to be 155: compiled in. 156: 157: Bug in --enable-ncr53c7xx has been fixed. 158: 159: Many thanks go to Marcus G. Daniels ([email protected]) for 160: his very helpful testing of the 1.0 release and for his many 161: improvements to the cross-compilation support.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.