د لینوکس کرنل لپاره د memchr فنکشن پلي کولو وړاندیز شوی، تر 4 ځله ګړندی پرمخ ځي

د memchr() فنکشن د اصلاح شوي پلي کولو سره د پیچونو سیټ، چې په صف کې د سمبول لټون لپاره کارول کیږي، په لینکس کرنل کې د شاملولو لپاره وړاندیز شوی. د پخوانۍ نسخې برعکس، کوم چې د بایټ بایټ پرتله کارول کیږي، وړاندیز شوی تطبیق د 64- او 32-bit CPU راجسترونو بشپړ استعمال په پام کې نیولو سره جوړ شوی. د بایټ پر ځای، پرتله کول د ماشین کلمو په کارولو سره ترسره کیږي، کوم چې لږترلږه 4 بایټ ته اجازه ورکوي چې په یو وخت کې پرتله شي.

کله چې په لوی تارونو کې لټون کول، نوی اختیار د زاړه په پرتله شاوخوا 4 ځله ګړندی وګرځید (د مثال په توګه، د 1000 حروفونو تارونو لپاره). د کوچنیو تارونو لپاره، د نوي پلي کولو موثریت دومره مهم نه دی، مګر بیا هم د اصلي نسخې په پرتله لوړ دی. په لینکس کرنل کې، په memchr() کې پروسس شوي تارونو اندازه 512 بایټ ته رسیږي. د 512 بایټ تارونو لپاره د فعالیت لاسته راوړنه ، په داسې حالت کې چیرې چې لټون شوي کرکټر د تار په پای کې وي ، 20٪ دی.

د 5.18-bit او 32-bit آرکیټیکچرونو لپاره د نوي "memchr()" اختیار سره د 64 کرنل ازموینې کومه ستونزه نه وه څرګنده کړې. د کرنل فرعي سیسټمونو ټولیز فعالیت لاسته راوړنه کله چې د "memchr()" غوره شوې نسخه کارول کیږي تر اوسه نه ارزول شوي، او نه هم د پلي کولو ځای په ځای کولو امکانات تحلیل شوي (د کرنل کوډ کې، د memchr() فنکشن ته زنګونه 129 ځله پیښیږي د چلوونکو او فایل سیسټمونو په کوډ کې شامل دي).

سرچینه: opennet.ru

Add a comment