Pamokos

Kokios yra procesoriaus gijos? skirtumai su branduoliais

Turinys:

Anonim

Šiame straipsnyje mes trumpai paaiškinsime, kas yra procesoriaus gijos arba dar vadinamos gijomis angliškai ar programavimo gijas, norėdami nustatyti esminius skirtumus tarp šių ir procesoriaus branduolių. Tarp mažiau patyrusių ir net labiau patyrusių vartotojų vis dar yra gana daug painiavos šia tema. Štai kodėl mes nusprendėme kiek įmanoma paaiškinti šias sąvokas.

Ši gijų apdorojimo samprata nėra būtina žinoti perkant procesorių normaliam vartotojui. Daugeliu atvejų geriau daugiau nei mažiau, tai beveik visada yra tiesa. Programos kūrimo darbe mes turime žinoti, kas yra tos gijos. Priklausomai nuo to, kaip programa yra suprogramuota ir kompiliuota, ji turės labiau optimizuotą vykdymą procesoriams, turintiems daugiau gijų nei branduoliams. Ir čia mes bandysime patekti į savo paaiškinimą.

Turinio rodyklė

Kokios yra procesoriaus šerdys

Pradėsime paaiškindami, kas yra mūsų procesoriaus branduolys, taigi turėsime šias išankstines žinias, kad nesusipainiotume.

Mes žinome, kad procesorius yra atsakingas už programų, įkeltų į mūsų kompiuterio RAM atmintį, instrukcijas vykdymą ir vykdymą. Per jį praeina praktiškai visos instrukcijos, reikalingos atlikti tipines užduotis mūsų kompiuteryje, naršyti, rašyti, peržiūrėti nuotraukas ir pan. Fiziniame skyriuje procesorius yra integruota grandinė, sudaryta iš milijonų tranzistorių, sudarančių loginius vartus, kad būtų galima perduoti ar neperduoti duomenų bitus energijos pavidalu, be papildomų veiksmų.

Na, šioje mažoje mikroschemoje yra įvairių modulių, kuriuos mes galime vadinti branduoliais, be kitų elementų, kurie mums dabar neįdomūs. Procesoriai prieš kelerius metus turėjo tik vieną iš šių branduolių ir galėjo apdoroti vieną instrukciją per ciklą. Šie ciklai matuojami megahercais (MHz), kuo daugiau MHz, tuo daugiau instrukcijų galime atlikti kiekvieną sekundę.

Dabar turime ne vieną branduolį, bet kelis. Kiekvienas branduolys žymi antrinį procesorių, tai yra, kiekvienas iš šių antrinių procesorių vykdys vieną iš šių instrukcijų, taigi galės vykdyti kelis iš jų kiekviename laikrodžio cikle su kelių branduolių procesoriumi. Jei turime 4 branduolių procesorių, mes galime vykdyti 4 instrukcijas vienu metu, o ne tik vieną. Taigi spektaklio pagerinimas padidėja keturis kartus. Jei mes turime 6, tada 6 instrukcijos tuo pačiu metu. Taip dabartiniai procesoriai yra daug galingesni nei senesni.

Ir atminkite, kad šie branduoliai fiziškai yra mūsų procesoriuje, tai nėra kažkas virtualus ar sukurtas pagal kodą.

Kas yra apdorojimo gijos?

Gijos, sriegiai ar sriegiai nėra fizinė procesoriaus dalis, bent jau tada, kai reikia daugiau branduolių ar kažkas panašaus.

Apdorojimo giją galime apibrėžti kaip programos duomenų valdymo srautą. Tai priemonė, leidžianti efektyviau valdyti procesoriaus užduotis ir įvairius jo branduolius. Gijų dėka minimalius paskirstymo vienetus, kurie yra programos užduotys ar procesai, galima padalyti į dalis, kad būtų optimizuotas kiekvienos instrukcijos laukimas proceso eilėje. Šie gabaliukai vadinami siūlais arba siūlais.

Kitaip tariant, kiekviename apdorojimo siūle yra atliktinos užduoties dalis, kurią atlikti yra paprasčiau nei tuo atveju, jei visą užduotį pateiktume fiziniame branduolyje. Tokiu būdu centrinis procesorius sugeba apdoroti keletą užduočių tuo pačiu metu ir vienu metu, iš tikrųjų jis galės atlikti tiek užduočių, kiek turi gijų, ir paprastai kiekvienoje šerdyje yra po vieną ar dvi. Procesoriuose, turinčiuose, pavyzdžiui, 6 branduolius ir 12 gijų, jie galės padalinti procesus į 12 skirtingų užduočių, o ne tik į 6.

Dėl tokio darbo sistemos ištekliai gali būti valdomi teisingiau ir efektyviau. Žinai… jis pasiskirs ir tu laimėsi visą gyvenimą. Šie procesoriai vadinami kelių sriegių. Šiuo metu turime aiškiai pasakyti, kad procesorius, turintis 12 gijų, neturės 12 gyslų, šerdys yra fizinės kilmės, o gijos - logiškos.

Tai tikrai buvo šiek tiek abstrakti ir sunkiai suprantama, todėl pažiūrėkime, kaip tai paverčiama, jei kalbame apie programos architektūrą savo kompiuteryje.

