BSD Sockets oder Windows Sockets



  • Hallo alle zusammen,

    ich muss für das Betriebssystem vxworks eine Socket Schnittstelle programmieren, das Problem ist das ich nicht genau weiß welche Sockets Apis ich nehmen soll.
    Es gibt ja die Windows Sockets (winsock) und die BSD Sockets (Linux und Unix).
    Es wäre echt super wenn Ihr mir einen Tip geben könntet.



  • Wie willst du WinSock unter einem anderen Betriebssystem als Windows einsetzen?



  • In den Foren wurde ich ein bisschen verunsischert deshalb frage ich sicherheitshalber.



  • Auf keinen Fall Winsock! Wie kommt jemand auf die Idee, so eine furchtbare API noch unter anderen OS implementieren zu wollen?

    Die BSD-Socket-API ist die API, die API, mit der am meisten Leute umgehen können. Abgesehen davon ist die BSD-Socket API nicht so nervig, da dieses ekelhafte WSAStartup/Cleanup entfällt sowie einige weitere Eigenheiten der Winsocks. Für den Benutzer der APIs ist BSD definitiv angenehmer.



  • Energie85 schrieb:

    In den Foren wurde ich ein bisschen verunsischert deshalb frage ich sicherheitshalber.

    In einem C++ Forum? Muss ich nicht verstehen, oder?



  • Energie85 schrieb:

    ich muss für das Betriebssystem vxworks eine Socket Schnittstelle programmieren, das Problem ist das ich nicht genau weiß welche Sockets Apis ich nehmen soll.

    Mach eine asynchrone API und darüber einen Wrapper für BSD sockets. Die Änderungen die Windows da gemacht hat sind eigentlich nicht besonders schön, auch wenn man von WSAStartup/WSACleanup mal absieht. (size_t zu int, void* zu char*, ..)

    Aber davon abgesehen: Das ist reines C bzw. Betriebssystem Zeug. Also Rund um die Programmierung oder das C Forum wären sinnvoll gewesen, aber C++? 😉



  • Was will er jetzt eigentlich? Eine Socket API selbst programmieren oder ein Programm mittels einer bestehenden API schreiben?



  • wss schrieb:

    Was will er jetzt eigentlich? Eine Socket API selbst programmieren oder ein Programm mittels einer bestehenden API schreiben?

    Er schreibt er will für ein Betriebssystem eine Socket Schnittstelle programmieren, daher denke ich mal er will sie machen und nicht nur nutzen.



  • glaube nicht das das jemand schafft, der so eine frage stellt.



  • ehrlich schrieb:

    glaube nicht das das jemand schafft, der so eine frage stellt.

    Na ja, die API an sich zu schreiben ist ja nicht sonderlich schwer wenn man entsprechende Funktionen zur Verfügung hat. Treiber, IP, TCP, UDP, DNS, etc. zu implementieren, das ist eine andere Geschichte. Aber wenn sie schon eine API schreiben ist der Teil wahrscheinlich fertig.


Anmelden zum Antworten