Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Frage zum Buch "Programmieren von Unix Netzwerken" - Stevens

15 views
Skip to first unread message

Simon Fechter

unread,
Feb 28, 2002, 6:22:23 AM2/28/02
to
Hi Mitleser,

ich habe mir nach der Studie von "Goto Ansi C" das Buch
"Programmieren von Unix Netzwerken" gekauft und mich
mal durch die ersten Kapitel "gequält" (==harter Tobak).

Aufgefallen ist mir das der Author im Buch durchgehend seine
eigene Headerdatei "unp.h" verwendet, statt die nötigen Header
einzeln einzubinden... tja, aber was mache ich wenn ich ein
Programm auf einem OS schreiben möchte das die "unp.h"
nicht hat? -> Ich muss die Header einzeln einbinden.

Genau da ist mein Problem, ich hatte mir das Buch ja extra
gekauft um das zu lernen aber alleine komme ich nicht drauf
welche Header nun benötigt werden und welche nicht (der src
von unp.h ist für mich ziemlich kryptisch) und die unp.h möchte
ich aus Portabilitätsgründen nicht verwenden (sonst müsste ich
sie immer mit jedem Prog mitliefern, zudem bindet die doch
immer mehr ein als man brauch, oder?).

Welche Dateien muss ich z.B. für den in Kapitel 1 vorgestellten
Daytime Client bzw. Server einbinden wenn ich "unp.h" nicht
verwenden möchte? Ich habe auch gehört mann muss unter BSD
die Reihenfolge genau einhalten (die da wäre?).

Ich programmiere unter FreeBSD und OpenBSD.

Ich danke fürs lesen && ggf. helfen


Steffen Wendzel

unread,
Feb 28, 2002, 6:58:34 AM2/28/02
to
On Thu, 28 Feb 2002 12:22:23 +0100
"Simon Fechter" <s.fech...@gmx.de> wrote:

>
> Aufgefallen ist mir das der Author im Buch durchgehend seine
> eigene Headerdatei "unp.h" verwendet, statt die nötigen Header
> einzeln einzubinden... tja, aber was mache ich wenn ich ein
> Programm auf einem OS schreiben möchte das die "unp.h"
> nicht hat? -> Ich muss die Header einzeln einbinden.

Hmm... schau dir einfach die Funktionen an. Stevens hat bei jeder
neu vorgestellten Funktion die Header-Dateien drüber stehen die
du includen musst - du brauchst also nur nachschauen welche du
benötigst. In den manpages müsste das auch drin stehen.

>
> Ich programmiere unter FreeBSD und OpenBSD.
>

Ist egal wenn du unter posx proggst - das kannst du eigentlich auf
jedem System gleich verwenden - glaub ich zumindest. Ich hatte bissher
kaum probleme meine Netzwerkprogramme von Linux nach OpenBSD und
umgekehrt zu portieren...

> Ich danke fürs lesen && ggf. helfen

bitte bitte..

cu Steffen.

--
KDE ist die Grafische Oberfläche von Linux,
640k sind genug für jeden,
die Menschen sind gut

Sven Geggus

unread,
Feb 28, 2002, 9:33:57 AM2/28/02
to
Simon Fechter <s.fech...@gmx.de> wrote:

> Aufgefallen ist mir das der Author im Buch durchgehend seine
> eigene Headerdatei "unp.h" verwendet, statt die nötigen Header
> einzeln einzubinden...

Wo ist das Problem? Die Datei unp.h ist Teil der Beispielquellen, die man
per ftp downloaden kann.

Sven

--
C is quirky, flawed, and an enormous success
(Dennis M. Ritchie)

/me is giggls@ircnet, http://geggus.net/sven/ on the Web

Felix von Leitner

unread,
Mar 1, 2002, 8:11:00 PM3/1/02
to
Thus spake Simon Fechter (s.fech...@gmx.de):

> Aufgefallen ist mir das der Author im Buch durchgehend seine
> eigene Headerdatei "unp.h" verwendet, statt die nötigen Header
> einzeln einzubinden... tja, aber was mache ich wenn ich ein
> Programm auf einem OS schreiben möchte das die "unp.h"
> nicht hat? -> Ich muss die Header einzeln einbinden.

Das Buch richtet sich an Programmierer mit Gehirn.
Du zählst offensichtlich nicht dazu. Gib das Buch bitte zurück oder
schenke es einer Uni-Bibliothek in deiner Nähe. Und such dir einen
Beruf, bei dem du dich auskennst. Danke.

Tilo Riemer

unread,
Mar 4, 2002, 9:06:27 AM3/4/02
to
On Sat, 02 Mar 2002 01:11:00 GMT
Felix von Leitner <usenet-...@fefe.de> wrote:

> Thus spake Simon Fechter (s.fech...@gmx.de):
> > Aufgefallen ist mir das der Author im Buch durchgehend seine
> > eigene Headerdatei "unp.h" verwendet, statt die nötigen Header
> > einzeln einzubinden... tja, aber was mache ich wenn ich ein
> > Programm auf einem OS schreiben möchte das die "unp.h"
> > nicht hat? -> Ich muss die Header einzeln einbinden.
>
> Das Buch richtet sich an Programmierer mit Gehirn.
> Du zählst offensichtlich nicht dazu.

