|
|||
Prex Home / Browse Source - Prex Version: 0.9.0 |
|||
root/doc/ChangeLog/* [<][>][^][v][top][bottom][index][help] */Version 0.9.0: - New: Enable capability based security by default. - New: Support resource limit to prevent DoS attack. - New: Add task_chkcap() kernel call to trace the capability violations. - New: Support pipe and redirection in shell. - New: Support LCD off timer. - New: Add some logical drivers with new driver model. - New: Move HAL in BSP directory. - New: Define compiler options in tool specific makefiles. - New: Add test program for POSIX configuration interface. - New: Handle PATH variable for exec in shell. - New: Add 'spl' interrupt framework derived from BSD. - New: Add 'more' command to verify the pipe feature in shell. - New: Support SUN studio compiler. - New: Change name of real-time task to *.rt to identify it easily. - New: Support path based capability mapping. - New: Support getenv()/putenv(). - New: Change irq_attach() to pass data for IST. - New: Add power server - 'pow'. - New: Define power action for each power event. - New: Add test program for POSIX environment variable. - New: Add 'fstab' - file system table. - New: Add configuration file to customize capability table. - New: Run 'rc' script at boot. - New: Add 'set', 'unset' and 'export' command in shell. - New: Add script loader in exec server. - New: Add 'pmctrl' - power management utility. - New: Add _SILENT_ switch for build. - New: Support protected name for system object. - New: Add CAP_PROTSERV capability. - New: Add a shutdown routine in the driver structure. - New: Add an argument for the private data size in device_create(). - New: Add device_private() to get the pointer to the private data. - New: Add device_control() service to access another driver. - New: Add the kernel test program for random parameter attack. - New: Add 'diskutil' - disk management utilitiy. - New: Add 'install' - software installer. - New: Add 'ktrace' - system call tracer. - New: Add CAP_USERFILES/CAP_SYSFILES for data caging. - New: Add workstation console multiplexer driver - 'wscons'. - New: Initial PowerPC support. - New: Add _STRICT_ switch for build. - New: Add new device flag (D_PROT) for protected devices. - New: Support Solaris for host. - New: Add audit mode to find defective application. - New: Add test program for stack overflow. - New: Initial version of kernel debugger. - New: Add 'lock' - terminal lock utility. - Fix: Page fault in realloc(). - Fix: Remove the internal 'more' command support. - Fix: exception_return() breaks the return value of subsequent syscall. - Fix: 'tty' - the new line is not handled properly. - Fix: Intermittent hang during task_terminate(). - Fix: 'lr' register is broken after fork(). (ARM) - Fix: Enable interrupts during system call (ARM). - Fix: Page fault under sub-shell (NOMMU). - Fix: The pipe() system call fails at second call. - Fix: Fix to increment the file reference in dup2(). - Fix: The byte count for writing fifo is always 0. - Fix: Memory leak in task_terminate(). - Fix: Synchronize server initializations to prevent dead lock. - Fix: Allow priority change if the target thread belongs to the child task. - Fix: Fix to print the file type for device file correctly. - Fix: Reduce #ifdef in the kernel. - Fix: Remove all magic number from the kernel objects. - Fix: Fix the compile error with gcc 2.95. Correct the format of printf. - Fix: Fix to reject changing the capability of the kernel task. - Fix: Fix system hang when kernel is compiled with PCC. - Fix: Remove redundant comments. - Fix: Add signal number in the return code of waitpid(). - Fix: Fix to set correct errno when gettimeofday() is failed. - Fix: Change mode_t type to uint32_t. - Fix: Remove workaround for ioctl() buffering issue. - Fix: Move isatty() service to fs server from the library code. - Fix: Remove CAP_IPC capability. - Fix: Remove CAP_SEMAPHORE capability. - Fix: Prevent format string attack with sys_log(). - Fix: Fix many codes to prevent buffer overflow caused by strcpy/strcat. - Fix: Add PRIO_REALTIME for the default priority of the real-time threads. - Fix: Page fault in 'nice'. The first item of the envp is lost. - Fix: Add cwd data in exec message to build the full path in exec server. - Fix: setpriority() returns error even if it is success. - Fix: Change 'fifofs' mount point to /mnt/fifo from /fifo. - Fix: Change to generate driver table from configuration file. - Fix: 'proc' - some process data are not initialized for fork(). - Fix: Fix alignment of argv pointers. - Fix: 'tty' - fix for big endian. - Fix: Modify libc to reduce the size of executable file. Version 0.8.1: - New: Add MMU support for ARM. - New: Support Integrator/CP platform. - New: Add the function to relocate ARM exception vectors. - New: Add exception handling for ARM architecture. - New: Add machine_setpower() interface in DKI. - New: Define 'syspage' which holds architecture specific data. - New: Change architecture interface to common definition in all platforms. - New: Add physical/virtual address mapping table. - New: Support multiple RAM regions. - New: Add the serial console driver for PC. - New: Add tetris game ported from BSD. - New: Add '--profile' option in the configure script. - New: Support static driver to debug with fixed symbol address. - Fix: Change all external function declarations as BSD style. - Fix: Remove time data from the kernel banner string. - Fix: Improve build and configuration system. - Fix: Add tty_done() to notify the completion of the TTY output interrupt. - Fix: Fix the broken output of 'mem' command in 'kmon'. Version 0.8.0: - New: Add 'fatfs' - FAT file system. - New: Add 'fifofs' - FIFO file system. - New: Support pipe(). - New: Support compiling with PCC (Portable C Compiler). - New: Add 'head' command. - New: Add 'cal' command. - Fix: Fix object_create() for no object name. - Fix: Remove all variadic macros for C90 compilers. - Fix: The semaphore count is not set properly for re-initialization. - Fix: Change the argument type for timer_callout(). - Fix: Fix page fault if an alarm exception is invoked after task termination. - Fix: thread_suspend() returns a success code for error case. - Fix: Fix to return an appropriate error code in thread_load(). - Fix: Remove the register data from the argument of an exception handler. - Fix: Change the data types of ioctl() parameters. - Fix: Fix a page fault by waitpid(). - Fix: Add wait after enabling gate A20 for some real hardwares. - Fix: Fix vnode lookup routine to prevent a deadlock in a fs server. - Fix: Fix a process server to handle exit() properly. - Fix: Fix the system hang on the actual GBA flash cart. Version 0.7.0: - New: Add process server which manages process state and pid. - New: Add exec server which executes an ELF program. - New: Add boot server. - New: Initial release of TTY driver. Minimum set of termios is also added. - New: 'cmdbox' - tiny versions of many UNIX utilities. - New: Add init process. - New: Add stdio to libc, which is optimized for low-footprint systems. - New: Add UNIX emulation for fork(), exec(), pid, file I/O, signal, etc. - New: Support realloc(). - New: Change gcc optimization option to -Os from -O2. - New: Enable gcc '-ansi' and '-pedantic' options for portability. - Fix: Fix the scheduler to switch a thread properly for priority change. - Fix: Fix the kernel hang when a thread terminates while it holds a mutex. - Fix: Boot failure when a boot task does not have any data or bss sections. - Fix: The reference count is not incremented after dup(). - Fix: Fix to support processing an exception by drivers at interrupt level. - Fix: Fix a file lookup routine in devfs. - Fix: The scheduler is kept locked with some exception conditions. - Fix: kmem_alloc() cause a hang when kernel memory allocation is failed. - Fix: Change the scheduling policy of a timer thread to SCHED_FIFO. - Fix: Page fault during mkdir() when "foo/bar" style path is specified. - Fix: Fix a bug in recursive mutex lock. - Fix: A mutex for buffer cache is not initialized. - Fix: Fix a page fault while writing ramfs. - Fix: Fix a build error with old version (2.95) of gcc. - Fix: Design change of timer_hook(). - Fix: Reduce interrupt latency when interrupt occurs in thread switching. - Fix: Rescheduling flag is kept pending in some rare cases. - Fix: Remove a kernel function trace feature that depends on gcc. - Fix: Add checking CAP_NICE for the priority boost. - Fix: Fix a page fault after task termination by an exception. - Fix: Mutex is locked even if cond_wait() fails due to exception. - Fix: Fix memory leak when a periodic thread is terminated. Version 0.5.0: - New: Add file system server including VFS framework. - New: Support buffer cache and mount function. - New: Add 'devfs' - device file system. - New: Add 'ramfs' - RAM file system. - New: Add 'arfs' - archive file system. - New: Add file system test tool. - New: Add 'configure' script for build. - New: Support BSD style makefile for POSIX applications. - Fix: Fix crash in irq_detach(). - Fix: Fix makefile to optimize build speed with cygwin. Version 0.4.3: - New: Support DPC - deferred procedure call. - New: Add 'dmesg' function to dump kernel messages. - New: Reduce the timer jitters of periodic thread. - New: Change the name of sys_stat() to sys_info(). - New: Add handling of reference count for the device objects. - New: Add 'force' option to device_broadcast(). - New: Make the kernel information as same with POSIX utsname. - New: Remove the quantum adjustment feature. - New: Add IPC test tool for multi-threaded servers. - New: Add timer hooking service to reduce the driver's callout. - New: Improve DVS algorithm of CPUfreq driver. - Fix: System hang when periodic timer is stopped for an invalid timer object. - Fix: Replace a delay driver as generic driver service. - Fix: Fix a system call trap code (ARM). - Fix: Fix a compile error when it built with SSP enabled gcc. - Fix: Fix data corruption in malloc() library. - Fix: A thread could not hold semaphore in some case. Version 0.4.2: - New: Support RAM disk driver. - New: Change an argument type of device_read()/device_write(). - New: Add kernel release name in the kernel statistics data. - New: Update vm_inherit option of task_create(). - New: Change the data type of the message length of IPC related API. - New: The vm_attrib() API is renamed to vm_attribute(). - New: Add kernel debugging API. - New: Code size reduction for GBA port. - New: Support recursive locking of mutex. - New: Code clean up and system tuning. - Fix: Fix page fault during kernel memory dump. - Fix: Fix a bug in removing free node for VM region (NOMMU). - Fix: System hang by accessing ARM bank register after STM^ instruction. - Fix: Fix an alignment bug in the page reserve routine. - Fix: Fix memory leak when vm_map() is called two or more times (NOMMU). - Fix: The end address of the page extraction is not correct (i386). - Fix: Interrupt is kept disabled when DMA buffer allocation is failed (i386). Version 0.4.1: - New: Add ELF task relocation with NOMMU system. - New: Replace all strncpy() by strlcpy() in kernel for security reason. - Fix: There are some mutex hang conditions that cause system hang. - Fix: Fix a deadlock problem of FDD driver. - Fix: Rewrite the periodic timer routine in kernel. - Fix: The highest priority thread is not selected in sched_wakeone(). - Fix: Drop vm_inherit option for task_create() on NOMMU system. Version 0.4.0: - New: Add sys_capget()/sys_capset() kernel API for the task capability. - New: Define the standard message header for IPC. - New: Add vm_inherit argument in task_create() to improve exec() emulation. - New: Add /sample directory and sample applications. - New: Remove /img directory. - Fix: Fix the memory leak caused when task_create() is failed. - Fix: Incorrect I/O read size of FDD driver. - Fix: Fix the console driver to lock a scheduler during I/O operations. Version 0.3.1: - New: Add null/zero device driver. - New: Support MUTEX_INITIALIZER for the static initialization of mutexes. - New: Merge all configuration files into one single 'config.h'. - New: libc and headers are updated with BSD derived code. - New: Add 'make lint' as make option. - Fix: object_lookup() does not return correct object ID. Version 0.3.0: - New: Integrate configuration files and makefiles. - New: Change the name of sync APIs for POSIX compatibility. - New: Support re-initialize of the semaphore. - New: Change the driver ioctl code to BSD style. - New: Add test programs for mutex, semaphore and deadlock detection. - New: Add malloc() in the user mode library. - Fix: Fix the incorrect kernel handling of umem_strnlen(). - Fix: Modify the thread test program for long-run test. - Fix: sem_post() can not unblock the waiting thread. - Fix: vm_allocate() does not zero-fill the allocated memory. - Fix: Fix compile error with gcc4. Version 0.2.2: - New: Add the kernel function tracer which can dump the run-time call tree. - New: Add a benchmark tool to create/terminate 100000 threads at once. - New: Add code to detect above 64M of RAM. (i386) - Fix: Kernel page fault in accessing the highest physical page. (i386) - Fix: sys_reboot() is replaced by ioctl of the power management driver. - Fix: There is a time window that lost an IST trigger from ISR. - Fix: Change not to restart the system by sys_panic(). - Fix: Clean up comments in kernel sources. Version 0.2.1: - New: Add ARM processor support. (ATM7TDMI) - New: Add BSP for Game Boy Advance including on-screen keyboard. - Fix: The irq lock count is not 0 after switching to the new thread. - Fix: Improve the kernel callout timer for the small timeout value. - Fix: Remove the error check of max scheduling quantum in sched_setparam(). Version 0.2.0: - New: Add new VM code for No-MMU platform. - New: Change the structure of the driver I/O table. - New: Add minimum libc. - Fix: Fix panic() if the active condition variable is destroyed. - Fix: Semaphore causes an unconditional wakeup of the blocked threads. - Fix: Update structure of the source tree. Version 0.1.2: - New: Add Pentium-M support for i386 processor driver. - New: Add CPU voltage monitoring tool 'cpuvolt'. - New: Add DVS test program which changes the CPU load periodically. - Fix: Improve the build method for cross platform portability. Version 0.1.1: - New: Add an initial version of kernel monitor 'kmon'. - New: Add some user mode test programs to check kernel functions. - New: Move time_get()/time_set() functions to the driver layer. - New: Add sys_time() kernel interface to return system ticks. - New: Improve the device I/O dispatcher to verify user buffer automatically. - Fix: Timer overflow issue after 49.7 days of continuous operation. - Fix: Unexpected page fault in the exception handler. - Fix: Page fault after returning from main() routine. Version 0.1: - Initial public release. /* [<][>][^][v][top][bottom][index][help] */ | |||
Copyright© 2005-2009 Kohsuke Ohtani |