Warum sind fast alle Server in C geschrieben?



  • Ich verstehe das einfach nicht. Fast jede Server-Software ist in (grottigem) C geschrieben! Machen die Entwickler das bewußt um bei heise.de genannt zu werden? 😉 Oder gibts vernünftige Gründe?



  • Afaik um leichter Buffer-Overflows einzubauen 😉

    Nein, im ernst. C ist einfach eine Prorgammiersprache die bereits sehr lange benützt wird. Eine Programmiersprache mit der das OS geschrieben ist auf dem die meisten Server laufen. Eine Programmiersprache die sehr systemnah arbeiten kann. usw. usf.

    MfG SideWinder



  • c-hasser schrieb:

    Fast jede Server-Software ist in (grottigem) C geschrieben!

    Welche Art Server-Software meinst du denn?



  • C war einfach unter Unix _die_ Programmiersprache und die Compiler für C waren damals eben weit verfügbar und erzeugten schnellen Code. Das hat sich einfach bis heute fortgesetzt. Klassische Server Anwendungen werden eben oft noch von den "alten Hasen" entwickelt. Mittlerweile werden ja kaum noch klassische Serveranwendungen geschrieben und das eher als Webinterface oder auf Basis von Webservices gemacht.



  • c-hasser schrieb:

    Ich verstehe das einfach nicht. Fast jede Server-Software ist in (grottigem) C geschrieben!

    Wie Kingruedi schon sagte, liegt das an der Geschichte von Unix und C. C wurde für Unix entwickelt. Darüber hinaus wollen Entwickler von Daemonen diese in der Regel nicht nur auf x86 laufen lassen, sondern auf möglichst vielen Architekturen. Wie es heute bei C++ auf den verchiedensten Mainframes aussieht, weiß ich nicht. Darüber hinaus existieren schon viele Server über 15-20 Jahre.

    Was bedeutet für dich "grottig"?

    C ist bei sehr vielen Firmen, gerade in Unix/Netzwerkbranche, die Sprache und wird es mit Sicherheit auch bleiben(C wird ja ständig weiterentwickelt). Warum auch nicht? Es gibt haufenweise Beispiele, dass ein Programm in C sicher programmiert werden kann! Man kann sich halt nicht immer erlauben, auf etwas wie die STL oder sogar Boost zurück zu greifen.

    IMHO ist C++ gerade bei Windows-Entwicklern und KDE-Entwicklern sehr beliebt, C dafür unter Unix und in den lowlevel Bereichen. Posix Systemprogrammierung fühlt sich halt mit C besonders gut an. 😉



  • Nicht zu vergessen: alle Arten von Controllern und teilweise Embedded Systemen.
    Um da hohe Performance zu erreichen geht nur assembler und bei grösseren Sachen eben C.

    C rulez also...

    Greez


Anmelden zum Antworten