Ég hef búið til forrit sem dælir út þráðum, þar sem hver þráður opnar socket, stoppa í tæplega 2000 þráðum (á NT4). Ég hef hinsvegar ekki gert neina athugun á því hvort takmörkunin stafar af socketunum eða fjölda þráða eingöngu.
“NT býr til þráð í kernel-space fyrir hvern þráð sem verður til í user-space sem leiðir af því að það skiptir ekki máli hvað þú setur marga örgjörva í NT, overhead-ið við að vinna við þetta drepur NT-ina þar sem þræðirnir berjast um resource-a”
Ég starfa við forritun og hef forritað mikið og aðallega fyrir Windows, bæði í user- og kernel mode. Ég hef aldrei heyrt um né séð að fyrir hvern user mode þráð, sé búinn til annar í kernel mode. Í þessum töluðu orðum er vélin mín að keyra u.þ.b. 200 þræði í user mode, en bara 34 system þræði (kernel). Þeir resource-ar sem hver þráður þarf eru náttúrulega contextið (staða registera og MMU, og þ.h.) og svo tími á örgjörvanum þegar þráðurinn er keyrður. Nú er það þannig að í flestum tilfellum eyðir vinnuþráður talsverðum tíma ævinnar í svefni, þ.e. bíðandi eftir eventi eða þ.h. Á meðan þráðurinn er í svefni, er hann ekki settur á örgjörvann og er þ.a.l. ekki að taka neina resource-a frá öðrum þráðum.
“Í öllum eðlilegum stýrikerfum er mesta örgjörvavinnan unnin hvort eð er í user-space”
Sá þráður sem mestan tíma fær, að öllu jöfnu, er þráðurinn í ‘system idle process’ (85 - 95 %) og hann keyrir í kernel mode.
“þegar þú ert að hreyfa músina þá ert þú að éta mutex-a frá kernel space”
Hvað áttu við, éta hvað???
Jæja, best að tala um Windows/Linux
Er með tvær vélar í vinnunni, W2K (sett upp fyrir 1 1/2 ári) og NT4 (sett upp fyrir 3 árum). Þau skipti sem þessar vélar hafa krassað (bláskjár) samtals, eru teljandi á fingrum. Þá yfirleitt einhverjir ‘third party’ driverar, eða böggar í mínum eigin. Hef sáralitla reynslu af Linux. Hef gert tilraunir til að setja það upp, en ekki haft þolinmæði, eitt virkar ekki hér og annað ekki þar. Mismunandi milli útgáfa hvað virkar og hvað ekki (Red Hat /Suse /Mandrake …). Ég trúi því hinsvegar að Linuxinn sé góður í hlutverki servers, af því þeir sem hafa sagt mér það eru menn sem ég veit að þekkja það af eigin raun. Annars finnst mér algjört kraftaverk að Linuxinn skuli virka. Ég var að analísera TCP source-inn í haust (v 2.2.4 að mig minnir) og þvílíkt spaghetti hef ég sjaldan séð, enda er hann eins og útjöskuð Hamborgarmella, sem hinir og þessir eru að krukka í. Ég geri ráð fyrir að stór hluti af restinni af kernel source-inum sé svipaður.
Linux - al dente
ja, ég varð að fara aftur yfir í windows (ef þú ætlar að böggast í mér, slepptu því!), og aðalástæðan var sú að ég fékk mér isdn kort og nýtt modem (skipt út fyrir annað), en þegar ég ætlaði að fara að reyna að fá vélbúnaðinn til að virka, ekkert, ja, ég held að linux-inn hafi fundið kortin, en hann gerði ekkert í því, t.d með því að fynna module eða tilkynna mér það að kortinn séu inni & að það sé driver til fyrir það, þetta sama lögmál á við um usb, það virkar ekki rétt í linux (þarf að endurræsa til að fá það til að virka), bara alls ekki og ég lít á þetta sem aðalástæðan fyrir því að ég fór aftur yfir í windows, þar sem ég fékk kortin til að virka 1-2-3 og ekkert vandmál. Það er spurning hvort að linux liðið (ég ætla að halda mig í windows næstu 10 árin eða svo..(kannski minna eða meira)) ætti ekki að fara endurhugsa hvernig þeir koma vélbúnaðarstuðningi við í kerfnu, þar sem það er óþolandi að þurfa að vistþýða kjarnann uppá nýtt útaf einu helvíts korti sem maður er með í vélinni. Þó svo að kerfið sé alveg rosalega stöðugt og hefur í raun endalausa möguleika, þá fynnst mér eins og stundum að það séu alltaf nokkrir að berjast um stýrið á bílnum og sá sem stjórnar núna er með fortíðarþráhyggju og ætlar sér ekki að gera kerfið einfalt og gott, en þá mundi windows fara að fynna fyrir samkeppni…
I have had absolutely no problems with Windoze updates. I run Linux. - Óþekktur höfundur
0