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
756 6683 d 8 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 6706 d 17 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 6710 d 10 h decky /kernel/trunk/arch/ remove deprecated pre-grub stuff on ia32
prepare for the same on amd64
 
674 6710 d 21 h cejka /kernel/trunk/ Support for printing float numbers in kernel removed.  
568 6737 d 16 h palkovsky /kernel/trunk/ Configuration tweaks, now supports both CNF and DNF in config.file.  
550 6739 d 11 h palkovsky /kernel/trunk/ Completely reworked configuration system.  
534 6741 d 13 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6741 d 13 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6753 d 17 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
486 6761 d 10 h jermar /SPARTAN/trunk/ Revert to -O3 for all architectures as the mips32 bug got fixed.  
483 6761 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.
 
468 6767 d 15 h decky /SPARTAN/trunk/ fix IA-32 fences (1/2)  
460 6767 d 19 h decky /SPARTAN/trunk/ some fancy stuff  
458 6767 d 20 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
457 6767 d 20 h decky /SPARTAN/trunk/ new build system almost finished  
455 6768 d 8 h decky /SPARTAN/trunk/ new build system upgrade
finished work for IA-32, IA-64, PPC-32, SPARC-64
 
452 6768 d 12 h decky /SPARTAN/trunk/ major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient
 
430 6774 d 10 h jermar /SPARTAN/trunk/ Move src/ and include/ to generic.  
423 6779 d 16 h decky /SPARTAN/trunk/ Enable/disable CPU memory barriers at compile time  
422 6780 d 23 h jermar /SPARTAN/trunk/ Move ACPI code to genarch.
Enable it for ia32, amd64 and ia64.
For now, ia64 support is commented out.
 
408 6791 d 18 h decky /SPARTAN/trunk/ IA32 has_cpuid() inline
minor indentation fixes
 
381 6807 d 9 h jermar /SPARTAN/trunk/ Make cross-compiler the default compiler on IA-32.
For native compilations, use ./build.ia32 native.

Small changes elsewhere.
 
376 6811 d 15 h jermar /SPARTAN/trunk/ Move kernel build files one level up the directory tree.
Fix paths in your testing environment!
 
328 6826 d 21 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 6827 d 7 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 6830 d 22 h palkovsky /SPARTAN/trunk/ Added architecture independent hooks for fpu lazy context switching.
It is enabled by defining FPU_LAZY
 
301 6831 d 19 h palkovsky /SPARTAN/trunk/arch/ Backported amd64 build process back to ia32.  
293 6832 d 9 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 6832 d 13 h palkovsky /SPARTAN/trunk/ Added preprocessed linker script to AMD architecture, so that
the constants are all only in the header files.
 
268 6833 d 16 h palkovsky /SPARTAN/trunk/ Added symbol table lookup in exceptions.
This breaks ia64 & ppc architecture compiles.
 
228 6835 d 17 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 6837 d 13 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 6877 d 18 h cejka /SPARTAN/trunk/ Memory size detection for ia32 completed.  
132 6878 d 21 h vana /SPARTAN/trunk/arch/ia32/ Added support for error-word generating exceptions in return routine.  
111 6922 d 12 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 6926 d 8 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 6935 d 22 h cejka /SPARTAN/trunk/arch/ia32/ Started memory map support.  
92 6939 d 15 h jermar /SPARTAN/trunk/ FPU work.
FPU code cleanup, add/fix copyright notices where needed.
Fix PI calculation to use double n instead of int n.
Make FPU test #1 even more stressing.

Re-enable O3 again.
Revert Makefile.config not to compile in any tests.
 
90 6940 d 12 h vana /SPARTAN/trunk/ Set TS flag on system startup.
Some bugs in FPU context switching seem to persist.
Optimalization on IA-32 disabled.
 
52 6951 d 10 h vana /SPARTAN/trunk/ Move fpu_context switching functions from context.s to fpu_context.c on all platforms.
Add fpu_context.h.

Make before_thread_runs() arch-independent and create arch dependent version before_thread_runs_arch().