neprihlásený Piatok, 19. apríla 2024, dnes má meniny Jela
Zdrojové kódy Windows majú 270 GB, sú spravované nástrojom Linusa Torvaldsa

Značky: WindowsvývojMicrosoftLinus TorvaldsLinux

DSL.sk, 7.2.2017


Zdrojové kódy operačného systému Windows majú 270 GB, pozostávajú z 3.5 miliónov súborov a Microsoft a jeho vývojári ich spravujú pomocou nástroja na správu verzií Git.

Vyplýva to z aktuálneho oznámenia Microsoftu o vyvinutí rozšírenia pre Git.

Softvér Git pre správu verzií zdrojových kódov softvéru pri vývoji bol v roku 2005 vyvinutý Linusom Torvaldsom, autorom linuxového jadra. Torvalds vyvinul Git pre efektívnejší vývoj linuxového jadra a v súčasnosti sa na tento účel aj používa.

V minulosti podľa dostupných informácií spravoval Microsoft zdrojové kódy Windows pomocou proprietárneho nástroja Source Depot. Podľa niektorých zdrojov k migrácii viacerých projektov do Gitu prišlo od roku 2013.

Git pri vytvorení si kópie zdrojových kódov vývojárom nakopíruje na jeho stroj celý repozitár daného projektu, aj s historickými súbormi. To pri tak rozsiahlom repozitári ako je repozitár zdrojových kódov Windows predstavuje samozrejme problém.

Nie je jasné ako staré historické verzie Windows má Microsoft uložené v jeho repozitári tohto operačného systému, vytvorenie prvotnej kópie pomocou "git clone" trvá podľa Microsoftu ale 12 a viac hodín, aktualizovanie repozitára pomocou "git checkout" 2 až 3 hodiny a obyčajné zistenie stavu pomocou "git status" 10 minút.

Vývojári pritom bežne pre svoju prácu potrebujú len veľmi malú časť zdrojových kódov, 50 až 100 tisíc súborov, a ich práca je tak zbytočne pomalšia.

Microsoft tak pre zefektívnenie vývoja pomocou Git aktuálne pre vývojárov na Windows vyvinul GVFS, Git Virtual File System. GVFS poskytuje virtuálny súborový systém, ktorý na PC vývojára prezentuje virtuálne prítomný kompletný repozitár. Ako prítomné ukazuje všetky súbory, pritom ich ale nesťahuje a lokálna kópia v skutočnosti nie je k dispozícii. Tú GVFS stiahne až keď sa súbor reálne otvorí. Zároveň má GVFS presne nešpecifikovaným spôsobom aktívne manažovať, ktorú časť repozitára musí Git zvažovať pri operáciách ako checkout a status.

Vďaka tomu sú všetky operácie vývojára výrazne rýchlejšie. Pomalšie je iba prvé kompilovanie projektu, pri ktorom sa jednotlivé potrebné súbory reálne musia stiahnuť. Kontrola stavu pomocou "git status" ale trvá typicky 4 až 5 sekúnd namiesto 10 minút, "git checkout" 30 sekúnd namiesto 2 až 3 hodín a "git clone" pár minút namiesto 12 a viac hodín.

Microsoft zverejnil viaceré komponenty GVFS a potrebné doplnenia do Gitu ako open source, samotný Windows ovládač pre súborový systém je zatiaľ k dispozícii len v skompilovanej podobe. Zároveň Microsoft ho považuje za testovaciu verziu a odporúča jeho využívanie vo virtuálnom stroji a nie priamo v produkčnom prostredí.


      Zdieľaj na Twitteri



Najnovšie články:

Seriál Fallout podľa počítačovej hry bude mať pokračovanie
Budúci týždeň budú vydané dve dôležité linuxové distribúcie
Špehovacie satelity SpaceX už snímkujú Zem, s vyšším rozlíšením ako doterajšie
Linux si na PC drží podiel 4%
AI výkon tohtoročnej generácie Intel CPU bude vyšší ako 100 teraops/s
Apple bude mať nový seriál o alternatívnom sovietskom vesmírnom programe, predĺžila For All Mankind
Pôsobivého dvojnohého robota Atlas nahradí úplne nová elektrická verzia
O2 spustilo predaj na diaľku. Namiesto eID sa fotí tvár a občiansky, nedá sa objednať eSIM ani predplatenka
Klon populárnej databázy Redis od Linux Foundation k dispozícii v prvej verzii
Helikoptéra na Marse bude zbierať dáta aj po strate komunikácie so Zemou


Diskusia:
                               
 

Linus zasa porazil M$? Ved maju vlastny system na spravu zdrojakov. Nech si pouzivaju ten zbabelci.
Odpovedať Známka: -2.0 Hodnotiť:
 

Tak!
Dobre si im povedal!
Odpovedať Známka: 6.9 Hodnotiť:
 

cize windows porazil linux, ked v linuxe existuje wine? :D
a nemci porazili ameriku, ked v amerike predavaju vw? :D:D
Odpovedať Známka: 3.6 Hodnotiť:
 

Áno.
Odpovedať Známka: 4.1 Hodnotiť:
 

Preco v linuxe neni moznost kliknut na ikonku pravym tlacitkom a zadat "Spustit ako administrator" ale musim ist do konzoly a tam zadat sudo nazov programu (neviem odkial ho mam vediet)
Odpovedať Známka: -3.6 Hodnotiť:
 

Pretoze v porovnani s manazovanim zdrojoveho kodu windows je manazment userspaceov v linuxe decentralizovany presne rovnako.
Odpovedať Známka: 1.8 Hodnotiť:
 

V KDE máš možnosť upraviť si menu, tam si môžeš nastaviť pod akým userom sa aplikácia spúšťa. Samozrejme budeš potrebovať aj heslo. Osobne na žiadnom stroji nemám usera Administrator, ale nevidím problém si ho vytvoriť a dať mu root práva, i keď osobne by som to nikdy nerobil.
Odpovedať Známka: 3.7 Hodnotiť:
 

lebo cely svet potrebuje root privilegia aby sa ti hrabalo v pc a pozeralo tvoje nahromadene porno
Odpovedať Známka: -2.9 Hodnotiť:
 

ty budes urcite samozvany ambasador pre IT bezpecnost
Odpovedať Známka: 10.0 Hodnotiť:
 

Aby si presne vedel, co robis. Pokial to presne nevies, tak to nemas co spustat ako root ;).

Treba si uvedomit aj drobnosti, ze v Linuxe je vsetko subor - vratane socketu k displej serveru (resp. cookie k jeho session). Ked spustas aplikaciu ako iny user, tak tento iny user nema pristup k tomuto socketu, ze ano. Aby si sa potom necudoval, ze to "nefunguje" (lebo to zomrelo s hlaskou do stderr, ze nevie otvorit displej, ktoru v terminali vidis, ale v gui nie).
Odpovedať Známka: 4.7 Hodnotiť:
 

To je aka jeba. V inych OS je len tretina vsetkeho subor, lol
Odpovedať Známka: 2.5 Hodnotiť:
 

Stale je to vsetko v suboroch, ine OS ale maju subory s viacerymi funkciami sucasne, asi neviem presne. Win ma plno systemovych suborov ktore su sucastou viacerych uplne odlisnych aspektov systemu.
Odpovedať Hodnotiť:
 

Také niečo som myslel. Aj databáza registrov je súbor, aj ovládače sú súbory, aj filtre... tak neviem čo technik vyššie myslel
Odpovedať Hodnotiť:
 

Zaujimava hypoteza, ale keby to tak skutocne bolo aj implementovane, pouzivatel by pod linuxom mohol urobit raid pole zo svojej diskovej quoty a ramdisku vo vlastnom userspace bez roota.
Odpovedať Známka: -1.4 Hodnotiť:
 

