Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
197 6840 d 5 h palkovsky /SPARTAN/trunk/ Context-save/restore in AMD64  
194 6840 d 7 h palkovsky /SPARTAN/trunk/arch/amd64/ Code cleanup.  
192 6840 d 7 h jermar /SPARTAN/trunk/ Dump implementation of THREAD, TASK and CPU.
Implement preemption-safe versions of THREAD, TASK and CPU using THE.
Get rid of CPU_ID_ARCH on all architectures.
Get rid of write_dr0() and read_dr0() on IA-32.
Get rid of cpu_private_data and cpu_private_data_t.
 
188 6840 d 10 h palkovsky /SPARTAN/trunk/arch/amd64/ AMD64 now can switch into long mode.
Basic page tables working.
 
178 6841 d 11 h palkovsky /SPARTAN/trunk/arch/amd64/ Fixed linker script to include .eh_frame section.
It now boots into protected mode.
 
177 6841 d 13 h jermar /SPARTAN/trunk/ Add some comments to IA-32 src/boot/boot.S and src/smp.S.

Make the boot stack start on page boundary.
This is required by get_stack_base().

Define 'THE' macro.

Implement preemption_disable() and preemption_enable().

Add memory barrier macros.
IA-32 macros need support for older processors.
Non IA-32 macros are dummy.

Reduction of many #include paths.
 
173 6845 d 4 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.
 
172 6846 d 13 h palkovsky /SPARTAN/trunk/arch/amd64/ Do not allow red area on stack in kernel mode.
Small updates for AMD64 memory layout.
 
169 6850 d 3 h jermar /SPARTAN/trunk/arch/ For each architecture, add an extra type cast of x to __address to both KA2PA() and PA2KA().  
164 6853 d 6 h palkovsky /SPARTAN/trunk/ Basics for amd64 architecture. It does compile, but it does not work yet.