Sobes.tech
Junior — Middle

Ինչպե՞ս է տեղի ունենում հիշողության բաշխման գործընթացը համակարգում՝ բաշխման խնդրանքի պահին։

sobes.tech AI

Պատասխան AI-ից

Go-յի հիշողության հատկացման գործընթացը սկսվում է make կամ new ներքին ֆունկցիայի միջոցով, կամ փոփոխականներ ստեղծելիս։ Ներքինում, Go-ն օգտագործում է իր սեփական հիշողության կառավարիչը և աղբամաքար հավաքողը։

Երբ հիշողություն է պահանջվում՝

  1. Նախ ստուգվում է, արդյոք հողամասում կա համապատասխան ազատ բլոկ։
  2. Եթե չկա, կատարվում է համակարգային կանչ նոր հիշողություն հատկացնելու համար (օրինակ, mmap կամ sbrk միջոցով):
  3. Հատկացված հիշողությունը բաժանվում է անհրաժեշտ չափի օբյեկտների։
  4. Հիշողությունը մնում է զրոյական։

Go-ն օգտագործում է տարբեր հիշողության պուլեր տարբեր չափերի օբյեկտների համար, ինչը արագացնում է հատկացումը և նվազեցնում է մասնատումը։ Աղբամաքար հավաքողը պատասխանատու է անօգտագործված հիշողությունը ազատելու համար, ինչը ծրագրավորողներին հնարավորություն է տալիս չմտահոգվել ձեռքով հիշողության կառավարումից։