Waxaa qoray Ken Rockot, Xubin ka tirsan Shaqaalaha Farsamada iyo Ben Goodger, Madaxa Injineernimada, ChatGPT Atlas
Toddobaadkii hore, waxaan soo saarnay ChatGPT Atlas, oo ah hab cusub oo webka loogu dhex barto iyadoo ChatGPT kula joogo. Marka laga soo tago inuu yahay biraawsar web oo leh astaamo buuxa, Atlas wuxuu bixiyaa muuqaal mustaqbalka ah: adduun aad ChatGPT kula tegi karto internetka oo dhan si aad su’aalo u waydiiso, talooyin u hesho, una dhammaystirto hawlo adiga kuu ah. Qoraalkan, waxaan ku sharraxeynaa mid ka mid ah dhinacyada injineernimo ee ugu adag ee alaabta: sida aan ChatGPT ugu beddelnay biraawsar sii waxtar badan marka aad sii isticmaasho.
Ka dhigista ChatGPT kaaliye dhab ah oo webka ah waxay la micno ahayd dib-u-fikirka guud ee qaab-dhismeedka biraawsarka: kala saarista Atlas iyo deegaanka socodsiinta Chromium. Tani waxay u baahnayd samaynta hab cusub oo Chromium loogu dhex daro kaas oo noo oggolaanaya inaan gaarsiino yoolalkayaga alaabeed: bilow degdeg ah, jawaab-celin xitaa marka aad tabs badan furto, iyo samaynta aasaas adag oo loogu talagalay xaaladaha isticmaalka ee wakiilka ah.
Qaabaynta aasaaska

