Linux vs Windows gällande diskfragmentering.

Permalänk
Medlem
Skrivet av Usling:

Sant, plus att uppdateringar tar 10 sekunder istället för 10-45 minuter.

Det är något jag funderat över, varför tar det en sån fruktansvärd lång tid för Windows att uppdatera? Visst ibland går det fort men emellanåt tar det ju hur lång tid som helst.

Permalänk
Medlem
Skrivet av theailer:

Det är något jag funderat över, varför tar det en sån fruktansvärd lång tid för Windows att uppdatera? Visst ibland går det fort men emellanåt tar det ju hur lång tid som helst.

det finns grejer sm tar tid med Linux också. Att installera Ubuntu-desktop-gränssnitt på Ubuntu Server till exempel

Visa signatur

Mac Mini M2 Pro
5K

Permalänk
Medlem

Men inte tar väl det speciellt lång tid eller? Har bara installerat det på Debian och det tyckte jag inte tog omotiverat lång tid.

Permalänk

X11 i ring 0

Du kan installera massa program i Linux utan att bloata ned ett register, så Linux blir inte instabilare ju mer program du installerar. Windows har det problemet, så installera få Windows program.

Generellt är ntfs inte vidare bra och gammalt, det blir fragmenterat lätt. Journal har inget med fragmenteringar att göra, det används bara vid reparation. Linux filsystem blir inte alls lika fragmenterat, pga de är modernare. Linux fragmentering är inte ett problem, men det är ett problem i windows.

(För längesen låg Linux grafik utanför ring 0, dvs i periferin i kernel, precis som alla Unix. Detta gjorde att du kunde starta om grafiken på ett enkelt sätt, och ifall grafiken kraschade så kraschade inte kernel. För typ 3-4? År sen, lades grafiken in tillsammans med ring 0 i kernel. Detta gjordes därför att då blev graiken snabbare, (pga färre context switches?). Problemet med detta är att ifall grafiken kraschar, så kraschar hela kärnan, dvs datorn kraschar och Linux blev instabilare. Men grafiken är snabbare idag.

Windows gjorde helt tvärtom. I början låg grafiken inne tillsammans med winkernel och det blev snabb grafik. För att få det stabilare, separerades grafiken och kernel ganska nyligen (win7?). Nu kan du enkelt starta om grafiken, uppdatera drivisiar, etc - utan att behöva boota om windows. Windows idag är mycket stabilare än förr. Medan Linux gått åt andra hållet, mer bloatad kernel.)

Permalänk
Medlem
Skrivet av theailer:

Men inte tar väl det speciellt lång tid eller? Har bara installerat det på Debian och det tyckte jag inte tog omotiverat lång tid.

Det tog säkert 5 minuter på min Intel NUC (i3)

Visa signatur

Mac Mini M2 Pro
5K

Permalänk
Medlem
Skrivet av Dockland:

Det tog säkert 5 minuter på min Intel NUC (i3)

Det vart en jäkla tid, med eller utan nerladdning av paketen?

Permalänk
Medlem

Eller så gör man som Wendell och kör sömlös Windows integrering i Linux, väldigt intressant och lockande lösning:

Visa signatur

Riggen:ASRock X570M Pro4 - AMD Ryzen 7 3700X - Corsair 32GB DDR4 3200MHz - Corsair MP510 960Gb NVME - EVGA 1080ti SC2 - 3x Samsung 840 500GB - EVGA SuperNOVA G1+ 650W - Fractal Design Meshify C Mini Dark TG
NAS: FreeNAS @ HP Proliant MicroServer Gen 8 - Xeon E3-1230 V2 - 16Gb Kingston ECC RAM - Intel 530 120Gb - IBM m1015/LSI 9220-8i - 4x WD Red 3Tb

Permalänk
Medlem
Skrivet av n_sandstrom:

När jag följer manuella guider för att fixa saker i Ubuntu så tycker jag oftast att det står "starta om alla processer, eller hela datorn".
Så tja, det känns mest för ett snabbt vis att vara säker på att alla berörda processer startats om, men ingenting man måste göra.

