Rev |
Age |
Author |
Path |
Log message |
Diff |
1731 |
6710 d 22 h |
jermar |
/kernel/trunk/ |
Updates in Doxygen-style comments.
Make architecture specific modules appear conditionally in the documentation.
Add time management module.
Improve names of other modules and sort module order
to be more like in the design documentation. |
|
1705 |
6714 d 12 h |
cejka |
/kernel/trunk/ |
Added file with modules definitions and descriptions.
We are able to change modules order and their description in one place. |
|
1702 |
6715 d 9 h |
cejka |
/kernel/trunk/ |
Kernel doxygen comments updated. |
|
1697 |
6716 d 3 h |
palkovsky |
/kernel/trunk/arch/ |
Fixed incorrect atomic_postinc/postdec...again... |
|
1692 |
6717 d 6 h |
palkovsky |
/kernel/trunk/arch/amd64/include/ |
Fix prein/predec instructions to be the same as on ia32. |
|
1595 |
6722 d 16 h |
palkovsky |
/kernel/trunk/ |
Added kernel circular buffer klog.
Added automatic killing of tasks raising inappropriate exceptions.
TODO: Fix vsnprintf return value(and behaviour according to specs) and remove workaround in klog. |
|
1511 |
6726 d 8 h |
palkovsky |
/kernel/trunk/arch/ |
Remove __address from include file included by uspace |
|
1477 |
6727 d 18 h |
decky |
/kernel/trunk/arch/ |
cleanup |
|
1473 |
6728 d 3 h |
decky |
/kernel/trunk/ |
kernel support for text-only framebuffer |
|
1423 |
6732 d 10 h |
jermar |
/kernel/trunk/ |
Update page fault handlers to distinguish between different access modes that had caused the page fault. |
|
1411 |
6735 d 6 h |
jermar |
/kernel/trunk/ |
Modify the hierarchy of page fault handlers to pass access mode that caused the fault.
Architectures are required to pass either PF_ACCESS_READ, PF_ACCESS_WRITE or PF_ACCESS_EXEC
to as_page_fault(), depending on the cause of the fault. |
|
1292 |
6754 d 8 h |
vana |
/kernel/trunk/arch/ |
VESA FB cut unwanted |
|
1289 |
6754 d 10 h |
vana |
/kernel/trunk/arch/ |
Amd64 framebuffer |
|
1288 |
6754 d 11 h |
jermar |
/kernel/trunk/ |
Complete implementation of copy_from_uspace() and copy_to_uspace()
for amd64 and ia32. Other architectures still compile and run,
but need to implement their own assembly-only memcpy(), memcpy_from_uspace(),
memcpy_to_uspace() and their failover parts. For these architectures
only dummy implementations are provided. |
|
1256 |
6760 d 8 h |
jermar |
/kernel/trunk/arch/ |
Improve SYS_IOSPACE_ENABLE support.
The general protection fault handler now contains
code to service early I/O Permission bitmap faults. |
|
1251 |
6761 d 9 h |
jermar |
/kernel/trunk/ |
Fix BITS2BYTES macro to return 0 when passed 0 as argument.
Fix ia32 TSS segment granularity to be 0.
Fix ia32 and amd64 initial TSS limit to be 103.
Little textual changes here and there. |
|
1212 |
6767 d 5 h |
palkovsky |
/kernel/trunk/ |
Added uspace call to enable/disable interrupts. |
|
1203 |
6772 d 7 h |
jermar |
/kernel/trunk/arch/ |
Full implementation of amd64 and ia32 SYS_ENABLE_IOSPACE syscall.
Needs testing. |
|
1201 |
6772 d 7 h |
jermar |
/kernel/trunk/arch/ |
Fix amd64 and ia32 management of I/O bitmap in before_task_runs_arch()
by treating the iomap array as a bitmap. Make use of the bitmap type
and functions added in previous commit. |
|
1187 |
6776 d 6 h |
jermar |
/kernel/trunk/ |
Cleanup pm.c and pm.h code on ia32 and amd64.
Add before_task_runs() and before_task_runs_arch() for each architecture.
Add ia32 and amd64 code to ensure I/O Permission Bitmap update. |
|
1186 |
6776 d 7 h |
jermar |
/kernel/trunk/arch/ |
Replace assembly from pm.c with new inline functions defined in asm.h. |
|
1184 |
6776 d 9 h |
jermar |
/kernel/trunk/ |
Move arch/thread.h to arch/proc/thread.h on all architectures.
Replace ARCH_THREAD_DATA with new thread_arch_t arch on all architectures.
Similarily, add task_arch_t arch on all architectures.
On amd64 and ia32, grow the TSS segment by 64K + 1B to support IO port
permission bitmap. For the same reason, define per task IO port permission bitmaps
on ia32 and amd64. |
|
1121 |
6797 d 2 h |
jermar |
/kernel/trunk/ |
Small textual changes. |
|
1112 |
6797 d 13 h |
palkovsky |
/kernel/trunk/ |
Added basic kernel infrastructure for ThreadLocalStorage(TLS) for
ia32(complete),amd64(complete),mips32(missing emulation of rdhwr instruction). |
|
1104 |
6798 d 6 h |
jermar |
/kernel/trunk/ |
Define atomic_t only once in atomic.h
Change the encapsulated counter type to long so that it supports negative values as well. |
|
1100 |
6800 d 3 h |
palkovsky |
/kernel/trunk/ |
Cleanup of spinlocks, now compiles both ia32 and amd64 with
and without DEBUG_SPINLOCKS. Made spinlocks inline.
Moved syscall_handler to generic (it was identical for ia32,amd64 & mips32).
Made slightly faster syscall for ia32.
Made better interrupt routines for ia32.
Allow not saving non-scratch registers during interrupt on ia32,amd64,mips32.
Aligned interrupt handlers on ia32,amd64, this should prevent problems
with different instruction lengths. |
|
1077 |
6803 d 10 h |
palkovsky |
/kernel/trunk/ |
Modified debugger to be able to coexist in AS watch mode and SMP. |
|
1072 |
6803 d 12 h |
palkovsky |
/kernel/trunk/ |
Added debugger to AMD64.
Added automatic debugging of AS if it is not rewritten with zero.
Did small changes to IPC infrastructure. |
|
1070 |
6803 d 13 h |
jermar |
/kernel/trunk/ |
More checks for address space area conflicts. |
|
1064 |
6803 d 23 h |
palkovsky |
/kernel/trunk/arch/amd64/ |
Cleanup of amd64 code. |
|
1063 |
6803 d 23 h |
palkovsky |
/kernel/trunk/ |
Add support for more then 2GB of address space for AMD64. |
|
1051 |
6804 d 7 h |
jermar |
/kernel/trunk/arch/amd64/ |
Move amd64's ident_page_mapper() and page_fault() to page.h. |
|
1050 |
6804 d 7 h |
palkovsky |
/kernel/trunk/ |
Added null console for buffering output when no real output available.
Added identity mapper for AMD64 that allows whole physical memory to be
accessed before paging is initialized. |
|
1024 |
6805 d 4 h |
jermar |
/kernel/trunk/ |
Redefine semantics of unary atomic operations.
Add test to verify that an architecture understands the semantics correctly. |
|
1021 |
6805 d 5 h |
jermar |
/kernel/trunk/ |
Hopefully final version of interrupt handlers for amd64 and ia32.
amd64 has been especially tricky to debug.
Error code detection is now done in compile time. |
|
984 |
6806 d 8 h |
palkovsky |
/kernel/trunk/arch/ |
Fixed invlpg for ia32 & amd64. |
|
977 |
6806 d 9 h |
jermar |
/kernel/trunk/ |
Add sys_mremap() syscall. |
|
967 |
6806 d 13 h |
palkovsky |
/kernel/trunk/ |
Allowed userspace to include page.h. |
|
959 |
6807 d 2 h |
palkovsky |
/kernel/trunk/ |
New synchronous ipc.
Widened syscall to support up to 5 parameters. |
|
958 |
6807 d 3 h |
jermar |
/kernel/trunk/ |
Nicer ia32 interrupt handlers and structures holding interrupted context data.
Unify the name holding interrupted context data on all architectures to be istate. |
|