[Prev][Next][Index][Thread]

Release 0.1.2.0.1 of rtmk!




The latest version of rtmk (version 0.1.2.0.1) can now be downloaded 
from Sourceforge.

rtmk has a page on the web.  See:

  http://rtmk.sourceforge.net/

Version 0.1.2.0.1 can be downloaded from this location:

  http://download.sourceforge.net/rtmk/

Release notes:

New in 0.1.2.0.1 :
 * Console driver in bootstrap has cursor support.

New in 0.1.2.0 :
 * The first user-level program (the bootstrap),
 * First system calls,
 * IPC facility and
 * A number of new libraries: system, elf, libc, malloc and pthread.


Change log:

2000-02-05  Johan Rydberg  <johan.rydberg@netinsight.net>

        * RELEASE 0.1.2.0.1.

        * bootstrap/cons.c (cons_init): Support for cursor.
        (cnscrollup): Clears the line at the bottom.

        * RELEASE 0.1.2.0.
        
        * src/ipc/Makefile.am (SOURCES): New file: ipc_syscall.c. 

        * src/ipc/ipc_portal.c (ipc_portal_receive): New function.

        * src/kern/thread.h: Added ipc_msgh member; contains
        pointer to message buffer (saved state).

        * src/ipc/ipc_portal.c (ipc_portal_send): New function.

2000-02-03  Johan Rydberg  <johan.rydberg@netinsight.net>

        * src/kern/sched.c (thread_invoke): Right now when we
        detect a swapped thread we associate a kernel stack with
        it (and not tries to do some paging).

2000-02-02  Johan Rydberg  <johan.rydberg@netinsight.net>

        * src/kern/thread.c (thread_init): Now sets both priority
        and sched_credit (in the template thread).

        * src/vm/vm_map.c (vm_map_entry_alloc): Does not allocate
        more entries if needed. This is done by the new function
        vm_map_entry_alloc_check. This function is called when a
        new entry is inserted into the map (and all allocation is
        finished). 

2000-02-01  Johan Rydberg  <johan.rydberg@netinsight.net>

        * lib/malloc/malloc.c: New file.
        * lib/malloc/Makefile.am: New file.

        * src/kern/Makefile.am (SOURCES): New file: thread_syscall.c.
        * src/kern/thread_syscall.c: New file.

        * src/ipc/ipc_space.c (ipc_space_right_make_receive): New
function.

        * lib/system/i386/Makefile.am (SOURCES): New file: threads.S. 
        * lib/system/i386/thread.S: New file.

        * include/rtmk/i386/thread.h: New file.
        * include/rtmk/thread.h: New file.

2000-01-31  Johan Rydberg  <johan.rydberg@netinsight.net>

        * bootstrap/bootstrap.c: New file.

        * lib/system/i386/Makefile.am (SOURCES): New file:
vm_allocate.S.

        * lib/system/i386/vm_allocate.S: New file.

        * src/kern/syscall.c: New system call: vm_allocate.

        * src/vm/vm_user.c (vm_allocate): New function.
        * src/vm/vm_syscall.c (syscall_vm_allocate): New function.

        * src/vm/vm_user.c (vm_map_physical): Passes a correct reference
        to vm_map_enter (caused a crash in vm_fault).
        (vm_map_physical): Small bug fix. Now we do the correct mapping.

        * src/vm/vm_map.c (vm_map_enter, vm_map_allocate): Now returns 
        correct error values.

2000-01-28  Johan Rydberg  <johan.rydberg@netinsight.net>

        * src/vm/vm_kmem.c (kmem_alloc): Oops. Now we pass the
        right type of data to vm_map_enter.

        * lib/system/i386/Makefile.am (SOURCES): New file: vm_map.S.

        * src/kern/syscall.c: New syscall: vm_map.
        
        * src/vm/vm_syscall.c (syscall_vm_map): New function.

        * src/vm/vm_user.c (vm_map_physical): New function (internal
        version of the vm_map syscall when mapping physical memory).

        * src/vm/Makefile.am (SOURCES): New file: vm_syscall.c.
        * src/vm/vm_syscall.c: New file.

        * src/kern/syscall.h: New file.

        * src/vm/vm_object.h: Added the is_phys flag.

        * src/ipc/ipc_init.c (ipc_init): Calls ipc_kmsg_init.

        * src/kern/thread.h: Added the ipc_length and ipc_kmsg 
        fields. 

        * src/ipc/Makefile.am (SOURCES): New file: ipc_kmsg.c.
        * src/ipc/ipc_kmsg.c: New file.

        * src/ipc/ipc_init.c (ipc_init): Calls ipc_portal_init.

        * src/ipc/Makefile.am (SOURCES): New file: ipc_portal.c.
        * src/ipc/ipc_portal.c: New file.

        * src/kern/thread.h: New fields for IPC action.
        
        * src/kern/main.c (main): Calls ipc_init to initialize
        the IPC system (done before calling task_init).

        * src/Makefile.am (LDADD): New object file: ipc/ipc.o
        * src/ipc/Makefile.am (SOURCES): New file: ipc_init.c
        * src/ipc/ipc_init.c: New file.

        * configure.in: New output file: src/ipc/Makefile.

        * src/Makefile.am (SUBDIRS): New directory: ipc.

