← Back to team overview

sslug-teknik team mailing list archive

Re: C++ systemprogrammering Linux/Ultrix

 

Mads Bondo Dydensborg wrote:
> 
> On Wed, 30 Jun 1999, Anders S. Johansen wrote:
> 
> > * Systemet skal gerne kunne køre på Alpha maskiner med Ultrix (?), men
> > jeg vil helst udvikle hjemme på min Linux-box
> 
> Endian er formentlig det vigtigeste, se nedenfor om pthreads.

Da det skal køre mellem ens maskiner, regner jeg ikke med at endian
bliver noget problem. Tingene kommer til at køre på et ret højt niveau.

> > * Performance er *vigtigt* her. Jeg kan altså ikke bruge STL-containere,
> > men vil hellere udvikle mine egne specialdesignede.
> Hmmm. Så vidt jeg ved, er STL som regel -meget- hurtige. Det er kun på
> oversætter tidspunktet det er tungt.

STL er hurtigt, men det er vigtigt at jeg ved *præcist* hvad der sker,
hvor og hvorfor. Derfor er jeg ikke så vild med at bruge STL. JEg skal
kun bruge en eneste søgestruktur - OK to, men den anden bliver en slags
cache på 4-5 blokke, så jeg kan lave super-effektiv søgning med
eksplicit løkke-udrulning. Men STL er netop grunden til, at jeg
overvejer rød/blå træer, da jeg i forbindelse med infosøgning om STL
fandt ud af, at de brugte denne form for ballancerede binære træer. De
er vist opfundet efter min tid på algoritmik i 1991... :D

> > * Jeg har "UNIX network programming", men det er C-centrisk. Findes der
> > a) en vejledning i at bruge de tilsvarende systemkald til sockets og IPC
> > med C++ på nettet eller b) en bog i samme klasse rettet mod C++
> Det er jo bare at bruge dem, hvis du forstår hvad jeg mener. Hvis du
> f.eks. har en socket, er det jo en "write" operation du bruger, ca. et
> eller andet som
> 
> write(socket_fd, size, ...);

OK. Det anede mig, men jeg var ikke helt sikker. Det er jo noget af en
lettelse.


> Whatever. Ellers findes der c++ wrappere rundt omkring.

At finde. Hmmm. Google google google.

> Det du vil er vel da tråde... check man pthread_create under Linux for en
> oversigt.

Jeg er ikke så vild med kernetråde i denne sammenhæng, da en hel del af
min argumentation hænger på at de eksisterende systemer holdes nede
performance-mæssigt af for mange kontekstskift. På den anden side får
jeg jo brug for nogle processer til at overvåge de forskellige sockets,
så jeg slipper vel ikke udenom. 

> Der er -enkelte- problemer med pthreads under Linux, blandt andet i
> forhold til signalering. Check FAQ om pthreads.
> 
> Det virker rimeligt godt, og pthreads burde være under Ultirx (posix)
> også.

Jeg havde lige "glemt" Posix. Læs: min viden er forældet :( Men
selvfølgelig! 

And
-- 
Anders S. Johansen, Jagtvej 109, 3.tv, 2200 Kbh. N +045 35836565
Wisdom = TANJ + TANSTAAFL


Follow ups

References