Rev |
Age |
Author |
Path |
Log message |
Diff |
703 |
6792 d 19 h |
jermar |
/kernel/trunk/ |
Memory management work.
- vm.* -> as.* (as like address space is, imho, more fitting)
- Don't do TLB shootdown on vm_install(). Some architectures only need to call tlb_invalidate_asid().
- Don't allocate all frames for as_area in as_area_create(), but let them be allocated on-demand by as_page_fault().
- Add high-level page fault handler as_page_fault().
- Add as_area_load_mapping(). |
|
664 |
6811 d 7 h |
jermar |
/kernel/trunk/ |
sparc64 work.
Interrupt Levels 1 - 15 serviced.
Minor changes in the exc_* functions. |
|
534 |
6832 d 13 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel again. |
|
533 |
6832 d 13 h |
bondari |
/SPARTAN/trunk/ |
Buddy allocator for physical memory complete implementation.
Tested on IA32, AMD64, MIPS32. RWLock Test #5 is not passed.
NOTE: Other architectures could be broken (but should not be) |
|
532 |
6832 d 13 h |
jermar |
/ |
Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch. |
|
517 |
6841 d 9 h |
jermar |
/kernel/trunk/ |
Implement basic kernel console command recognition.
Commands without arguments are now recognized. |
|
510 |
6844 d 9 h |
jermar |
/kernel/trunk/ |
Add chardev_t.
This type is meant to abstract any input character device such as keyboard, serial port etc.
Add stdin.
Add dummy kconsole. |
|
501 |
6844 d 17 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel. |
|
483 |
6852 d 13 h |
jermar |
/SPARTAN/trunk/ |
For now, each architecture must use its own -O switch (-O2 doesn't work for ia64, -O3 doesn't work for mips32).
New mips32 atomic_add() function.
Cleanup. |
|
430 |
6865 d 10 h |
jermar |
/SPARTAN/trunk/ |
Move src/ and include/ to generic. |
|
410 |
6881 d 13 h |
jermar |
/SPARTAN/trunk/ |
Doxygen-style comments. |
|
381 |
6898 d 10 h |
jermar |
/SPARTAN/trunk/ |
Make cross-compiler the default compiler on IA-32.
For native compilations, use ./build.ia32 native.
Small changes elsewhere. |
|
377 |
6902 d 12 h |
jermar |
/SPARTAN/trunk/ |
Generic buddy allocator.
Please review the code before it is deployed. |
|
366 |
6907 d 11 h |
jermar |
/SPARTAN/trunk/include/ |
Add zone pointer to frame_t.
This will be essential for fast frame_free().
Rename frame_zone_t to zone_t.
Declare frame and zone functions to be implemented. |
|
354 |
6909 d 18 h |
jermar |
/SPARTAN/trunk/ |
Physical memory management work.
Define structures for frame zones and frames.
Add some comments. |
|
173 |
6933 d 11 h |
jermar |
/SPARTAN/trunk/ |
Preparations for weaker preemption model.
Make all kernel stacks (i.e. startup, scheduler and thread) be STACK_SIZE bytes long.
Reincarnate "the" structure. This time, it is planned to be located at the base of each and every kernel stack.
On IA-32 and MIPS, implement get_stack_base() functions. On the rest of supported platforms, define it to be dummy. |
|
120 |
6989 d 9 h |
jermar |
/SPARTAN/trunk/ |
Generic 4-level page tables interface & implementation (review & test).
Implement more architecture dependant macros on IA-32.
Provide fake implementation on IA-64 and MIPS.
Convert map_page_to_frame() to use the new interface.
Move adjusted map_page_to_frame() from IA-32's arch/mm/page.c to the generic mm/page.c. |
|
102 |
7022 d 12 h |
jermar |
/SPARTAN/trunk/ |
IA-64 work.
Redefine FRAME_SIZE to "(16*1024)" instead of "2*4096". Note that the latter definition was wrong because of the lack of "()".
Take panic_printf(), cpu_halt() and memsetb() out of fake.s and implement them properly in asm.S.
Move ski_init_console() from arch_post_mm_init() to arch_pre_mm_init().
In start.S, write r0 to ar.bspstore.
Janitorial fixes.
Add count_t type.
Replace several occurrences of int and __u32 by count_t or size_t.
Shorten several panic strings. |
|
68 |
7039 d 13 h |
decky |
/SPARTAN/trunk/ |
NDEBUG debug symbol, ASSERT debug macro, fancier panic() in debug mode
indentation fixes, ASSERTs |
|
67 |
7039 d 13 h |
decky |
/SPARTAN/trunk/ |
typedef short bool (as logical type), defines of false and true
const qualifier for list_member() |
|