2000-01-27  Johan Rydberg  <johan.rydberg@netinsight.net>

        * src/kern/task.h: Added a IPC name space field (ipc_space).

        * src/ipc/ipc_space.c: New file.

        * src/ipc/ipc_space.h: New file.
        * src/ipc/ipc_portal.h: New file.
        * src/ipc/ipc_kmsg.h: New file.

        * include/rtmk/ipc_msg.h: New file.
        * include/rtmk/ipc_types.h: New file.

2000-01-26  Johan Rydberg  <johan.rydberg@netinsight.net>

        * config/mt-i386 (TARGET_MAKEFILES): New output file:
        lib/system/i386/Makefile.

        * configure.in: New output file: lib/system/Makefile.
        
        * src/kern/bootstrap.c (read_exec): Removes alot of
        debugging outputs.

        * src/kern/sched.c (thread_invoke): Removes continuation
        when it has been called.

        * src/kern/processor.c (processor_quantum_update): Only prints
        context switching information if switching to a new thread.

2000-01-25  Johan Rydberg  <johan.rydberg@netinsight.net>

        * src/vm/vm_user.c (umem_alloc_pages): Inserts the
        page into the kernel pmap to prevent page faults (only
        done when the target pmap not equals kernel pmap).
        (user_allocate): Truncates offset and rounds size (to
        page boundry).

        * configure.in: New output file: bootstrap/Makefile
        * Makefile.am (SUBDIRS): New directory: bootstrap
        * bootstrap/start.c: New file.
        * bootstrap/ldscript.ld: New file.
        * bootstrap/Makefile.am: New file.

        * src/vm/vm_user.c (umem_alloc_pages): New function.
        (user_allocate): If the alloc (new) argument is TRUE,
        then pages will be allocated right away.
        (user_allocate): Add object to kernel map if target task
        is not the kernel task and it's not an anonymous object.

        * src/vm/Makefile.am: vm_user.c: New file.
        
        * src/vm/vm_user.c: New file.

        * src/kern/main.c (start_kernel_threads): Block interrupts
        when creating bootstrap and kernel threads. 

        * src/kern/Makefile.am: New file: bootstrap.c
        
        * src/kern/main.c (start_kernel_threads): Initializes
        bootstrap (by calling bootstrap_init).

        * src/kern/bootstrap.h: New file.
        * src/kern/bootstrap.c: New file.

        * src/kern/task.c (task_init): Deallocates the
        new kernel tasks map and replaces it with the
        global kernel map (kernel_map).
        (kernel_task_create): Same here.
        (task_create): Creates physical map for the
        task.

        * src/vm/vm_kmem.c (kmem_alloc): Now allocates in
        reference map (instead of the specified map).
        (kmem_free): Removes object from reference map.

        * src/vm/vm_map.h: External declaration of
        reference_map.

        * src/vm/vm_map.c (vm_map_create): Takes pmap
        as argument.
        (vm_map_deallocate): New function.

2000-01-24  Johan Rydberg  <johan.rydberg@netinsight.net>

        * src/vm/vm_object.h: Added the "is_anon" field
        to the vm_object structure. 

2000-01-23  Johan Rydberg  <johan.rydberg@netinsight.net>

        * src/kern/main.c (start_kernel_threads): Thread becomes
        reaper thread when it's done with the initialization.
        (idle_thread_continue): Thread does thing right now.

        * src/kern/thread.h (assert): New macro.

        * src/kern/printf.c (panic) [gdb]: Traps into
        debugger.
        (Assert): New function.

-- 
Johan Rydberg			johan.rydberg@netinsight.net
Net Insight AB, Sweden		direct: +46-8-685 04 17
http://www.netinsight.net	phone:  +46-8-685 04 00
				fax:    +46-8-685 04 20