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
562 6735 d 16 h decky /kernel/trunk/generic/src/main/ fix typo  
561 6735 d 17 h decky /kernel/trunk/ better way of placing revision, timestamp and arch in banner  
534 6738 d 14 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6738 d 14 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
523 6744 d 18 h jermar /kernel/trunk/ Clean up.  
518 6746 d 11 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 6747 d 11 h jermar /kernel/trunk/ Implement basic kernel console command recognition.
Commands without arguments are now recognized.
 
512 6749 d 20 h jermar /kernel/trunk/ SMP work.
Add madt_irq_to_pin().
Make ksmp() use virtual irq_to_pin() function, which makes better sence for ACPI configurations.
 
510 6750 d 10 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.
 
506 6750 d 15 h decky /kernel/trunk/ preparation for init task loading  
503 6750 d 17 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 6750 d 19 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
470 6764 d 8 h jermar /SPARTAN/trunk/ ia64 work.
Big cleanup of IA-64 interrupt processing.
Merge of interrupt.c and interrupt_handler.c.
Rewrite of ivt.S and interrupt.c.
Higher level interrupt handlers are now passed a vector number and a pointer to stack structure.

ia32 work.
ia32 has ordered writes. Until it deploys weaker memory ordering model, write_barrier() can be empty statement.
 
463 6764 d 19 h decky /SPARTAN/trunk/ even fancier release/revision display  
462 6764 d 19 h decky /SPARTAN/trunk/ include svn revision and build time in the kernel  
460 6764 d 21 h decky /SPARTAN/trunk/ some fancy stuff  
458 6764 d 21 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
430 6771 d 12 h jermar /SPARTAN/trunk/ Move src/ and include/ to generic.  
414 6786 d 0 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 6786 d 10 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.
 
402 6793 d 23 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.
 
389 6799 d 22 h jermar /SPARTAN/trunk/ MIPS work.
Fix some name inconsistencies between cp0 functions' declarations and definitions.
Add and implement tlb_init_arch().
Add tlb_modified() exception handler.

Other architectures: add dummy tlb_init_arch().
 
374 6810 d 11 h jermar /SPARTAN/trunk/ Revert previous change in frame_t as it broke IA-64.
(Most likely some alignment problem.)

Rename heap_init(), malloc() and free(), respectively, to early_heap_init(), early_malloc() and early_free(), respectively.
Define new macros malloc() and free(). They are to be replaced by real functions some day.
 
373 6810 d 13 h jermar /SPARTAN/trunk/ Physical memory management work.
Add "__attribute__ ((packed))" to frame_t so that it takes up less space.
Note that this is essential as there is lot of these structures.
Remove busy list from zone_t as it is redundant.
 
369 6812 d 15 h jermar /SPARTAN/trunk/src/main/ The more physical frames, the more memory allocated for heap.  
298 6828 d 22 h decky /SPARTAN/trunk/ remove lower 2 GB identity mapping (IA-32)  
242 6831 d 20 h palkovsky /SPARTAN/trunk/ Fixed stack settings in boot.S in real mode.
Added ia32 memmap support.
Added cpuid support.
 
238 6832 d 16 h vana /SPARTAN/trunk/ Register dump on IA-64 exceptions  
235 6832 d 17 h decky /SPARTAN/trunk/ load the kernel above 1 MB on IA-32  
220 6833 d 2 h vana /SPARTAN/trunk/ Universal exception handler and all exceptions routine to call it added  
212 6833 d 12 h vana /SPARTAN/trunk/ Basic exception support added for ia64 arch ......  
210 6833 d 12 h decky /SPARTAN/trunk/ many PPC stuff, platform dependent arch.h header files  
207 6833 d 22 h decky /SPARTAN/trunk/ separated stack mapping  
192 6834 d 16 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.
 
184 6835 d 0 h jermar /SPARTAN/trunk/ Add lib/the.c.
Add and deploy the_initialize() and the_copy().

Make IA-32's before_thread_runs() use SP_DELTA macro.
 
180 6835 d 13 h jermar /SPARTAN/trunk/ Globalize 'size' and 'delta' and rename them to 'kernel_size' and 'heap_delta'.

Fix heap initialization to take 'heap_delta' into account.

Implement IA-64 get_stack_base().

Adjust SP_DELTA's to consider one extra word on stack.
(So that the stack pointer is within appropriate limits even on IA-64).

More #include cleanup.
 
177 6835 d 22 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.
 
174 6839 d 13 h jermar /SPARTAN/trunk/ Small changes.
Coding style fix in main.c.
Make 'cli' be the first instruction in boot.S again.
 
167 6845 d 21 h jermar /SPARTAN/trunk/ Switch over to per vm_t page tables. (breaks ia32 userspace)

Define dummy memcopy() for amd64 and ppc to satisfy compiler.

Get rid of problematic #include <arch/mm/page.h> in mm/page.h.

Indentation fixes and small changes here and there.
 
149 6869 d 14 h jermar /SPARTAN/trunk/ Fix IA-32's get_memory_size() to return size of memory in bytes instead of in kilobytes.
Some cosmetics in memory map detection.
The IA-32 kernel is functional again.