የኒም ፕሮግራሚንግ ቋንቋ ደራሲ አንድሪያስ ሩምፕፍ (አራክ)፣ በኒም ውስጥ ካሉት ነባር ዘዴዎች ጋር ከተያያዙት ቁልፍ ችግሮች አንዱን የሚፈታ አዲስ የማህደረ ትውስታ አስተዳደር ስልተ ቀመር፣ YRC (“Ürk” ተብሎ የሚጠራ) አስታውቋል፤ ይህም በኒም ውስጥ ካሉት ነባር ዘዴዎች ጋር ከተያያዙት ቁልፍ ችግሮች አንዱን ይፈታዋል፤ ይህም የክር ድንበሮችን የሚያቋርጡ ክብ ማጣቀሻዎችን በትክክል ማስተናገድ አለመቻል ነው።
ከYRC በፊት፣ የኒም የቀረቡት የማህደረ ትውስታ አስተዳደር ስልተ ቀመሮች የሚከተሉት ገደቦች ነበሩት፡ ARC ባለብዙ ክር ንባብ ወይም የዑደት አያያዝን አይደግፍም፤ አቶሚክ ARC ለክር ደህንነቱ የተጠበቀ ነበር ነገር ግን የዑደት ማጣቀሻዎችን አያስተናግድም ነበር፤ ORC የዑደት ማጣቀሻዎችን ያስተናግዳል ነገር ግን በአንድ ክር ውስጥ ብቻ በትክክል ማድረግ ይችል ነበር (በክሮች መካከል የተጋሩ ማጣቀሻዎችን ሲጠቀሙ የማህደረ ትውስታ መፍሰስ ይከሰታል)።
የታቀደው YRC የክር ደህንነትን እና የተጠላለፈ ዑደት አያያዝን በሃይብሪድ አቀራረብ በመጠቀም ያጣምራል፡ የአቶሚክ ማጣቀሻ ቆጠራ ለሳይክሊክ መረጃ ጥቅም ላይ ይውላል፣ እና ጠቋሚዎችን ሲመድቡ ብቻ የሚነቃ የጽሑፍ መከላከያ ለሳይክሊክ መረጃ ጥቅም ላይ ይውላል። በታቀደው ትግበራ፡ ሰብሳቢው በትክክል ሲያስፈልግ ይጀምራል (ምንም የማቆሚያ-ዓለም ማቆሚያዎች የሉም)፤ የRC ሩት ነገሮች በግልጽ የተገለጹ እና አንድ ጊዜ ይዋሃዳሉ (ምንም የክር ቁልል ቅኝት አያስፈልግም)፤ በተደጋጋሚ ጊዜ ባለብዙ ክር መሰረዝ ይወገዳል (ምንም ዓለም አቀፍ የጥልፍ ደረጃ የለም)፤ ሚውቴተሮች ውሂብን ለማንበብ ነፃ ናቸው፤ ማንኛውም ክር የቆሻሻ ሰብሳቢውን ሲያስፈልግ ሊያስጀምር ይችላል (ምንም የተወሰነ የጂሲ ክር የለም)።
YRC ሙሉ የ incRef/decRef ክስተት መረጃን ይጠቀማል፣ ይህም ባህላዊ የዱካ ቆሻሻ አሰባሳቢዎች (GCs) የሚጥሉትን እና ከዚያም በዱካ ቅኝቶች እና በግራፍ መተላለፊያዎች መልሶ ማግኘት አለባቸው። አተገባበሩ 550 የኮድ መስመሮችን ብቻ የሚወስድ ሲሆን በTLA+ ውስጥ ባለው ዝርዝር መግለጫ እና በLean የመሳሪያ ስብስብ ውስጥ ባለው ማረጋገጫ አማካኝነት ለደህንነት እና ለግድ-አልባነት በይፋ የተረጋገጠ ነው። YRC "ከሞላ ጎደል የመጨረሻው የማጣቀሻ ቆጠራ ዑደት ሰብሳቢ" ተብሎ ለገበያ ቀርቧል (ፊደል Y በፊደል Z ይቀድማል)፣ እንዲሁም በጣም ቀላሉ የክር-አስተማማኝ የቆሻሻ ሰብሳቢ - እንደ ደራሲው ገለጻ፣ በባህላዊ የዱካ ቆሻሻ አሰባሳቢዎች ውስጥ የሚገኙትን ብዙ ውስብስብ ዘዴዎችን አያስፈልገውም።
YRC ከ ORC ጋር ተመሳሳይ ኤፒአይ ያቀርባል፣ አጥፊዎች በቆሻሻ አሰባሰብ ወቅት ይከናወናሉ። ሰብሳቢው በክሮች የተደረሰባቸውን የነገር ንዑስ ግራፎች ብቻ ያስኬዳል፣ ይህም ያልተገናኙ የውሂብ አወቃቀሮችን (መሸጎጫዎች፣ ረጅም ዕድሜ ያላቸው ነገሮች) ሳይነኩ ይተዋቸዋል - ይህ ከ "ተስማሚ" ትውልድ ቆሻሻ አሰባሳቢ ጋር ተመሳሳይ አቀራረብ ያለ ትውልድ GC። ዋናው ችግር አፈጻጸም ነው፡ YRC በኦርኬንች መለኪያ ውስጥ ከ ORC ጋር ሲነጻጸር ከ1.5-2.0x ፍጥነት መቀዛቀዝ ያሳያል። ደራሲው ይህንን ሙሉ በሙሉ ለክር ደህንነቱ የተጠበቀ የዑደት ማጣቀሻዎችን አያያዝ ተቀባይነት ያለው ልውውጥ አድርጎ ይቆጥረዋል።
YRC በኒም የልማት ስሪት ውስጥ አስቀድሞ ይገኛል እና በ"--mm:yrc" ባንዲራ ሊነቃ ይችላል። ሆኖም፣ በቀጣዮቹ ልጥፎች፣ ደራሲው የመጀመሪያው ትግበራ ከባድ ስህተቶችን እንደያዘ እና ዑደቶችን በትክክል እንዳልገነባ አምኗል። በታተመበት ጊዜ፣ ዋና ዋና ጉዳዮችን የሚፈቱ የጥበቃ ስብስቦች ተዘጋጅተዋል። ደራሲው የግንባታ ሂዩሪስቲክስን ማረም እና የቀሩትን ሳንካዎች ማስተካከል ቀጥሏል፣ መሰረታዊው ስልተ ቀመር እና መደበኛ ማረጋገጫው ትክክል ሆነው ይቀጥላሉ።
ምንጭ: opennet.ru
