Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
575 6777 d 21 h palkovsky /kernel/trunk/ Added generic exc_register/exc_dispatch functions,
copied from ia32 architecture. Currently only mips32 uses them.

The chardev_t can now be both input & output device (was
needed for serial driver).

Broken other architectures - ia64, sparc, powerpc will not compile.

Mips32 supports input on all msim, gxemul, indy(tested emulation
in gxemul, loses characters), simics. Simics serial line
is done using polling, I was unable to make it produce
an interrupt when the key was pressed.
 
571 6778 d 20 h jermar /kernel/trunk/generic/include/ Missing braces.
By the way, new ALIGN_UP broke ppc32 (commits 564 vs. 565).
 
569 6778 d 22 h jermar /kernel/trunk/ sparc64 work.
Implement functions for reading IMMU and DMMU TLBs.
 
565 6779 d 21 h jermar /kernel/trunk/generic/include/ Improved ALIGN_UP.  
564 6779 d 22 h jermar /kernel/trunk/ Send in some improvements.  
561 6780 d 4 h decky /kernel/trunk/ better way of placing revision, timestamp and arch in banner  
557 6780 d 7 h jermar /kernel/trunk/ Add comments describing locking rules for some locks.
Cleanup.
 
553 6780 d 23 h palkovsky /kernel/trunk/generic/include/synch/ Fix of compiling without SMP.  
552 6780 d 23 h palkovsky /kernel/trunk/ Named spinlocks  
548 6781 d 1 h jermar /kernel/trunk/ Cleanup and fixes.  
539 6782 d 2 h jermar /kernel/trunk/ Buddy allocator cleanup and fixes.
- Add some comments.
- Update zone information on frames allocation/deallocation.
 
538 6782 d 3 h jermar /kernel/trunk/ Buddy allocator cleanup and fixes II.
- Rewrite IS_BUDDY_LEFT_BLOCK so that it does not need floating point on some architectures (e.g. IA-64).
- Get rid of IS_BUDDY_RIGHT_BLOCK.
- Make sparc64 use zone_create_in_region.
 
537 6782 d 4 h jermar /kernel/trunk/ Buddy system cleanup and fixes.
- missing use of KA2PA in frame_init
- truncating black list addresses to frame boundaries
- removal of left-over obsolete structures
- fixing some comments
 
534 6783 d 1 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
533 6783 d 1 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 6783 d 2 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
524 6788 d 7 h jermar /kernel/trunk/generic/include/ sort.h was actually written by Sergey Bondari.  
518 6790 d 22 h jermar /kernel/trunk/ Improve kconsole's support for recognition of commands with arguments.
Implement ARG_TYPE_STRING.
Add 'describe' command.
Move kconsole.c to generic/src/console.
Move kconsole.h to generic/include/console.
 
517 6791 d 22 h jermar /kernel/trunk/ Implement basic kernel console command recognition.
Commands without arguments are now recognized.
 
511 6794 d 21 h jermar /kernel/trunk/ Enable dummy kconsole for ia32 and amd64 (UP mode works).  
510 6794 d 21 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.
 
503 6795 d 5 h jermar /kernel/trunk/ Rename arch_late_init() to arch_pre_smp_init().
Add arch_post_smp_init().
Enable IRQ_KBD on ia-32 (doesn't work on Bochs SMP, works on Bochs UP).
 
501 6795 d 6 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
492 6795 d 23 h jermar /SPARTAN/trunk/ Rename map_page_to_frame() to page_mapping_insert() and find_mapping() to page_mapping_find().
New names should make it more apparent that these two belong together.
 
489 6802 d 5 h jermar /SPARTAN/trunk/generic/ Make the buddy system more general.
Store implementation defined pointer in buddy_system_t.
Pass buddy system pointer to implementation defined buddy system operations.
 
483 6803 d 1 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.
 
482 6804 d 2 h jermar /SPARTAN/trunk/generic/include/ Fix typo in buddy.h.
Make default memsize 8M.
 
480 6805 d 0 h bondari /SPARTAN/trunk/generic/ Buddy system allocator implementation. Not checked. For review only.  
479 6806 d 2 h bondari /SPARTAN/trunk/generic/ Buddy system implementation. Not functional yet - only framework prepeared.
Also added 2 macros FRAME2ADDR and ADDR2FRAME.
 
475 6807 d 7 h jermar /SPARTAN/trunk/ Define atomic_t type.  
471 6808 d 7 h decky /SPARTAN/trunk/ remove NDEBUG, replace it by ~CONFIG_DEBUG
set CONFIG_DEBUG = y
 
458 6809 d 9 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
452 6810 d 1 h decky /SPARTAN/trunk/ major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient
 
440 6811 d 4 h jermar /SPARTAN/trunk/generic/include/mm/ Add some comments for buddy system operations.  
430 6815 d 23 h jermar /SPARTAN/trunk/ Move src/ and include/ to generic.  
414 6830 d 11 h jermar /SPARTAN/trunk/ Create generic context_save() and context_restore().
These two functions are defined inline and only call context_save_arch() and context_restore_arch(), respectively.
The main purpose of this is to enable centralized commenting of these important and tricky functions.
 
413 6830 d 21 h jermar /SPARTAN/trunk/ Rename cpu_priority_{high|low|restore|read} functions to interrupts_{disable|enable|restore|read}.
Rename pri_t to ipl_t (Interrupt Priority Level).
Rename thread_t::pri to thread_t::priority.
 
411 6832 d 1 h jermar /SPARTAN/trunk/ Doxygen comments.  
410 6832 d 2 h jermar /SPARTAN/trunk/ Doxygen-style comments.  
402 6838 d 10 h jermar /SPARTAN/trunk/ Add ALIGN() macro.

Fix usage of early_mapping() in main.c.
The previous version would not map part of the heap.
Please, review.