[ LUGOS ] Fork vprasanje...
Boris Benko
boris.benko na telekom.si
Sob Jul 11 18:52:59 CEST 1998
>
Neke debate okrog forkanja so ze bile... No, jaz bi imel tole za vprasati:
Imam nek glavni program, ki bi lahko dolocene podprobleme reseval
z forkom in bi poseben proces zmlel posamezni podproblem. Ko bi
glavni program tekel, bi forkal ostale procese. Ampak ne bi rad,
da bi ostali procesi eventuelno zadavili masino, t.j., jo preobremenili.
Kako kontrolirati, koliko trenutno forkanih sinov se aktivno tece?
Naj opisem se malo bolj v realnosti:
Program mi obdeluje vhodne podatke in rezultate izpise v izhodne datoteke.
Izhodne podatke, zapisane v datotekah bi rad kompresiral recimo z gzipom.
To mi krasno dela. Torej gre vse skupaj:
branje vhodnih podatkov...
CPU intenzivna obdelava podatkov...
pisanje izhodnih podatkov...
I/O intenzivna kompresija podatkov...
in tako v ciklu, dokler ne zmanjka vhodnih podatkov... Rad bi, da bi se
kompresija
izvajala nekako asinhrono. T.j. proces bi rezultate zapisal, ter forkal
proces, ki
bi jih skompresiral... Ampak, ne bi rad, da ce bi proces hitro obdelal
rezultate, bilo
forkanih 75 procesov, ki bi kompresirali.... To bi preobremenilo masino. Ce
bi recimo
tekli ze 3 forkani sinovi, potem bi glavni program pocakal, doker stevilo
forkanih
sinov ne pade recimo na 2... Potem pa bi spet forkal in spet sel naprej
obdelovat
podatke...
Kako narediti to asinhrono kontrolirano kompresijo podatkov?
Za kaksen namig v naprej hvala!
=b
--
============================================================================
Boris Benko, dipl.ing. | E-mail: Boris.Benko na telekom.si
Telekom Slovenije, PE Murska Sobota | B.Benko na s-gms.ms.edus.si
Senior Prog./Sys admin./Informatik | Boris.Benko na computer.org
Slu§ba za informatiko | Phone: (work) +386 69 31 676
| (work) +386 69 37 800 21
| (home) +386 69 32 592
===========================================================================
Dodatne informacije o seznamu Starilist