Jag tror Ubuntu och Debian har kommandot checkrestart. Om du kör kommandot sa listar det vilka processer som använder gamla versioner av uppdaterade filer och därmed behöver startas om.

Permalänk
Medlem
Skrivet av theailer:

Det vart en jäkla tid, med eller utan nerladdning av paketen?

Det inkluderade nedladdning av alla paket Men man blir bortskämd med Linux.

Visa signatur

Mac Mini M2 Pro
5K

Permalänk
Medlem
Skrivet av Rist:

Jag tror Ubuntu och Debian har kommandot checkrestart. Om du kör kommandot sa listar det vilka processer som använder gamla versioner av uppdaterade filer och därmed behöver startas om.

Inte by design, man behöver installera sudo apt-get install debian-goodies först.

så här ser det ut hos mig

sudo checkrestart lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs Output information may be incomplete. Found 0 processes using old versions of upgraded files

Visa signatur

Mac Mini M2 Pro
5K

Permalänk
Datavetare

Linux används idag på ställen där man kräver tillgänglighet på minst "5 nior" (>=99.999% carrier-grade) och denna tillgänglighet kräver att säkerhetsuppdateringar måste kunna göras även i kärnan utan att starta om systemet.

Allt som är byggt som moduler har alltid kunnat bytas ut utan omstart, men finns även teknik idag för att byta ut den delen av kärnan som laddas vid boot och detta görs utan att existerande nätverksuppkopplingar störs! Tekniken kallas ksplice och används typiskt av enterprise-server system och naturligtvis av carrier-grade system.

Vad det gäller serversystem så är det faktiskt lite svårt att begripa varför det finns företag som envisas med Windows, Linux är så mycket bättre ur många kritiska aspekter (som stabilitet och effektivitet).

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Hedersmedlem
Skrivet av Yoshman:

Linux används idag på ställen där man kräver tillgänglighet på minst "5 nior" (>=99.999% carrier-grade) och denna tillgänglighet kräver att säkerhetsuppdateringar måste kunna göras även i kärnan utan att starta om systemet.

Allt som är byggt som moduler har alltid kunnat bytas ut utan omstart, men finns även teknik idag för att byta ut den delen av kärnan som laddas vid boot och detta görs utan att existerande nätverksuppkopplingar störs! Tekniken kallas ksplice och används typiskt av enterprise-server system och naturligtvis av carrier-grade system.

Vad det gäller serversystem så är det faktiskt lite svårt att begripa varför det finns företag som envisas med Windows, Linux är så mycket bättre ur många kritiska aspekter (som stabilitet och effektivitet).

Kan nämna att Ksplice i sig köptes av Oracle och numera utvecklas mer eller mindre proprietärt just för Oracle Linux. Det finns dock fler alternativ, så som KernelCare (också stängt), Red Hats kpatch och SUSEs kGraft. De sistnämnda håller alldeles just nu på att försöka kombinera sina lösningar för att få in en lösning i mainlinekärnan. Jonathan Corbet pratade om det LinuxConf i Australien tidigare i år; se typ 39:39 och framåt i följande klipp (vilket också var källan till min listning av lösningar nyss):

En tjänst med "5 nior":s krav på upptid behöver givetvis en stabil plattform, och Linux är väl det vanligaste valet idag (att det diskuteras om det är bättre än vissa andra lösningar eller ej är naturligt, men att det är vanligast bör vara mindre kontroversiellt). En administratör vill inte vara tvungen att plocka ner en server bara för att en viss programvara behöver patchas en viss sekund. Samtidigt bör en väl redundant lösning kunna överleva att en viss maskin trillar av nätet, oavsett anledning, och möjligheter för planerade uppgraderingar inklusive omstarter utan extern nertid är säkerligen en del av en robust uppsättning. Om en administratör slipper bli "tvingad" till sådana av externa orsaker utan i stället själv kan planera när och varför så finns det dock mycket att vinna.

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.

Permalänk
Skrivet av Yoshman:

Linux används idag på ställen där man kräver tillgänglighet på minst "5 nior" (>=99.999% carrier-grade) och denna tillgänglighet kräver att säkerhetsuppdateringar måste kunna göras även i kärnan utan att starta om systemet.

Allt som är byggt som moduler har alltid kunnat bytas ut utan omstart, men finns även teknik idag för att byta ut den delen av kärnan som laddas vid boot och detta görs utan att existerande nätverksuppkopplingar störs! Tekniken kallas ksplice och används typiskt av enterprise-server system och naturligtvis av carrier-grade system.

Vad det gäller serversystem så är det faktiskt lite svårt att begripa varför det finns företag som envisas med Windows, Linux är så mycket bättre ur många kritiska aspekter (som stabilitet och effektivitet).

Så spel servers kör windows alltså Förstår då varför dom är nere titt som tätt

Visa signatur

Min spel rigg:FD Define R4|VX 550W|i5 2500K|Corsair LP 4GBX2|Mammabräda P67 Extreme4|GTX 670 windforce|23tum u2312hm
Min gamla/HTPC:AMD 6000+|Ram 2GbX2|Radeon HD5770| XFX 450/nu XFX 550
Mitt bygge: ByggloggFri frakt INET:Fraktfritt sweclockers vid köp över 500kr

#Gilla inlägg som är bra & Använd citera/@"namn" vid snabbt svar

Permalänk
Medlem
Skrivet av Broken-arrow:

Så spel servers kör windows alltså Förstår då varför dom är nere titt som tätt

Hahah, finns nog lite fler anledningar än det

Permalänk
Medlem
Skrivet av Dockland:

Det inkluderade nedladdning av alla paket Men man blir bortskämd med Linux.

Tänkte väl det. Är väl nästan en gigabyte den ska ladda ner och installera

Permalänk
Datavetare
Skrivet av phz:

Kan nämna att Ksplice i sig köptes av Oracle och numera utvecklas mer eller mindre proprietärt just för Oracle Linux. Det finns dock fler alternativ, så som KernelCare (också stängt), Red Hats kpatch och SUSEs kGraft. De sistnämnda håller alldeles just nu på att försöka kombinera sina lösningar för att få in en lösning i mainlinekärnan. Jonathan Corbet pratade om det LinuxConf i Australien tidigare i år; se typ 39:39 och framåt i följande klipp (vilket också var källan till min listning av lösningar nyss):

sfH5ddXnGsA

En tjänst med "5 nior":s krav på upptid behöver givetvis en stabil plattform, och Linux är väl det vanligaste valet idag (att det diskuteras om det är bättre än vissa andra lösningar eller ej är naturligt, men att det är vanligast bör vara mindre kontroversiellt). En administratör vill inte vara tvungen att plocka ner en server bara för att en viss programvara behöver patchas en viss sekund. Samtidigt bör en väl redundant lösning kunna överleva att en viss maskin trillar av nätet, oavsett anledning, och möjligheter för planerade uppgraderingar inklusive omstarter utan extern nertid är säkerligen en del av en robust uppsättning. Om en administratör slipper bli "tvingad" till sådana av externa orsaker utan i stället själv kan planera när och varför så finns det dock mycket att vinna.

Är inte tekniken kring ksplice som Oracle köpte, den ligger redan i kernel.org kärnan och är därmed GPL. Vad de köpte var företaget som utvecklade tekniken, det företaget driver en tjänst baserat på denna teknik som erbjuder säkerhetuppdateringar till kärnan och applicering av dessa uppdateringar via ksplice. Den tjänsten har tyvärr blivit specifik för Oracles Linux distributioner.

Redundanta system kan inte ersätta enskilda system, hela poängen med "carrier-grade" är att varje enskild tjänst och mer specifikt varje enskild aktiv session ska ha den utlovade tillgängligheten vilket bara fungerar om kärnan kan uppdateras under drift med alla aktiva sessioner intakt (det blir en kort paus när man gör uppdateringen men sessionen överlever).

