Rev |
Age |
Author |
Path |
Log message |
Diff |
252 |
6914 d 11 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
Added volatile to inb/outb, so that it does not optimeze
lot of things out anymore.
Working delay loop. |
|
251 |
6914 d 18 h |
palkovsky |
/SPARTAN/trunk/ |
Changes, that were needed to make it work on Bochs.
- We CAN use the NX bit in paging tables, but we have
to initialize the NXE bit in EFER register first. |
|
248 |
6915 d 0 h |
jermar |
/SPARTAN/trunk/ |
Make atomic_dec() and atomic_inc() take (volatile int *) argument, not (volatile count_t *). |
|
245 |
6915 d 1 h |
palkovsky |
/SPARTAN/trunk/ |
Use ia32 memmap.h/memmapash.h |
|
242 |
6915 d 4 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed stack settings in boot.S in real mode.
Added ia32 memmap support.
Added cpuid support. |
|
241 |
6915 d 22 h |
palkovsky |
/SPARTAN/trunk/ |
Cleanups so that it compiles on ia-32 & amd-64 cleanly |
|
230 |
6916 d 2 h |
cejka |
/SPARTAN/trunk/arch/ |
Created fmath as basic tool for IEEE 754 floating point numbers.
Added option $F for printf for printing "double" type. |
|
226 |
6916 d 3 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed typo in 'outb' instruction.
Paging basically working. |
|
224 |
6916 d 8 h |
palkovsky |
/SPARTAN/trunk/arch/ |
Interrupts for amd64. |
|
219 |
6916 d 17 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed bad type in frame.c.
Amd64 prints banner. |
|
216 |
6916 d 18 h |
palkovsky |
/SPARTAN/trunk/ |
hardcoded_symbol fixed into linker script on amd64/ia32/mips architecture |
|
211 |
6916 d 20 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
SVN cleanup |
|
210 |
6916 d 20 h |
decky |
/SPARTAN/trunk/ |
many PPC stuff, platform dependent arch.h header files |
|
206 |
6917 d 7 h |
palkovsky |
/SPARTAN/trunk/ |
Better types for ia32 drivers, so that they can be reused in amd64.
Build script cleanup amd64.
New code / not working yet / in amd64. |
|
200 |
6917 d 20 h |
palkovsky |
/SPARTAN/trunk/ |
Added putchar to AMD |
|
197 |
6917 d 22 h |
palkovsky |
/SPARTAN/trunk/ |
Context-save/restore in AMD64 |
|
194 |
6918 d 0 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
Code cleanup. |
|
192 |
6918 d 0 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 |
6918 d 3 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
AMD64 now can switch into long mode.
Basic page tables working. |
|
178 |
6919 d 4 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
Fixed linker script to include .eh_frame section.
It now boots into protected mode. |
|
177 |
6919 d 6 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 |
6922 d 21 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 |
6924 d 5 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
Do not allow red area on stack in kernel mode.
Small updates for AMD64 memory layout. |
|
169 |
6927 d 20 h |
jermar |
/SPARTAN/trunk/arch/ |
For each architecture, add an extra type cast of x to __address to both KA2PA() and PA2KA(). |
|
164 |
6930 d 23 h |
palkovsky |
/SPARTAN/trunk/ |
Basics for amd64 architecture. It does compile, but it does not work yet. |
|