ist das nun schiere arroganz, dummheit oder welche unbefriedigten triebe reagierst du an anderen ab?
es wurde eine sachliche frage gestellt, mit welchem recht schmeisst du daraufhin mit dreck? und wen interessiert dein ueberhebliches geschmiere?

> Und such dir einen Beruf, bei dem du dich auskennst.

bevor man sich auskennt, muss man lernen (von dir vielleicht mal abgesehen ;-) ), und zum lernen gehoert fragen. menschen, die sozial nicht verkrueppelt sind, sind im allgemeinen willens, fragen zu beantworten, wenn sie die antwort wissen und zeit haben, zumindest aber ziehen sie nicht ueber lernwillige her (gott schuetze die kinder, die dich als vater haben werden)


cu, Tilo

Alexander Bartolich

unread,
Mar 5, 2002, 4:56:24 AM3/5/02
to
Tilo Riemer wrote:
> und wen interessiert dein ueberhebliches geschmiere?

Mich. Ist wirklich sehr unterhaltsam. ;=)

http://fortune-mod-fvl.sourceforge.net/

--
dd if=/proc/self/exe skip=1 count=3 bs=1 2>/dev/null

Marco Keuthen

unread,
Mar 19, 2002, 7:13:27 AM3/19/02
to
Hallo Simon,

du kannst die benötigten Quellen für die Beispiele per FTP downloaden.
(das hat hier schon mal jemand geschrieben)

Es gibt aber auch einen anderen Weg, den man gehen kann, wenn man das Buch
von Stevens durcharbeitet:
Binde die Header, die die einzelnen Beispiele benötigen selbst ein, d.h.
unter Umgehung der unp.h, das hat den Vorteil, dass Du nach einiger Zeit
sehr gut Bescheid weißt, welche Funktionen in welchen Modulen zu finden
sind.
Das erfordert allerdings ein wenig mehr Arbeit beim studieren der
Beispielcodes.

Wenn Du in dem Buch weiter fortschreitest, wirst Du feststellen, dass der
Autor an einigen Stellen sog. Wrapper-Funktionen einbindet, die er selbst
erstellt hat und sich vom Aufruf her von den Std.-Funktionen zumeist nur
durch den groß geschriebenen Anfangsbuchstaben unterscheiden.
Diese Wrapper-Funktionen wieder rufen die Originalfunktion auf (mit z.B.
Fehlerbehandlung drumrum)
Zum Üben kannst Du wieder einfach die Originalfunktionen aufrufen, wobei
eine genauere Betrachtung der Wrappers in den Beispielroutinen des Buches
sicher nicht schädlich ist. :-)

Stevensen erklärt dieses Vorgehen auch ziemlich deutlich (weiß jetzt nicht
mehr genau wo, habe das Buch gerade nicht vorliegen).

Wenn Du noch Fragen dazu hast, nur zu...
... und lass Dich durch "gewisse grobe Mails" :-) nicht verunsichern.
Auch ich habe hier in der Newsgroup in der vergangenen Woche zwei Fragen
gestellt, die mir unklar waren und die andere Leiute bestimmt im Schlaf
beherrscht haben. Ich hatte allerdings das Glück sehr nette und hilfreiche
Antworten zu bekommen.
Es ist noch kein Meister vom Himmel gefallen. Ich behaupt von mir mal, dass
ich kein besonders schlechter Coder bin, aber ich komme von der
Windows-Seite und da kommt mir unter Linux/Unix auch noch eiges spnisch vor
:-))

Gruß,
Marco Keuthen


Simon Fechter wrote:

> Aufgefallen ist mir das der Author im Buch durchgehend seine
> eigene Headerdatei "unp.h" verwendet, statt die nötigen Header
> einzeln einzubinden... tja, aber was mache ich wenn ich ein
> Programm auf einem OS schreiben möchte das die "unp.h"
> nicht hat? -> Ich muss die Header einzeln einbinden.


--
----------------------------------------------------------------------------------------------------------------------------------------------------------------
make_files not war
----------------------------------------------------------------------------------------------------------------------------------------------------------------

Thomas Skora

unread,
Mar 21, 2002, 1:33:09 PM3/21/02
to
"Simon Fechter" <s.fech...@gmx.de> writes:

> tja, aber was mache ich wenn ich ein Programm auf einem OS schreiben
> möchte das die "unp.h" nicht hat? -> Ich muss die Header einzeln
> einbinden.

Im allgemeinen steht sowas in den Man-Pages der Systemaufrufe und in
den Headerfiles drin, die zur Auswahl stehen. Grep kann da recht gute
Dienste leisten.

> zudem bindet die doch immer mehr ein als man brauch, oder?).

Ein Compiler mit mittelmäßiger Optimierung dürfte schon reichen um
diesen unnötigen Ballast wieder zu entfernen.

Thomas

0 new messages