lenze mdadm potrebuje pristupovať k iným súborom, ktoré potrebujú eskaláciu práv
lebo kurva nebude si hocikto robit raid pole z ramdisku
Odpovedať Známka: 3.3 Hodnotiť:
 

Pokial ma prehliadac moznostou cachovania vyssie prava robit si z pamate pieskovisko ako pouzivatel, posobi odovodnovanie potrebou eskalacie prav ako zmes hodnotenia optimalnosti kodu a hoaxu v neurcitom pomere.
Odpovedať Známka: -1.1 Hodnotiť:
 

Určite v neurčitom?
Odpovedať Hodnotiť:
 

Asi si sa zasekol v Ballmerovom svete, že áno?
Odpovedať Známka: 5.0 Hodnotiť:
 

Lol, namiesto RTFM a pouzitiu "git submodule" na tak obrovsky projekt to cele sprasili a narvali do jedineho stromu? A ten ich GVFS (Git Virtual File System), kt. robi z decentralizovaneho GIT-u centralizovany sh*t si mozu nechat.
Odpovedať Známka: 1.4 Hodnotiť:
 

No myslim, ze to rychlo spis a posli im to mailom. budu ti velmi vdacny, ze to tam nikoho nenapadlo.
Odpovedať Známka: 5.1 Hodnotiť:
 

skor si myslim, ze windows je tak poviazany navzajom, ze sa nic neda submodulovat :D
Odpovedať Známka: 9.2 Hodnotiť:
 

tomu verim aj ja, myslim ze windows je taky spaghetty kod este horsi ako wordpress
Odpovedať Známka: 7.5 Hodnotiť:
 

Presne tak. Podla aktualneho stavu windows si z toho robia cistu prcu.
Odpovedať Známka: 4.0 Hodnotiť:
 

nuz, vzhladom k tomu, ze visual studio aj vo verzii 2015 je 32-bitova aplikacia (64-bitovy build nikdy verejne neexistoval a zrejme tak skoro ani existovat nebude), co v praxi znamena, ze je takmer nemozne v nom debugovat extremne velke moduly (kniznice) pochybujem, ze to rozsubmodulovane (rozsolutionovane) nie je.

pri visual studiu 2012 bolo uplne bezne, ze proste drblo na papulu, pretoze som si dovolil nechat vyzrat cely biedny 32bitovy pamatovy priestor debugovacimi symbolmi. v 2015 to "vyriesili" tym, ze na masine s 32GB RAM, kde je 16+ GB RAM volnych velmi mudro Visualko zahlasi "low memory detected" a na nacitavanie dalsich symbolov sa vysere.

to sa chytro riesi tym, ze sa vec rozbije na haldu malych DLLiek (kde sa uz symbole pre DLLku nevojdu do pamate na raz, sa DLLka rozbije na viac s priponou 2, 3, 4). ved dynamicky loader sa s tym nejako pobije.
Odpovedať Známka: 3.3 Hodnotiť:
 

JFYI: google ma jeden obrovsky repozitar so vsetkymi zdrojovymi kodmi vsetkych projektov a cely ma niekolko TB :) myslim si, ze repozitar, ktory ma 270GB nie je az tak velky. Osobne sme mali vo firme takmer vsetko do isteho casu rozbite na submodules, no nakoniec sme presli na jeden velky repozitar s pravami na urcite casti. (nase repo ma priblizne 3.5GB) Prosim, nabuduce nesud, pokial nemas prehlad :)
Odpovedať Známka: 3.8 Hodnotiť:
 

bohuzial pristup "ja to viem lepsie" je v korporatnej sfere uplne bezny. preto vznikli veci ako git-lfs a potom korporatni "git guru" owrapovali tieto nastroje tak, aby vdaka nim nebolo treba tahat celu historiu.

no a nakoniec git guru ten git nepobrali a povedali, ze niektore projekty radsej ostanu na tom starom verzovacom systeme.