Erlang är specifikt framtaget för system med hög tillgänglighet och "världsrekordet" i tillgänglighet på ett system som varit i skarp drift innehas av en Erlang-baserat system som haft nio-nior 99.9999999% tillgänglighet. Ser man vad som skiljer Erlang från många andra plattformar hittar man direkt att kodmoduler har explicit stöd för att under drift patchas, Erlang ser till att den nya versionen används för nya anrop och den gamla koden laddas ur när det inte längre finns någon process vars "call-stack" går igenom den gamla versionen. Finns många andra saker som gör Erlang extremt stabilt, men denna är lite unik (eller var unik, tror det finns JVM-baserade system som kan göra liknande idag).

Tyvärr verkar ändå Oracle orsakat tillräckligt mycket skada på ksplice att flera andra varianter nu är under utveckling, men för tillfället är så vitt jag vet ksplice den enda lösning som är tillräckligt mogen för att faktiskt kunna köras i kritiska system idag.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av MichaelJackson:

(För längesen låg Linux grafik utanför ring 0, dvs i periferin i kernel, precis som alla Unix. Detta gjorde att du kunde starta om grafiken på ett enkelt sätt, och ifall grafiken kraschade så kraschade inte kernel. För typ 3-4? År sen, lades grafiken in tillsammans med ring 0 i kernel. Detta gjordes därför att då blev graiken snabbare, (pga färre context switches?). Problemet med detta är att ifall grafiken kraschar, så kraschar hela kärnan, dvs datorn kraschar och Linux blev instabilare. Men grafiken är snabbare idag.

Skillnaden mellan kernel mode setting och user mode setting koden är snarare det omvända. Linux grafikdrivrutiner (inclusive mode setting) brukade ligga x-servern (user space). X-servern mappade IO adresserna till hårdvaran direkt till sin egen adress space och skrev direkt till minnet genom /dev/mem. För att göra det var det nödvändigt att köra x-servern som root och eftersom x-servern hade direkt tillgång till hårdvaran det var omöjligt för kerneln att skydda sig själv för buggar i x-servern. Hela systemet kunde gå ner om x-servern gjorde galna saker.

Vanliga drivrutiner har inte det problemet eftersom de ligger i kerneln och user space processer kommunicerar bara med kerneln när de vill komma åt hårdvaran. Runt 2007 beslutades det att även grafikdrivrutiner ska ligga i kerneln för att garantera korrekthet. Fördelarna är att en buggig x-server inte kan krascha hela systemet. Power management blir enklare eftersom kerneln vet vad hårdvaran håller på med. Tidigare var det svårt att använda t.ex. ASPM för kerneln visste inte vad x-serven håll på med så den kunde inte avgöra om det var säkert att aktivera vissa power save modes. Suspend resume blir också enklare av samma anledning. Tidigare var kerneln tvungen att lita på att x-servern kunde återställa hårdvaran. Med drivrutinerna i kerneln kan kerneln göra all power management själv. När kerneln har kontroll över hårdvaran kan den bestämma vad som ska visas på skärmen när som helst. Det används nu för att automatiskt växla till en terminal och visa kernel oops meddelanden (linux blue screen of death). De meddelandena brukade tidigare gå förlorade.

Det är inte bara fördelar med KMS. De grafikdrivrutinerna som körs i kerneln är bara en liten del. Det mesta av koden t.ex. shader kompilering körs fortfarande i user space. User space drivrutinerna genererar en hårdvaruspecifik command stream som skickas till kerneln och kerneln matar sedan hårdvaran med denna command stream. User space drivrutinerna räknas som untrusted så för att garantera korrekthet måste kerneln validera denna command stream innan den ges till hårdvaran. Detta kan vara lite långsammare än att köra grafikdrivrutinerna helt i user space men i praktiken gör det ingen skillnad.

En annan fördel med user space drivrutinerna är att så länge kerneln tillåter direkt hårdvaruåtkomst så är drivrutinerna plattformsoberoende. De funkar både i linux och de olika bsd varianterna. KMS har inneburit en liten kris för *bsd för de har inte manskap att utveckla egna drivrutiner eller ens porta de befintliga linux drivrutinera i den takt de utvecklas.