Re: VMS

Liste des GroupesRevenir à ol misc 
Sujet : Re: VMS
De : invalid (at) *nospam* invalid.invalid (Richard Kettlewell)
Groupes : comp.os.linux.misc
Date : 20. Jun 2025, 21:19:35
Autres entêtes
Organisation : terraraq NNTP server
Message-ID : <wwvldpm17zc.fsf@LkoBDZeT.terraraq.uk>
References : 1 2 3 4 5 6 7 8 9 10 11 12
User-Agent : Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
Rich <rich@example.invalid> writes:
Ada accomplished it years ago (i.e., Rust is nothing new in that
regard).  But....  it did so by inserting in the compiled output all
the checks for buffer sizes before use and checks of error return codes
that so often get omitted in C code.  And the performance hit was
sufficient that Ada only found a niche in very safety critical
environments (aircraft avionics, etc.).

I don’t know what Ada’s approach was in detail, but I have a few points
to make here.

First, just because an automated check isn’t reflected in comparable C
code doesn’t mean the check isn’t necessary; and as the stream of
vulnerabilities over the last few decades show, often omitted checks
_are_ necessary. Comparing buggy C code with correctly functioning Ada
code is not really an argument for using C.

Secondly, many checks can be optimized out. e.g. iterating over an array
(or a prefix of it) doesn’t need a check on every access, it just needs
a check that the loop bound doesn’t exceed the array bound[1]. This kind
of optimization is easy mode for compilers;
https://godbolt.org/z/Tz5KGq6vais shows an example in C++ (the at()
method is bounds-checked array indexing).

  [1] provided of course that the array can’t change size during the
      loop; experience doesn’t really support the idea that humans are
      good at noticing whether this condition is true.

Finally, on all but the least powerful microprocessors, a correctly
predicted branch is almost free, and a passed bounds check is easy mode
for a branch predictor.

With that in mind, with compilers and microprocessors from this century,
the impact of this sort of thing is rather small. (Ada dates back to
1980, at which time a lot of these technologies were much less mature.)

--
https://www.greenend.org.uk/rjk/

