Subversion Repositories HelenOS-historic

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
938 6640 d 1 h jermar /kernel/trunk/ Basic support for loading ELF object files.
ia64, amd64, ia32 working.
mips32 requires some attention.
 
894 6653 d 3 h jermar /kernel/trunk/ Move i8042 driver to genarch as it might be used by more architectures.  
778 6676 d 1 h palkovsky /kernel/trunk/ Fixed boot process not to call malloc when slab not initialized.
Added simics workaround.
 
756 6679 d 20 h jermar /kernel/trunk/ Memory management work.
Remove the last (i.e. 'root') argument from page_mapping_insert() and page_mapping_find().
Page table address is now extracted from the first (i.e. 'as') argument.
Add a lot of infrastructure to make the above possible.
sparc64 is now broken, most likely because of insufficient identity mapping of physical memory.
 
684 6703 d 5 h jermar /kernel/trunk/ Memory management work.
Move generic 4-level page table interface to genarch
and enable architectures to use different virtual memory
mechanisms (e.g. page hash tables).
Start page hash table support.
Switch ia64 and sparc64 to page hash tables.
Other architectures keep on using 4-level page table interface.
 
680 6706 d 21 h decky /kernel/trunk/arch/ remove deprecated pre-grub stuff on ia32
prepare for the same on amd64
 
674 6707 d 8 h cejka /kernel/trunk/ Support for printing float numbers in kernel removed.  
568 6734 d 3 h palkovsky /kernel/trunk/ Configuration tweaks, now supports both CNF and DNF in config.file.  
550 6735 d 23 h palkovsky /kernel/trunk/ Completely reworked configuration system.  
534 6738 d 0 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6738 d 0 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6750 d 5 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
486 6757 d 21 h jermar /SPARTAN/trunk/ Revert to -O3 for all architectures as the mips32 bug got fixed.  
483 6758 d 0 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.
 
468 6764 d 2 h decky /SPARTAN/trunk/ fix IA-32 fences (1/2)  
460 6764 d 7 h decky /SPARTAN/trunk/ some fancy stuff  
458 6764 d 7 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
457 6764 d 8 h decky /SPARTAN/trunk/ new build system almost finished  
455 6764 d 20 h decky /SPARTAN/trunk/ new build system upgrade
finished work for IA-32, IA-64, PPC-32, SPARC-64
 
452 6765 d 0 h decky /SPARTAN/trunk/ major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient
 
430 6770 d 21 h jermar /SPARTAN/trunk/ Move src/ and include/ to generic.  
423 6776 d 4 h decky /SPARTAN/trunk/ Enable/disable CPU memory barriers at compile time  
422 6777 d 11 h jermar /SPARTAN/trunk/ Move ACPI code to genarch.
Enable it for ia32, amd64 and ia64.
For now, ia64 support is commented out.
 
408 6788 d 6 h decky /SPARTAN/trunk/ IA32 has_cpuid() inline
minor indentation fixes
 
381 6803 d 21 h jermar /SPARTAN/trunk/ Make cross-compiler the default compiler on IA-32.
For native compilations, use ./build.ia32 native.

Small changes elsewhere.
 
376 6808 d 3 h jermar /SPARTAN/trunk/ Move kernel build files one level up the directory tree.
Fix paths in your testing environment!
 
328 6823 d 8 h jermar /SPARTAN/trunk/ IA-32 can be now cross-compiled by ./build.ia32 cross.
Unify IA-32 Makefile.inc and Makefile.inc.cross.

Update doc/requirements.

Small changes elsewere.
 
326 6823 d 19 h palkovsky /SPARTAN/trunk/ Cleanup of makefiles to have common options in one main makefile.

Add simple build process for different simulators for MIPS.
Added FPU context & lazy FPU context switching to MIPS.
Cleanup of MIPS linker script.
Moved MIPS kernel above 1MB. Not tested on real machine yet, but it might help.

There is something broken with gcc inlined memcpy (either simulator or gcc), it is disabled on BigEndian mips now.
 
309 6827 d 10 h palkovsky /SPARTAN/trunk/ Added architecture independent hooks for fpu lazy context switching.
It is enabled by defining FPU_LAZY
 
301 6828 d 7 h palkovsky /SPARTAN/trunk/arch/ Backported amd64 build process back to ia32.  
293 6828 d 20 h palkovsky /SPARTAN/trunk/ Symbol table now contains static functions too.
NOTE: gcc heavily inlines, be aware of optimizations.

Removed excesive item from boot page tables.
 
289 6829 d 0 h palkovsky /SPARTAN/trunk/ Added preprocessed linker script to AMD architecture, so that
the constants are all only in the header files.
 
268 6830 d 3 h palkovsky /SPARTAN/trunk/ Added symbol table lookup in exceptions.
This breaks ia64 & ppc architecture compiles.
 
228 6832 d 5 h cejka /SPARTAN/trunk/ Created fmath as basic tool for IEEE 754 floating point numbers.
Added option $F for printf for printing "double" type.
 
195 6834 d 0 h vana /SPARTAN/trunk/ 1) memcopy and _memcopy functions rewriten to ANSI C norm.
2) Repaired ia32,ia64 and mips version of SPARTAN to work with this memcopy functions
3) Warning for non declared funcions added and repaired ia32,ia64 and mips versions to pass build process with this warning and Werror option
 
146 6874 d 5 h cejka /SPARTAN/trunk/ Memory size detection for ia32 completed.  
132 6875 d 8 h vana /SPARTAN/trunk/arch/ia32/ Added support for error-word generating exceptions in return routine.  
111 6919 d 0 h palkovsky /SPARTAN/trunk/ Code cleanup in scheduler.c thread.c - removed unnecessary spinlock.
atomic_inc, atomic_dec moved to arch/atomic.h instead of arch/smp/atomic.h,
advisable to use even in non-smp mode.
Fixed atomic_inc, atomic_dec in mips architecture.
 
105 6922 d 20 h jermar /SPARTAN/trunk/ Big changes in IA-32 address space map.
Now the kernel is mapped above 0x80000000. Finally!
Userspace address space starts at 0x00000000.
Changes in many places.
This improvement temporarily breaks SMP and most likely also other stuff.
Supported size of memory is now only 4M as it is the biggest size that can be mapped at once on IA-32.

Changes in linker script.
Changes required because of the above.
Do not patch hardcoded_* variables but assign to them instead.

Cosmetic changes here and there.
 
95 6932 d 9 h cejka /SPARTAN/trunk/arch/ia32/ Started memory map support.