volatile (in comp.lang.c)
David Collier-Brown
daveb at geac.UUCP
Fri Apr 29 22:23:04 AEST 1988
In article <2642 at geac.UUCP> daveb at geac.UUCP (David Collier-Brown) writes:
| It is interesting to note that there have not been, to date,
| **any** other discussion of the necessity of "volatile" et all, only
| of their desirability in a given language, taking their necessity as
| **a given**.
In article <2082 at winchester.mips.COM> mash at winchester.UUCP (John Mashey) writes:
| This is an assertion of non-fact. There was such a discussion that
| ran for about a week, a month or so ago, at least in comp.lang.c.
| People gave examples of potential usage; some of us who have it and use
| it said so; I observed that both of our kernels had about 200
| instances of volatile, and we'd miss it a lot if it weren't there.
Sorry John, that's not a discussion of the necessity for such a
facility. (Yes, I read your article when it was published).
That your compiler-wriers believed that such was necessary **is**
germane, and I'll happily agree that, if found necessary by the
compiler-writers, one would be a little foolish to not use it (:-)).
I reiterate: the question of the necessity of certain information
for optimization purposes is:
1) in part architectural,
2) in part a question of compiler technology, and
3) open.
Specifically:
1) what architectures currently use asynchronously-changing
memory locations for program notification of events? DEC Vax,
various CDC boxes, MIPS(tm),...
2) what other programmer-visible alternatives are there?
Interrupts, event queues, (Hoare) monitors...
3) what is the state of compiler/translator technology for
the new architectures, especially for parallel processing? Is the
"volatile" question valid, has it been dealt with, and if so, how?
VLIW, (Brinch Hansen's) Edison, Concurrent <whatever>, etc...
--dave c-b
--
David Collier-Brown. {mnetor yunexus utgpu}!geac!daveb
Geac Computers International Inc., | Computer Science loses its
350 Steelcase Road,Markham, Ontario, | memory (if not its mind)
CANADA, L3R 1B3 (416) 475-0525 x3279 | every 6 months.
More information about the Comp.lang.c
mailing list