a tento shit potom musime pouzivat :(
Odpovedať Hodnotiť:
 

myslis, ze zbabelost je ked pouzijes nieco co je lepsie, aj ked to nie je tvoje? Podla mna je zbabelost presny opak - ked nieco nepouzijes pretoze to nie je tvoje, aj ked je to lepsie
Odpovedať Známka: 7.4 Hodnotiť:
 

Nechaj ho tak chlapca, pletie si pojmy s dojmami.
Odpovedať Známka: 8.2 Hodnotiť:
 

Kveri, mas to v hlave nejake dojebane. Fet alebo "by nature"?
Odpovedať Známka: -7.8 Hodnotiť:
 

to nie je zbabelost, to ne NIH syndrom
Odpovedať Hodnotiť:
 

Ako je pravda ze v praveku si kazdy vyrobil sam to co potreboval, odvtedy ale microsoft presiel na git a doba sa nenavratne zmenila.
Odpovedať Hodnotiť:
 

TFS - microsofti trackovaci system je v podstate len nejaka ta omacka okolo gitu.

V zasade z tych VCS schopnych pojat naozaj naozaj naozaj velke projekty asi ostali len perchlor a git. A perchlor obsahuje nastroje kompatibility s gitom a git nastroje kompatibility s perchlorom. V oboch pripadoch je to survival strategia. Perchlor sa tym snazi oddialit svoju smrt a git ju naopak urychlit, co sa mu aj pomerne dari.
Odpovedať Hodnotiť:
 

Este niekde preziva aj mercurial, vo firmickach ako Facebook alebo Google ;)
Odpovedať Hodnotiť:
 

To nieje o zbabelosti a velkosti pindurov ale o efektivite. Ak má niekto lepší nástroj a MS to ušetrí zdroje tak načo znova vymýšlať koleso.
Odpovedať Hodnotiť:
 

Asi im dosiel FUP.
Odpovedať Známka: 8.2 Hodnotiť:
 

Asi sa k nim pripajaju klucovy vyvojari cez provajderov vlastnenych dojce telekomom s FUP 300 G na mesiac ;)
Odpovedať Hodnotiť:
 

GIT nie je dobrý nástroj. Chaoticko sa v ňom orientuje. Nechápem ako sa to mohlo tak ujať.
Odpovedať Známka: -6.3 Hodnotiť:
 

mas nieco lepsie?
Odpovedať Známka: 10.0 Hodnotiť:
 

Niekto by povedal, ze googledocs :-)
Odpovedať Známka: -6.0 Hodnotiť:
 

tak sa ho nauc pouzivat, nieje to take tazke, staci si pozriet par tutorialov.
Odpovedať Známka: 10.0 Hodnotiť:
 

jaaj, chlapcovi chýbajú animované kktiny na aké je zvyknutý u Apple...
Odpovedať Známka: 4.5 Hodnotiť:
 

nechybaju - existuje Sourcetree app. git je super, ale your argument is invalid.
Odpovedať Známka: -4.7 Hodnotiť:
 

po maďarsky by si to nevedel? takto to už nieje cool
Odpovedať Známka: 10.0 Hodnotiť:
 

mrkni na SmartGit - pouzivame free verziu a je to super :)
Odpovedať Hodnotiť:
 

a ako to potom daju vsetko zmestia na jedno dvd? to bude nejaky ojeb :P alebo tam nedavaju vsetko
Odpovedať Známka: 9.0 Hodnotiť:
 

Kompresia?
Odpovedať Známka: -5.7 Hodnotiť:
 

Skor kompilacia
Odpovedať Známka: 10.0 Hodnotiť:
 

Chlapci, nebudete obaja z Filozofickej fakulty UK?
Odpovedať Známka: 8.8 Hodnotiť:
 

ja som z trojrocky
Odpovedať Známka: 8.9 Hodnotiť:
 

250GB sú iba komentáre, ktoré ti vysvetľujú, že sa ničoho nemáš chytať, lebo 5 vecí sa pokazí. zvyšok sa spracuje pri kompilácií :D
Odpovedať Známka: 10.0 Hodnotiť:
 

