Der Wikipedia Artikel zu den Sicherheitsaspekten von OpenBSD sagt viel darüber aus, warum D besser als C und C++ ist
-
Denn solche Fehler wie in C oder C++ und in dem Artikel beschrieben gibt es in D nicht:
http://de.wikipedia.org/wiki/OpenBSD-SicherheitsmerkmaleEs ist ja schon Mist, wenn daher für OpenBSD extra eigene neue Funktionen Namens strlcpy und strlcat programmiert werden mußten, um die C typischen Funktionen
strcpy und strcat und auch strncpy und strncat vollständig zu ersetzen, weil
diese alle by Design unsicher sind und von der Kompetenz des Programmierers abhängen, damit der keinen Mist baut.D hat solche Schnitzer nicht.
Fazit:
Ein OS das in D programmiert werden würde, wäre by Design schon sehr sicher.
-
Du hast es doch selbst schon gesagt, es hängt von der Kompetenz des Programmierers ab. Wenn der Programmierer kompetent ist, wird es mit strcpy und Konsorten keine Probleme geben. Wenn der Programmierer inkompetent ist, wird er größere Fehler bauen, als nur nen zu kleinen Buffer o.ä. bereitzustellen.
Letztlich komme ich zu folgenden Schluss: Wenn ein Metzger dazu neigt, sich seine Hände abzuhacken, könnte man natürlich Schutzhandschuhe vorschreiben. Besser wäre es aber, einfach den Metzger auszutauschen. Dann leidet auch die Arbeitsgeschwindigkeit nicht darunter, denn der Metzger mit den Schutzhandschuen würde immer etwas länger brauchen, wegen dem zusätzlichen Gewicht!
-
D Fan schrieb:
Fazit:
Ein OS das in D programmiert werden würde, wäre by Design schon sehr sicher.
-
D Fan schrieb:
Denn solche Fehler wie in C oder C++ und in dem Artikel beschrieben gibt es in D nicht...
In Cobol auch nicht - außerdem hat es viele andere Schwächen und Probleme von D nicht. Deswegen sollten wir zukünftig Betriebssysteme in Cobol schreiben.
BTW: Wer (womöglich selbstgeschriebene) wikipedia-Artikel als Sprungbrett für seine Spekulationen nutzt, muss sich nicht wundern, wenn nur wenige mitspringen wollen - z.B. weil sie sehen, dass kein Wasser im Becken ist.
Guten Flug noch wünscht,
Simon2.
-
Fleischwarenfachverkäufer schrieb:
Du hast es doch selbst schon gesagt, es hängt von der Kompetenz des Programmierers ab. Wenn der Programmierer kompetent ist, wird es mit strcpy und Konsorten keine Probleme geben. Wenn der Programmierer inkompetent ist, wird er größere Fehler bauen, als nur nen zu kleinen Buffer o.ä. bereitzustellen.
Das ist natürlich die völlig falsche Logik, denn auch gute Progger machen Fehler.
Und solche Fehler versucht man ja beim OpenBSD Projekt erst gar nicht auftreten zu lassen, in dem man ganz einfach eine sichere String Funktion nutzt.Letztlich komme ich zu folgenden Schluss: Wenn ein Metzger dazu neigt, sich seine Hände abzuhacken, könnte man natürlich Schutzhandschuhe vorschreiben.
Metzger die Fleisch von den Knorpeln trennen tragen nicht ohne Grund einen Kettenhemdhandschuh.
Sie sollen sich nämlich nicht ausversehen schneiden können.
Aber offenbar scheinen Metzger schlauer als Programmierer zu sein,
denn wenn es anders wäre, dann würden Programmierer auch sichere Programmiersprachen nutzen.