Domain: uni-mb.si
Stories and comments across the archive that link to uni-mb.si.
Comments · 6
-
Re:Alpha
- effectively using Registers for argument passing
- no need for real mode switch to access firmware/Bios
- thread switches in less than 50 cycles
- a memory table lookup in less than 50 cycles, or occasionally even COW and dirty pages flushing without table lookup at all
Register passing has always been supported, of course passing more than 4 parms was a problem, but not that much of a problem considering research about this pointed out that most C functions had less than 4 parameters. Even so, the x86-64 extended this enough that its really a non issue.
Modern BIOS's have 32-bit entry points, which are used by all major OS's. This has been true for a long time. This isn't really an x86 issue so much as a platform issue anyway..
Trust me on this one, the x86 compares very favorably to other high performace CPU's on actual absolute context switch times in major OS's. These numbers are a lot more complicated than just counting the cycles the manual says it takes for the sysenter call (for example TLB flushing if nessisary and associated reloads, etc). A quick google search provides an old example: http://www.ro.feri.uni-mb.si/predst/martin/4_12_2
0 00/301specs.html. and another http://www.ebsnetinc.com/RTKernel-RISC-real-time-p erformance.php. I've seen some more recent charts and they say similar things. The OS ive worked on had hundreds of lines of code (PPC based and another ARM based) to do the same thing the x86 was doing in just a few heavier instructions and the net result was a wash.I'm not sure what in particular your talking about (memory table lookup? hu? sounds like your talking about indexed address modes). The talk about COW and dirty page flushing sounds like don't know about the INVLPG instruction. COW and dirty page flushing are OS functions having single TLB invalidate instrucitons like INVLPG make that as simple as updating the page, followed by TLB invalidate.
- effectively using Registers for argument passing
-
mISDN and PBX4Linux can do this
Well, you guessed right, Linux can do this!
A few links:
Linux 2.6 and mISDN HowTo
PBX4LinuxHave fun!
-
Re:At least
I wonder how we must understand this sentence in the article. Is it : "We know IE is pretty bad but don't switch to Linux, use Firefox and everything will be ok." ? I strongly recommand reading this PDF file about this topic, it is A Comparison of the GPL and the Microsoft EULA that could as well be named "EULA and GPL explained to non-lawyers". I think that windows users should know what they really agreed to.
-
INES
-
Re:Font Copyright....
Read More about how fonts/typefaces can/can't be trademarked, patented, copyrighted, etc.
-
MicrocontrollerIf you're interested in microcontroller projects you might want to consider Atmel's AVR series. Atmel has a selection matrix which shows the AVR variants available. Some of the advantages over PICs:
- You can use Steven Bolt's sp12 programmer which requires just a crystal and a few caps and resistors to build a stand-alone programmer, or requires nothing more than connectors and a few series resistors for an in-circuit-programming version.
- All parts are flash based, not just a select few.
- A low end established flash based part is available with a UART.
- Flash parts are available with PWM channels, A/D converters, 16 bit timers, SPI and analog comparators.
- A starter kit is available for $49 USD that comes with an in-circuit programming dongle and a demo board.
- The series includes devices with between 1KB and 128KB of flash program storage.
- (My favourite feature) GNU Binutils, GCC and even GDB target the AVR line. It's a joy to have access to a free and Free macro assembler and C compiler. Many micros come with free assemblers but these are often buggy and lack features, and it's very rare to get a free C compiler.
(Note that the latest binutils release supports the AVR, but the AVR GCC support is available as a patch to 2.95.2 at the location given above, or in the latest CVS & snapshots of GCC. The server hosting the patches seems to be down and has been for a short while, so Google's caching might come in handy. Google won't let me link directly to the cached version so just to to the cache of the first link for this search.)