Tych 270 GB bude predpokladam velkost celeho git repozitara, cize cela historia.
Odpovedať Známka: 10.0 Hodnotiť:
 

Preco ten projekt nemaju rozdeleny na moduly, kniznice?!
Odpovedať Známka: -3.3 Hodnotiť:
 

Uz som si sam odpvovedal. Na zaklade diskusie v clanku pripajam link:
http://dl.acm.org/citation.cfm?id=2854146

(Google tiez spravuje zdrojove kody v 1 repozitary)
Odpovedať Známka: 10.0 Hodnotiť:
 

Takže spravili SVN..
Odpovedať Známka: 6.7 Hodnotiť:
 

to je tak ked sa do zdrojakov davaju binarne bloby, namiesto fetch scriptu
Odpovedať Známka: 6.0 Hodnotiť:
 

urcite tam maju binarne bloby janky H. sextape.avi 200 GB
Odpovedať Známka: 10.0 Hodnotiť:
 

To mi pripomína komiksáka zo Simpsonovcov, keď Bárt a Milhous viedli jeho obchod a objavili jeho sklad videokaziet :D
Odpovedať Hodnotiť:
 

tajna sekvencia unix commandov na desifrovanie sextapu janky H.

unzip, strip, touch, finger, grep, mount, fsck, more, yes, fsck, fsck, fsck, umount, sleep
Odpovedať Známka: 10.0 Hodnotiť:
 

mozno bude fungovat aj na Meciarove CDcko. S nejakym saltom :D o stenu
Odpovedať Známka: 10.0 Hodnotiť:
 

270GB hej? Wtf? Akoze to su len zdrojove suboru ci mix s resourcami ako videoklipy, mp3 sample muzik....? Zaujimalo by ma to detailne
Odpovedať Známka: 0.0 Hodnotiť:
 

hidden ficurky:
zmenime pozadicko,
pridame trocha duhiciek,
nasadime novy spajveericek,
dame na bsod nejake blikanicko
a voilaa - zbrusu nove okienka :)
Odpovedať Známka: 5.0 Hodnotiť:
 

do bsod nepridali blikanicko ale smajlicek
Odpovedať Známka: 5.6 Hodnotiť:
 

ten ballmer je ale nezbednicek
Odpovedať Známka: 10.0 Hodnotiť:
 

Ten moment, ked tvoj operacny system pada tak casto, ze musis BSOD urobit uzivatelsky prijemnym :D
Odpovedať Známka: 6.9 Hodnotiť:
 

Ako aktivny uzivatel Windowsu od cias Win2000 som o tejto legende pocul, ale este realne nevidel.
Odpovedať Známka: -2.0 Hodnotiť:
 

A aj si ho zapol? V casoch 2000, xp a vista to nebolo nic zvlastne. Napr. Viste stacilo zapojit usb 3g modem.
Odpovedať Hodnotiť:
 

Vistu som nikdy nepoužíval. Používal som len 2000, XP, 7, 10. BSOD dohromady za viac než desaťročie možno 5x, aj to spôsobený driverom grafiky.
Odpovedať Hodnotiť:
 

ja som mac os user. Vo firme mi dali dell ultrabook s win10, mam ho 3 mesiace a uz som mal 2x BSOD pri obycajnom pisani kodu do Visual Code
Odpovedať Hodnotiť:
 

Momentálne pousžívam na novom notebooku len android studio, tomu len občas trochu "zajebe" ale inak nič. V predchádzajúcich OS od MS tiež nič, len drivre grafiky rozhadzovali a zopar krat nejaky diletantsky softver ktory chcel zapisovat tam kde nemal
Odpovedať Hodnotiť:
 

git clone a pozri si to sam
Odpovedať Hodnotiť:
 

skúšal niekto hľadať akú veľkosť majú zdrojové kódy pre mac os ?
alebo pre linux - nemyslím len kernel ale komplet napríklad s gnome prostredím

to by bola zaujímavá informácia
Odpovedať Hodnotiť:
 

prípadne by pomohol vedieť počet riadkov kódu tých zdrojákov windowsu
lebo myslím že bežná distribúcia (vrátane sw výbavy) má okolo 200 mil. riadkov
Odpovedať Hodnotiť:
 

zdrojove kody pre Linux si mozes pozriet aj sam. Podla definicie GNU musia byt zohnatelne rovnakym sposobom, ako distribucia samotna. ZIPnute zdrojaky typickej Linuxovej distribucie su obvykle cca rovnako velke ako instalacia tej distribucie. Pre Slackware je jedno DVD instalacie a tusim tiez jedno DVD zdrojakov. Akurat to DVD so zdrojakmi je krapatko plnsie ako to instalacne.

Fedora Core onoho casu na tom bola cca rovnako co si pamatam.
Odpovedať Hodnotiť:
 

Takze uz je jasne, preco MS moc nevyvija svoj SW v poslednych rokoch, a robi len kozmeticke upravy. Udrzat vo firme programatora, ktory ma nervy cakat 12 hodin na checkout, kym moze zacat pracovat, je naozaj umenie.
Odpovedať Hodnotiť:
 

ak je zaplatený za tých 12h prečo nie - to by som aj aj zvládal zadať git clone a sedieť 12h
potom by som po 12h siel domov vypol pc a na druhy den znovu git clone - lebo predchdzajuci je zastarany

Odpovedať Známka: 10.0 Hodnotiť:
 

A prave s takymto pristupom by si sa tam ani nedostal. Ty budes urcite jeden z tych, co maju rozumy o tom, ako im vsetci vsetko zaplatia, a doma sedi za zhnitym kompom a zije zo socialnych davok.
Odpovedať Hodnotiť:
 

s perchlorom aj 1,5 GB kodu moze trvat checkoutnut 3-4 hodinky ;)
Odpovedať Hodnotiť:
 

Takže oni 4 roky žili pri tej ne-efektivite. A až po štyroch rokoch sú schopní ušetriť obrovské množstvo času. Na druhú stranu, vývoj FS asi chvíľu trvá...

Som zvedavý, ako sa tieto úspory času odrazia v produktoch. Predpokladám, že sa uvoľní dosť človekohodín.

Ale bolo by krásne naraziť na inzerát, že MS hľadá linux adminov a programátorov :-)
Odpovedať Známka: 0.0 Hodnotiť:
 

Čo je prosím ťa na tom krásne?
Odpovedať Známka: 6.0 Hodnotiť:
 

oni asi hlavne riesili workaround na NTFS, pretoze git je vseobecne znamy tym, ze rad stekli bugy v jeho implementacii a sposobuje to, ze sa filesystem rozsype a subory sa stratia. v 7cke to bolo tragicky caste, s 10tkou sa to uz nedeje tak casto, ale obcas vsetky subory povedia paa-paa a clovek moze zacinat na zelenej luke.

multi-threadovy split brain sa v 7cke objavoval tiez (typicky priznak su adresare, ktore nemoze zmazat/otvorit ani domenovy admin a po reboote prestanu existovat). na 10tke som ho este zatial nezazil.
Odpovedať Hodnotiť:
 

Git annex existuje dlho a robi to co microsoftovy nastroj lepsie a rychlejsie.
Odpovedať Hodnotiť:
 

Nejaký debil Tornvalds nech radšej čičičáka vnúčence.
Odpovedať Známka: -10.0 Hodnotiť:
 

No lizali psi, zeby som cakal tolko hodin len na checkout, my he he ha ha hi hi, to musi byt pekna kopa sraciek, MS nech uz radsej nic nevivija, GVFS ?? ved ani len s NTFS si rady nedali co oni chcu, typicky MS mame vela sraciek zrobme si pod neho srackovyFS
Odpovedať Hodnotiť:

Pridať komentár