Programos, procesai ir temos

Mes visi žinome, kas yra programa, tai kodas, kuris yra saugomas mūsų kompiuteryje ir yra skirtas atlikti tam tikrą užduotį. Programa yra programa, tvarkyklė taip pat yra programa ir net operacinė sistema yra programa, galinti vykdyti kitas jos viduje esančias programas. Visi jie saugomi dvejetainiu pavidalu, nes procesorius supranta tik tuos, kurių nulis yra, dabartinis / ilgalaikis.

Programos procesai

Norėdami paleisti programą, ji įkeliama į atmintį, RAM. Ši programa yra pakraunama procesų, kurie turi su tuo susijusį dvejetainį kodą ir reikalingus išteklius, kuriuos reikia veikti, kuriuos operacinė sistema paskirs „protingai“.

Pagrindiniai procesui reikalingi ištekliai yra programos skaitiklis ir įrašų krūva.

  • Programų skaitiklis (CP): jis vadinamas komandų rodykle ir seka vykdomų instrukcijų seką. Registrai: tai yra procesoriuje esantis sandėlis, kuriame gali būti saugoma instrukcija, saugojimo adresas ar bet kokie kiti duomenys. Stack: tai yra duomenų struktūra, kurioje saugoma informacija, susijusi su egzemplioriais, kuriuos kompiuteryje veikia programa.

Tada kiekviena programa yra padalinta į procesus ir yra saugoma tam tikroje vietoje atmintyje. Taip pat kiekvienas procesas vyksta nepriklausomai, ir tai labai svarbu suprasti, nes būtent taip procesorius ir sistema sugeba vienu metu vykdyti kelias užduotis, tai vadiname daugiafunkcine sistema. Ši duomenų apdorojimo sistema yra kaltininkas, kad mes galime tęsti darbą su savo kompiuteriu, net jei programa buvo užblokuota.

Proceso gijos

Čia atsiranda apdorojimo gijos, operacinėse sistemose vadinamos gijomis. Siūlas yra proceso vykdymo vienetas. Mes galime padalyti procesą į gijas, ir kiekvienas iš jų bus vykdymo gija.

Jei programa nėra kelių gijų, joje esantys procesai turės tik vieną giją, todėl juos bus galima apdoroti tik vienu metu. Atvirkščiai, jei mes turime kelių sriegių procesus, juos galima suskirstyti į keletą dalių, ir kiekviena iš šių gijų dalijasi procesui priskiriamais ištekliais. Taigi mes pasakėme, kad daugiasluoksnis yra efektyvesnis.

Be to, kiekviena gija turi savo įrašų krūvą, kad du ar daugiau jų būtų galima apdoroti tuo pačiu metu, skirtingai nei vienas procesas, kuris turės būti vykdomas visi vienu metu. Gijos yra paprastesnės užduotys, leidžiančios vykdyti procesą padalijant. Ir tai iš esmės yra galutinė perdirbimo gijų funkcija. Kuo daugiau gijų, tuo didesnis procesų pasiskirstymas ir tuo didesnė vienu metu atliekamų skaičiavimų apimtis, taigi, tuo didesnis efektyvumas.

Dar nebaigėme, vis dar turime laukiantį klausimą „ Kas nutiks tada, kai šerdis su dvigubu siūlu ? Mes jau sakėme, kad kiekvienas branduolys yra pajėgus vienu metu vykdyti vieną nurodymą. CPU turi sudėtingą algoritmą, kuris padalija vykdymo laiką efektyviausiu įmanomu būdu, taip kiekvienai užduočiai priskirdamas tam tikrą vykdymo intervalą. Užduočių pakeitimas yra toks greitas, kad atsiras jausmas, kad branduolys užduotis vykdo lygiagrečiai.

Ar galime pamatyti tuos siūlus ar siūlus sistemoje?

Ne per daug išsamiai, bet taip, mes galime juos pamatyti tiek „Windows“, tiek „Mac“.

„Windows“ atveju turėsime tik atidaryti užduočių tvarkytuvę ir pereiti prie „ našumo “. Tada mes spustelėsime žemiau esančią nuorodą „ išteklių monitorius “. Šiame naujame lange kiekvienas procesas bus padalintas į procesoriaus sunaudojimą ir gijas, tai bus gijos.

Mac“ veiklos monitoriuje turėsime tiesiogiai pagrindiniame ekrane išvardytas gijas.

Tai užbaigia mūsų straipsnį apie tai, kas yra procesoriaus apdorojimo gijos. Tai tikrai yra gana sudėtinga paaiškinti tema ir gana abstrakti, ypač vartotojams, kurie nevisiškai supranta, kaip veikia procesorius. Tačiau šiuo atveju turime gerų naujienų, nes taip pat turime gana gerą straipsnį, kuriame pasakojama apie tai, kaip veikia procesorius ir kaip atliekamas visas instrukcijų ciklas.

Apsilankykite mūsų straipsniuose apie:

Tikimės, kad viskas buvo daugiau ar mažiau aišku, ir vertiname tai, kad pasirinkote mus žinoti daugiau šia tema.

Pamokos

Pasirinkta redaktorius

Back to top button