Date Sujet#  Auteur
14 Jun 25 * Re: VMS116Bobbie Sellers
14 Jun 25 +* Re: VMS107Andreas Eder
15 Jun 25 i`* Re: VMS106Lawrence D'Oliveiro
15 Jun 25 i +* Re: VMS11rbowman
15 Jun 25 i i`* Re: VMS10c186282
15 Jun 25 i i +* Re: VMS5The Natural Philosopher
16 Jun 25 i i i`* Re: VMS4c186282
18 Jun 25 i i i `* Re: VMS3c186282
18 Jun 25 i i i  `* Re: VMS2rbowman
18 Jun 25 i i i   `- Re: VMS1c186282
15 Jun 25 i i `* Re: VMS4rbowman
16 Jun 25 i i  `* Re: VMS3c186282
16 Jun 25 i i   `* Re: VMS2rbowman
16 Jun 25 i i    `- Re: VMS1c186282
15 Jun 25 i `* Re: VMS94c186282
18 Jun 25 i  `* Re: VMS93candycanearter07
18 Jun 25 i   `* Re: VMS92c186282
18 Jun 25 i    +* Re: VMS3candycanearter07
18 Jun 25 i    i`* Re: VMS2Rich
19 Jun 25 i    i `- Re: VMS1rbowman
19 Jun 25 i    `* Re: VMS88Richard Kettlewell
20 Jun 25 i     +* Re: VMS85c186282
20 Jun 25 i     i+* Re: VMS76Richard Kettlewell
20 Jun 25 i     ii+* Re: VMS73The Natural Philosopher
20 Jun 25 i     iii+- Re: VMS1Richard Kettlewell
20 Jun 25 i     iii+* Re: VMS70Rich
20 Jun 25 i     iiii+* Re: VMS64The Natural Philosopher
21 Jun 25 i     iiiii`* Re: VMS63Rich
21 Jun 25 i     iiiii +- Re: VMS1The Natural Philosopher
21 Jun 25 i     iiiii `* Re: VMS61rbowman
21 Jun 25 i     iiiii  `* Re: VMS60Robert Riches
21 Jun 25 i     iiiii   +- Re: VMS1c186282
21 Jun 25 i     iiiii   +- Re: VMS1rbowman
22 Jun 25 i     iiiii   `* Re: VMS57candycanearter07
22 Jun 25 i     iiiii    +* Re: VMS3Richard Kettlewell
22 Jun 25 i     iiiii    i`* Re: VMS2The Natural Philosopher
23 Jun 25 i     iiiii    i `- Re: VMS1c186282
22 Jun 25 i     iiiii    +* Re: VMS3rbowman
23 Jun 25 i     iiiii    i`* Re: VMS2candycanearter07
23 Jun 25 i     iiiii    i `- Re: VMS1rbowman
24 Jun 25 i     iiiii    +* Re: VMS49Robert Riches
24 Jun 25 i     iiiii    i+* Re: VMS6rbowman
24 Jun 25 i     iiiii    ii`* Re: VMS5rbowman
24 Jun 25 i     iiiii    ii `* Re: VMS4The Natural Philosopher
25 Jun06:36 i     iiiii    ii  `* Re: VMS3c186282
25 Jun07:31 i     iiiii    ii   `* Re: VMS2The Natural Philosopher
25 Jun08:08 i     iiiii    ii    `- Re: VMS1c186282
24 Jun 25 i     iiiii    i+* Re: VMS7Richard Kettlewell
25 Jun04:01 i     iiiii    ii`* Re: VMS6Robert Riches
25 Jun06:59 i     iiiii    ii `* Re: VMS5c186282
25 Jun07:52 i     iiiii    ii  +- Re: VMS1rbowman
25 Jun17:32 i     iiiii    ii  `* Re: VMS3John Ames
25 Jun17:44 i     iiiii    ii   `* Re: VMS2John Ames
26 Jun00:01 i     iiiii    ii    `- Re: VMS1c186282
27 Jun07:00 i     iiiii    i`* Re: VMS35candycanearter07
27 Jun08:37 i     iiiii    i `* Re: VMS34Richard Kettlewell
27 Jun08:45 i     iiiii    i  +* Re: VMS4The Natural Philosopher
27 Jun18:27 i     iiiii    i  i`* Re: VMS3c186282
27 Jun19:13 i     iiiii    i  i `* Re: VMS2The Natural Philosopher
28 Jun14:16 i     iiiii    i  i  `- Re: VMS1Chris Ahlstrom
27 Jun18:24 i     iiiii    i  `* Re: VMS29c186282
27 Jun18:40 i     iiiii    i   `* Re: VMS28rbowman
27 Jun19:20 i     iiiii    i    +* Re: VMS4Lew Pitcher
28 Jun00:03 i     iiiii    i    i`* Re: VMS3Lawrence D'Oliveiro
28 Jun06:13 i     iiiii    i    i `* Re: VMS2c186282
28 Jun07:10 i     iiiii    i    i  `- Re: VMS1rbowman
27 Jun23:16 i     iiiii    i    `* Re: VMS23c186282
28 Jun08:52 i     iiiii    i     `* Re: VMS22Richard Kettlewell
29 Jun04:16 i     iiiii    i      `* Re: VMS21c186282
29 Jun08:18 i     iiiii    i       `* Re: VMS20Richard Kettlewell
30 Jun00:09 i     iiiii    i        `* Re: VMS19c186282
30 Jun08:36 i     iiiii    i         +* Re: VMS17The Natural Philosopher
30 Jun08:51 i     iiiii    i         i+* Re: VMS11Richard Kettlewell
30 Jun08:59 i     iiiii    i         ii+* Re: VMS3The Natural Philosopher
30 Jun09:33 i     iiiii    i         iii`* Re: VMS2Lawrence D'Oliveiro
30 Jun17:08 i     iiiii    i         iii `- Re: VMS1John Ames
30 Jun09:00 i     iiiii    i         ii+* Re: VMS4Richard Kettlewell
30 Jun09:24 i     iiiii    i         iii`* Re: VMS3The Natural Philosopher
30 Jun09:34 i     iiiii    i         iii `* Re: VMS2Lawrence D'Oliveiro
1 Jul04:30 i     iiiii    i         iii  `- Re: VMS1c186282
1 Jul04:26 i     iiiii    i         ii`* Re: VMS3c186282
1 Jul10:49 i     iiiii    i         ii `* Re: VMS2The Natural Philosopher
1 Jul13:44 i     iiiii    i         ii  `- Re: VMS1Lew Pitcher
30 Jun08:54 i     iiiii    i         i+* Re: VMS2Lawrence D'Oliveiro
30 Jun19:10 i     iiiii    i         ii`- Re: VMS1rbowman
1 Jul04:12 i     iiiii    i         i`* Re: VMS3c186282
1 Jul05:02 i     iiiii    i         i `* Re: VMS2rbowman
1 Jul17:42 i     iiiii    i         i  `- Re: VMS1c186282
30 Jun08:56 i     iiiii    i         `- Re: VMS1Richard Kettlewell
27 Jun20:40 i     iiiii    `- Re: VMS1Rich
20 Jun 25 i     iiii`* Re: VMS5Richard Kettlewell
21 Jun 25 i     iiii +* Re: VMS2Rich
21 Jun 25 i     iiii i`- Re: VMS1Richard Kettlewell
21 Jun 25 i     iiii `* Re: VMS2Lawrence D'Oliveiro
21 Jun 25 i     iiii  `- Re: VMS1c186282
21 Jun 25 i     iii`- Re: VMS1c186282
21 Jun 25 i     ii`* Re: VMS2c186282
21 Jun 25 i     ii `- Re: VMS1rbowman
20 Jun 25 i     i+* Re: VMS6The Natural Philosopher
20 Jun 25 i     ii+- Re: VMS1Rich
21 Jun 25 i     ii+* Re: VMS2Lawrence D'Oliveiro
21 Jun 25 i     ii`* Re: VMS2Richard Kettlewell
20 Jun 25 i     i`* Re: VMS2Rich
20 Jun 25 i     `* Re: VMS2Lawrence D'Oliveiro
15 Jun 25 `* Re: VMS8Rich

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal