|
From: Jake H. <jh...@an...> - 2004-10-28 23:58:47
|
I am busy preparing my next "mega-patch" for the kernel which will: * add support for SSE/SSE2 and lazy floating-point context switching, * inline numerous short assembly language functions from intel.s, * fix a few signal handling and fork/exec context initialization bugs, * correct numerous typos and grammatical errors in the source code, * improve the performance of allocating and freeing memory pages, and * integrate the latest version of <atheos/isa_io.h> and "inc/io_ports.h" from Linux (the second one gives us more readable code since I was able to replace "0x20" with "PIC_MASTER_CMD", "0x43" with "PIT_MODE", and so on throughout the i8259A access code). I'm also halfway done with integrating the latest TSC timer code from Linux which uses the Pentium internal clock to give sub-microsecond precision to the udelay() and get_system_time() calls. It's necessary to have the best possible accuracy for gettimeofday() in order for LMbench to give accurate results in a short benchmarking run. Right now, LMbench says it is only accurate to 1000000us, compared to 5000us precision under Linux, which is the best possible result (1000000us is the worst possible result). Anyway, I will try to have those patches posted to syllable-kernel list tomorrow afternoon for y'all. I finally got around to installing Syllable onto a native partition on my laptop and it is super fast! I was able to make some small improvements to Syllable's performance under VMware, but it is still a very slow OS to emulate. Compiling things takes at least 10x longer in VMware than natively so be forewarned if you are thinking of going that route for development. Cheers, Jake |