Chromium wuxuu ahaa qayb-dhisid dabiici ah. Wuxuu bixiyaa matoor web oo heer sare ah oo leh hannaan amni oo adag, waxqabad la xaqiijiyay, iyo waafaqid web oo aan lala tartami karin. Intaas waxaa dheer, waxaa horumariya bulsho caalami ah oo si joogto ah u hagaajisa. Waa xulasho aad loo isticmaalo oo loogu talagalay biraawsarrada casriga ah ee desktop-ka.
Dib-u-fikirka waayo-aragnimada biraawsarka
Kooxdayada naqshadeynta ee hibada leh waxay lahaayeen yoolal hammi badan oo ku saabsan waayo-aragnimada isticmaalaha, oo ay ku jiraan dhaqdhaqaaqyo hodan ah iyo saamayn muuqaal ah oo loogu talagalay astaamo sida Agent mode. Tani waxay ka dalbatay kooxdayada injineernimada inay adeegsadaan qaab-dhismeedyada native-ka ee ugu casrisan UI-gayaga (SwiftUI, AppKit and Metal), halkii si fudud dib loogu qurxin lahaa UX-ka Chromium ee il-furan. Sidaas darteed, UI-ga Atlas waa dib-u-dhis dhammaystiran oo dhammaan UX-ka codsiga ah.
Waxaan sidoo kale lahayn yoolal alaabeed kale sida waqtiyo bilow oo degdeg ah iyo taageeridda boqolaal tab iyada oo aan waxqabadka la ciqaabin. Yoolalkan way adkayd in lagu gaaro Chromium sidii uu yahay, maadaama uu aragti gaar ah ka qabo faahfaahin badan laga bilaabo taxanaha boot-ka, nooca threading-ka iyo moodooyinka tab-ka. Waxaan tixgelinnay samaynta isbeddello waaweyn halkan, laakiin waxaan doonaynay inaan xirmadayada patches-ka ee Chromium ka dhigno kuwo bartilmaameedsan si aan si dhakhso leh ugu dhex dari karno noocyo cusub. Si loo hubiyo in xawaaraha horumarinteennu uu u dardargeliyo inta ugu badan, waxaan u baahnayn inaan la nimaadno hab kale oo aan Chromium runtime ugu dhex galino uguna wadno.
Tijaabo muujinaysa maalgashigayaga farsamo ma ahayn oo keliya inuu suurto gelinayo tijaabo degdeg ah, dib-u-celin iyo gaarsiinta astaamo cusub – sidoo kale wuxuu noo oggolaanayay inaan ilaalino qayb muhiim ah oo ka mid ah dhaqanka injineernimada OpenAI: wax soo saarinta maalinta koowaad. Injineer kasta oo cusub wuxuu sameeyaa oo ku daraa isbeddel yar galabtii maalintiisa ugu horreysa. Waxaan u baahnayn inaan hubinno in tani suurtagal tahay inkastoo Chromium uu qaadan karo saacado in la soo dejiyo oo la dhiso.
Xalkeenna: OWL
Jawaabteennu caqabadahan waxay ahayd inaan dhisno lakab qaab-dhismeed cusub oo aan ugu yeerno OWL: OpenAI’s Web Layer. OWL waa sida aan u dhex galnay Chromium, taas oo ka dhigan in geeddi-socodka browser-ka Chromium uu ka shaqeynayo dibadda geeddi-socodka app-ka weyn ee Atlas.
U fakar sidan: Chromium wuxuu kacaameeyay biraawsarrada isagoo tabs-ka u raray geeddi-socodyo gooni ah. Annagu waxaan sii fogaynay fikraddaas annagoo Chromium laftiisa ka saaraya geeddi-socodka codsiga weyn una wareejinayna lakab adeeg oo go'doonsan. Isbeddelkani wuxuu furayaa faa’iidooyin isdaba joog ah:
- App ka fudud oo casri ah: Atlas waxaa loo dhisay ku dhowaad gebi ahaanba SwiftUI iyo AppKit. Hal luqad, hal tech stack, hal codebase nadiif ah.
- Bilow degdeg ah: Chromium wuxuu ku boot-gareeyaa asynchronouly asalka. Atlas ma sugo — pixels-ku waxay gaaraan shaashadda ku dhowaad isla markiiba.
- Ka go’naan gariir iyo burbur: Chromium waa matoor web awood badan oo adag. Haddii xadhiggiisa ugu weyn hakado, Atlas ma hakado. Haddii uu burburo, Atlas wuu sii shaqaynayaa.
- Dhibaatooyin merge oo yar: Maadaama aynaan ka dhisayn inta badan UI-ga il-furan ee Chromium, farqigayaga upstream Chromium aad buu uga yar yahay waana sahlan tahay in la ilaaliyo.
- Dib-u-celin degdeg ah: Injineerrada intooda badan uma baahna inay Chromium ka dhisaan gudaha kombiyuutarkooda. OWL gudaha waxaa loo soo diraa sidii binary horay loo dhisay, sidaas darteed dhismayaasha Atlas waxay qaataan daqiiqado ee ma aha saacado.
Maadaama injineerrada intooda badan ee kooxdayadu aanay si joogto ah uga dhisin Chromium source-ka, horumarintu si aad u degdeg badan bay u socon kartaa—xitaa xubnaha cusub ee kooxda waxay ku dari karaan isbeddello fudud galabtooda ugu horreysa.
Sida OWL u shaqeeyo
Heer sare, biraawsarka Atlas waa OWL Client, geeddi-socodka browser-ka Chromium-na waa OWL Host. Waxay ku wada xiriiraan IPC, gaar ahaanMojo(ku furmaa daaqad cusub), nidaamka gudbinta farriimaha ee Chromium. Waxaan u qornay Swift gaar ah (iyo xitaa TypeScript) bindings loogu talagalay Mojo, si app-keena Swift uu si toos ah ugu yeeri karo interfaces-ka dhinaca host-ka.
Maktabadda client-ka OWL waxay soo bandhigtaa API dadweyne oo Swift ah oo fudud, kaas oo qariya dhowr fikradood oo muhiim ah oo uu soo bandhigo lakabka adeegga host-ka:
- Session: Qaabee oo xakamee host-ka guud ahaan
- Profile: Maamul xaaladda browser-ka ee profile isticmaale gaar ah
- WebView: Xakamee oo ku dhex dar waxyaabaha webka ee goonida ah (tusaale, render, input, navigate, zoom, iwm.)
- WebContentRenderer: U gudbi dhacdooyinka gelinta dhuumaha rendering-ka Chromium oo ka hel jawaab-celin renderer-ka
- LayerHost/Client: Is dhaafsada macluumaadka compositing-ka ee u dhexeeya UI-ga iyo Chromium
Waxaa kale oo jira bar-dhammaadyo adeeg oo kala duwan oo loogu talagalay maaraynta astaamo heer sare ah sida bookmarks, downloads, extensions, iyo autofill.
WebViews, kuwaas oo wadaaga meel bandhig oo isku mar mid keliya lagu soo bandhigi karo gudaha app-ka client-ka, waxaa la gelinayaa lagana saaraya weel compositing wadaag ah. Tusaale ahaan, daaqadda browser-ka badanaa waxay leedahay hal weel wadaag ah oo muuqda, doorashada tab-na waxay WebView-ga tab-kaas gelisaa weelka. Dhinaca Chromium, weelkan wuxuu u dhigmaa gfx::AcceleratedWidget oo ugu dambayn ku tiirsan CALayer. Waxaan aqoonsiga context-ka ee lakabkaas u soo bandhignaa client-ka, halkaas oo NSView uu ku dhex daro isagoo adeegsanaya API-ga gaarka ah ee CALayerHost.
Xaalado gaar ah sida <select> dropdowns ama color pickers, kuwaas oo Chromium ku render-gareeyo popup widgets gooni ah, waxay adeegsadaan isla habkan. Ma laha content::WebContents, laakiin way leeyihiin content::RenderWidgetHostView leh gfx::AcceleratedWidget u gaar ah, sidaas darteed isla nooca rendering-ka loo wakiishay ayaa khuseeya.
Gudaha, OWL wuxuu ilaaliyaa in geometry-ga view-ga uu la jaanqaado dhinaca Chromium, si GPU compositor-ka loogu cusboonaysiin karo si waafaqsan oo uu had iyo jeer u soo saaro waxyaabaha lakabka ee cabbirka saxda ah iyo miisaanka qalabka.
Waxaan sidoo kale farsamadan dib ugu isticmaalnaa si aan si xulasho ah ugu soo bandhigno qaybo ka mid ah UI-ga native Views ee Chromium gudaha Atlas (tani sidoo kale waxay faa’iido u leedahay si dhakhso ah loogu bilaabo astaamo sida permission prompts iyada oo aan meel eber ah laga dhisin beddello SwiftUI ah). Farsamadani waxay si weyn uga amaahataa kaabeyaasha jira ee Chromium ee web apps la rakibi karo ee macOS.
Chromium UI wuxuu dhacdooyinka madalaha (sida macOS NSEvents) ugu turjumaa moodalka WebInputEvent ee Blink ka hor inta aan loo gudbin renderers. Laakiin maadaama OWL uu Chromium ku socodsiiyo geeddi-socod qarsoon, annaga ayaa tarjumaaddaas ku sameyna gudaha maktabadda client-ka Swift ka dibna dhacdooyinka horay loo turjumay ayaan ugu gudbinaa Chromium.
Halkaas ka dib, waxay raacaan isla wareegga nololeed ee dhacdooyinka gelinta dhabta ahi caadi ahaan ugu raaci lahaayeen waxyaabaha webka. Tani waxaa ku jira in dhacdooyinka dib loogu soo celiyo client-ka mar kasta oo boggu muujiyo inuusan qaban dhacdada. Marka tani dhacdo, waxaan dib u sameynaa NSEvent oo waxaan siinnaa inta kale ee app-ka fursad ay gelinta u maareeyaan.
Astaanta baadhista wakiilka ah ee Atlas waxay keentaa caqabado gaar ah oo ku saabsan hababkayaga rendering-ka, gudbinta dhacdooyinka gelinta, iyo kaydinta xogta.
Nooca isticmaalka kombiyuutarkayagu wuxuu filayaa hal sawir oo shaashadda ah inuu noqdo gelin. Laakiin qaar ka mid ah qaybaha UI-ga, sida <select> dropdowns, waxay ku render-gareeyaan meel ka baxsan xuduudaha tab-ka daaqado gooni ah. Agent mode, waxaan popups-kaas dib ugu dhex darnaa sawirka bogga weyn isku-duwid sax ah si noocgu u arko macnaha guud oo dhan hal frame gudaheed.
Dhanka gelinta, waxaan dabaqnaa isla mabda’a: dhacdooyinka uu agent-ku abuuro si toos ah ayaa loogu diraa renderer-ka, mana maraan lakabka browser-ka ee mudnaanta leh. Tani waxay ilaalinaysaa xadka sandbox-ka xitaa marka si otomaatig ah loo xakameeyo. Tusaale ahaan, ma doonayno in noocan dhacdooyinka ahi abuuro keyboard shortcuts ka dhigaya browser-ka inuu sameeyo waxyaabo aan khusayn waxyaabaha webka ee la muujinayo.
Baadhista agent-ku waxay sidoo kale ku socon kartaa duruuf ku meel gaar ah oo “aan la gelin.” Halkii aan la wadaagi lahayn profile-ka Incognito ee isticmaaleha ee jira, taas oo xaalad sii dayn karta, waxaan adeegsannaa kaabeyaasha StoragePartition ee Chromium si aan u abuurno kayd go’doonsan oo xasuus-ku-saleysan. Kulan kasta oo agent ah wuxuu ku bilaabmaa mid cusub, marka uu dhammaadana, dhammaan cookies-ka iyo xogta boggaga waa la tirtiraa. Waxaad socodsiin kartaa kulamo badan oo agent ah oo “aan la gelin”, mid kasta tab browser u gaar ah ku jira, mid walbana si buuxda uga go’doonsan kuwa kale.
Hab cusub oo webka loo isticmaalo
Midkoodna suurtagal ma noqon lahayn la’aanta bulshada caalamiga ah ee Chromium iyo shaqadooda cajiibka ah ee dhisidda aasaaska webka casriga ah. OWL wuxuu ku dul dhisan yahay aasaaskaas hab cusub: kala furfuridda matoorka iyo app-ka, isku darka barxad web oo heer caalami ah iyo qaab-dhismeedyo native oo casri ah, iyo furitaanka qaab-dhismeed ka dheereeya oo dabacsan.
Annagoo dib u fakarayna sida browser-ku u hayo Chromium, waxaan abuureynaa meel waayo-aragnimooyin cusub ah: bilowyo ka siman, UI ka hodansan, is-dhexgal ka adag inta kale ee OS-ka, iyo wareeg horumarin oo ku socda xawaaraha fikradaha. Haddii taasi u eg tahay noocaaga caqabadda, eeg shaqooyinkayaga furan si aad Atlas uga shaqeyso adigoo ah Software Engineer, Atlas, Software Engineer, iOS, iyo kuwa kale.
