[rescue] Parallel ports [was Re: Slightly OT: ?Bad Cap Saga]
Curious George
jorge234q at yahoo.com
Fri Aug 22 14:16:16 CDT 2008
--- On Fri, 8/22/08, der Mouse <mouse at Rodents-Montreal.ORG> wrote:
> >> Because that's output-only, not "the output one byte, input one
> >> byte, repeat" paradigm I'm actually using.
> > But you're controlling *relays*... (??)
>
> Oh, two different projects. The relay controller, yes, is
> open-loop.
>
> I've done two others, each of which uses the send/read/send/read
> paradigm. One is the ROM reader I alluded to briefly upthread; the
> other is a cable pinout sensor (plug a cable in and the host driving it
> can sense which pins are connected to which other pins).
But, neither is going to suddenly become impractical if you have
10,000 traps vs. *1* trap. And, certainly the rest of the
system isn't going to cringe if you burn a few gazillion
CPU cycles trying to read 64Kbytes out of a PROM...
If you're trying to do something that needs its own processor,
then *give it* it's own processor! If you're trying to do
something that's just exploits the "convenience" of having a
processor to do the work (e.g., turn on your desk lamp each
morning based on whether or not your calendar(1) says you
have a meeting that day), then chances are it won't matter
how inefficient the code is.
I wrote a routine to crack a security device (essentially
a FSM with 8 bits of state and 8 inputs). It just hammered
away at the device building a state transition table from
each set of (current state, inputs) data. Each iteration
required a write to the device and a read from it. It
ran in user-land (because the OS was "closed"). The time
it took to run was less than the time it took to write the
results file!
> >>> and more *portable* and future-safe on the "host" (PC) side.
> >> As for the latter, there is no such thing.
> > Note that I didn't use the superlative in my description. Just MORE
> > future-safe.
>
> My misreading, then; I read "(more portable) and
> (future-safe)", rather than "more (portable and future-safe)".
>
> > Thinking this out can be a real win. E.g., like UN*X opting to treat
> > everything as files.
>
> ...except things that aren't. Network interfaces.
> Shared memory segments. ioctl(). sysctl().
Sure! There are exceptions to everything. Otherwise, there
would onoy be a need for *one* OS, one text editor, one PCB
layout tool, one geek port, etc. You try to come up with a
solotion that gives you 80% of the solution for 20% of the
work. The other 20% you either *ignore* or "spend disproportionately
more resources on"
> Also, a paradigm like that can be as constraining as any other. I once
> was hired to build glue code between an experimental encrypted
> distributed storage paradigm and the Unix filesystem paradigm.
> It took me six months.
More information about the rescue
mailing list