HelenOS
HelenOS-doc
HelenOS-historic
Català-Valencià – Catalan
中文 – Chinese (Simplified)
中文 – Chinese (Traditional)
Česky – Czech
Dansk – Danish
Nederlands – Dutch
English – English
Suomi – Finnish
Français – French
Deutsch – German
עברית – Hebrew
हिंदी – Hindi
Magyar – Hungarian
Bahasa Indonesia – Indonesian
Italiano – Italian
日本語 – Japanese
한국어 – Korean
Македонски – Macedonian
मराठी – Marathi
Norsk – Norwegian
Polski – Polish
Português – Portuguese
Português – Portuguese (Brazil)
Русский – Russian
Slovenčina – Slovak
Slovenščina – Slovenian
Español – Spanish
Svenska – Swedish
Türkçe – Turkish
Українська – Ukrainian
Oëzbekcha – Uzbek
Subversion Repositories
HelenOS
(root)
/
kernel
/
trunk
/
generic
/
src
/
adt
/
btree.c
@ 1247
– Rev 0
Rev
Hide changed files
|
Details
|
Compare with Previous
|
Blame
|
RSS feed
Filtering Options
From rev
To rev
Max revs
Search history for
Show All
Rev
Age
Author
Path
Log message
Diff
Changes
1221
6652 d 8 h
decky
/kernel/trunk/
printf-related and other code cleanup
/kernel/trunk/arch/amd64/src/debugger.c
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/smp/mps.c
/kernel/trunk/arch/ia64/src/interrupt.c
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/mips32/src/drivers/arc.c
/kernel/trunk/arch/mips32/src/exception.c
/kernel/trunk/arch/ppc32/src/mm/memory_init.c
/kernel/trunk/arch/ppc64/src/mm/memory_init.c
/kernel/trunk/arch/sparc64/src/mm/tlb.c
/kernel/trunk/generic/include/debug.h
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/page.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/test/mm/falloc1/test.c
/kernel/trunk/test/mm/falloc2/test.c
/kernel/trunk/test/mm/mapping1/test.c
/kernel/trunk/test/synch/rwlock4/test.c
1196
6658 d 17 h
cejka
/kernel/trunk/
Printf ported back from uspace to kernel.
Printf calls changed to match new conventions.
/kernel/trunk/arch/amd64/src/debugger.c
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/arch/amd64/src/mm/memory_init.c
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/mm/memory_init.c
/kernel/trunk/arch/ia32/src/smp/apic.c
/kernel/trunk/arch/ia64/src/interrupt.c
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/src/debugger.c
/kernel/trunk/arch/mips32/src/exception.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/Makefile.inc
/kernel/trunk/arch/ppc32/src/mm/memory_init.c
/kernel/trunk/arch/ppc64/src/mm/memory_init.c
/kernel/trunk/arch/sparc64/src/mm/tlb.c
/kernel/trunk/genarch/include/softint/division.h
/kernel/trunk/genarch/src/acpi/acpi.c
/kernel/trunk/genarch/src/acpi/matd.c
/kernel/trunk/genarch/src/i8042/i8042.c
/kernel/trunk/genarch/src/softint/division.c
/kernel/trunk/generic/include/print.h
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/console/cmd.c
/kernel/trunk/generic/src/debug/print.c
/kernel/trunk/generic/src/debug/symtab.c
/kernel/trunk/generic/src/interrupt/interrupt.c
/kernel/trunk/generic/src/lib/elf.c
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/main/uinit.c
/kernel/trunk/generic/src/mm/buddy.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/time/clock.c
/kernel/trunk/generic/src/time/timeout.c
/kernel/trunk/test/fpu/fpu1/test.c
/kernel/trunk/test/mm/falloc1/test.c
/kernel/trunk/test/mm/falloc2/test.c
/kernel/trunk/test/mm/mapping1/test.c
/kernel/trunk/test/print/print1/test.c
/kernel/trunk/test/synch/rwlock4/test.c
/kernel/trunk/test/synch/rwlock5/test.c
1177
6662 d 18 h
jermar
/kernel/trunk/generic/
Modify B+tree node key width to be 64-bit wide on all platforms.
/kernel/trunk/generic/include/adt/btree.h
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
1164
6665 d 14 h
jermar
/kernel/trunk/generic/
Switch B+tree node allocation from malloc() to a dedicated slab - btree_node_slab.
/kernel/trunk/generic/include/adt/btree.h
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/main/main.c
1150
6670 d 22 h
jermar
/kernel/trunk/generic/
Rename btree_node_left_sibling() to btree_leaf_node_left_neighbour()
and btree_node_right_sibling() to btree_leaf_node_right_neighbour()
as the left and right neighbours of a node needn't be its siblings.
/kernel/trunk/generic/include/adt/btree.h
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/mm/as.c
1148
6671 d 8 h
jermar
/kernel/trunk/generic/src/
s/B+-tree/B+tree/
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/mm/as.c
1147
6671 d 8 h
jermar
/kernel/trunk/generic/
Deploy B+tree in address space area management.
Change as_remap() to check for conflicts with other address space areas only when the area in question grows.
/kernel/trunk/generic/include/adt/btree.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/mm/as.c
1144
6673 d 12 h
jermar
/kernel/trunk/
Completed B+-tree support.
Enable btree_remove().
Reorder some static functions and group them together.
Fix order of nodes in the leaf_head list.
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/test/btree/btree1/test.c
1142
6673 d 20 h
jermar
/kernel/trunk/
Update B+-tree code.
The code is there, btree_remove() has not been tested yet.
(Fixes, if any, are to come later today.)
/kernel/trunk/generic/include/adt/btree.h
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/test/btree/btree1/test.c
1140
6675 d 12 h
jermar
/kernel/trunk/generic/
Change B+-tree from 2-3-4 tree to 2-3-4-5 tree by adding space for the fourth key.
This should make key removal easier.
/kernel/trunk/generic/include/adt/btree.h
/kernel/trunk/generic/src/adt/btree.c
1136
6679 d 12 h
jermar
/kernel/trunk/generic/src/adt/
Try to avoid splitting full B+-tree nodes by trying left or right rotation first.
(This improved memory consumption of this algorithm by some 40% - meassured on 101-item set).
/kernel/trunk/generic/src/adt/btree.c
1134
6680 d 15 h
jermar
/kernel/trunk/generic/src/adt/
Change B+-tree to:
- store lesser keys in a key's left subtree
- propagate the bigger of medians (if there are two medians) when splitting a node
/kernel/trunk/generic/src/adt/btree.c
1121
6682 d 9 h
jermar
/kernel/trunk/
Small textual changes.
/kernel/trunk/arch/amd64/include/atomic.h
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/amd64/src/asm_utils.S
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/ia32/src/userspace.c
/kernel/trunk/arch/ia64/src/ia64.c
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/generic/src/adt/btree.c
1101
6685 d 10 h
jermar
/kernel/trunk/
B+-tree implementation.
Currently supports only inserting and searching.
/kernel/trunk/generic/include/adt/btree.h
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/test/btree
/kernel/trunk/test/btree/btree1
/kernel/trunk/test/btree/btree1/test.c
/kernel/trunk/Makefile
/kernel/trunk/generic/include/typedefs.h
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/kernel.config