POSIX பயன்பாடுகளின் தொகுப்பு மற்றும் ரஸ்டில் எழுதப்பட்ட AV1 குறிவிலக்கி

Posixutils-rs 0.2.1 திட்டத்தின் வெளியீடு வெளியிடப்பட்டது, POSIX தரநிலையில் குறிப்பிடப்பட்டுள்ள கட்டளை வரி பயன்பாடுகளின் தொகுப்பை ரஸ்ட் மொழியில் உருவாக்குவதையும் அதன் தேவைகளை பூர்த்தி செய்வதையும் நோக்கமாகக் கொண்டது (cp, mv, awk, make, vi, find, வரிசை, wc, xargs, sh, m4, sed போன்றவை). வளர்ச்சியின் போது, ​​முடிந்த போதெல்லாம், ஏற்கனவே இருக்கும் க்ரேட் பேக்கேஜ்கள் பயன்படுத்தப்படுகின்றன. Posixutils-rs குறியீடு MIT உரிமத்தின் கீழ் விநியோகிக்கப்படுகிறது.

இந்த திட்டம் முதன்மையாக POSIX.2024 விவரக்குறிப்பின் தேவைகளுக்கு இணங்குவதில் கவனம் செலுத்துகிறது மற்றும் GNU பயன்பாடுகளுடன் இணக்கத்தன்மையை வழங்க திட்டமிடவில்லை, இதன் செயல்பாடு ஆசிரியர்களால் நியாயமற்ற முறையில் வீங்கியதாகக் கருதப்படுகிறது. இருப்பினும், posixutils-rs ஏற்கனவே உள்ள ஸ்கிரிப்ட்களில் காணப்படும் மிகவும் பிரபலமான மேம்பட்ட GNU பயன்பாட்டு விருப்பங்களை செயல்படுத்த திட்டமிட்டுள்ளது.

Rust இல் GNU Coreutils செயல்படுத்தலை உருவாக்கும் uutils திட்டத்தில் உள்ள வேறுபாடுகள், vi, awk, bc, m4, cron மற்றும் c99 கம்பைலர் போன்ற POSIX அமைப்பு கூறுகளை உருவாக்குவது உட்பட, பரந்த அளவிலான பயன்பாடுகளை உள்ளடக்கியது. அத்துடன் ஒரு குறைந்தபட்ச அணுகுமுறை, இது POSIX விவரக்குறிப்பில் வரையறுக்கப்பட்ட அல்லது இல்லாமல் செய்வது சிக்கலான விருப்பங்களின் குறைந்தபட்சத் தொகுப்பை மட்டுமே வழங்குகிறது. posixutils-rs தொகுப்பில் உள்ள புரோகிராம்கள் பிற திட்டங்களில் பயன்படுத்தக்கூடிய சுய-கட்டுமான குறியீடாக ஆரம்பத்தில் வழங்கப்படுகின்றன.

தற்போது, ​​திட்டத்தால் உருவாக்கப்பட்ட 55 பயன்பாடுகள் POSIX உடன் இணங்குகின்றன மற்றும் சோதனைக் கவரேஜ் நிலையில் உள்ளன, 22 பயன்பாடுகள் தேவையான செயல்பாட்டை வழங்குகின்றன (ஆனால் சோதனை கவரேஜ் இன்னும் செயல்படுத்தப்படவில்லை), 20 வரைவு கட்டத்தில் உள்ளன, மேலும் 44 பயன்பாடுகளில் வேலை செய்யப்படவில்லை. இன்னும் தொடங்கியது. செயல்படுத்தப்பட்ட செயல்பாடுகளுடன் கூடிய பயன்பாடுகளில்: awk, basename, bc, cp, cut, chown, date, diff, file, find, grep, ls, nice, ps, sort, strings, tail, tr, tty, wc, uniq. பயன்பாடுகளில், பணிகள் தொடங்கப்படவில்லை: crontab, c17, cflow, ctags, gettext, ed, ex, iconv, lex, locale, mailx, make, patch, pax, sed, sh, sccs, yacc, uucp, vi .

புதிய வெளியீட்டில் உள்ள மாற்றங்கள், awk, m4, ps, realpath, join, time, fuser மற்றும் gencat பயன்பாடுகளின் செயலாக்கங்களைச் சேர்த்தல், அத்துடன் musl C நூலகத்தின் அடிப்படையிலான சூழல்களில் வேலை செய்வதற்கான ஆரம்ப ஆதரவு மற்றும் ftw வழங்குதல் ஆகியவை அடங்கும். மாநில-பாதுகாக்கப்பட்ட அடைவு மரம் பயண இனம் நூலகம்.

கூடுதலாக, ரஸ்ட் மொழியில் எழுதப்பட்ட AV1 வீடியோ குறியீட்டு வடிவமைப்பிற்கான உயர் செயல்திறன் குறியாக்கியை உருவாக்கும் rav1d திட்டத்தின் அறிவிப்பை நாம் கவனிக்கலாம். உயர் செயல்திறனால் வகைப்படுத்தப்படும் dav1d நூலகத்தின் குறிவிலக்கிக் குறியீட்டை ரஸ்டுக்கு போர்ட் செய்வதன் மூலம் வளர்ச்சி மேற்கொள்ளப்படுகிறது. தயாரிக்கப்பட்ட போர்ட் dav1d லைப்ரரி API உடன் முழுமையாக இணக்கமாக உள்ளது. எங்கள் சொந்த பதிப்பை எழுதுவதற்குப் பதிலாக ஏற்கனவே உள்ள நூலகத்தை போர்ட் செய்வதற்கான தேர்வு, சாத்தியமான பொருந்தக்கூடிய சிக்கல்களைத் தவிர்ப்பதற்கும், AV1 வடிவமைப்பில் பணிபுரியும் அனைத்து நுணுக்கங்களையும் கணக்கில் எடுத்துக்கொள்வதற்கும் ஏற்கனவே நிரூபிக்கப்பட்ட மற்றும் சோதிக்கப்பட்ட குறிவிலக்கியைப் பயன்படுத்துவதற்கான விருப்பத்தால் விளக்கப்படுகிறது.

அதன் தற்போதைய வடிவத்தில், rav1d இன் தயாரிக்கப்பட்ட செயலாக்கமானது செயல்திறனில் dav6d ஐ விட 1% பின்தங்கியிருக்கிறது, ஆனால் எதிர்காலத்தில், குறியீட்டை மேம்படுத்திய பிறகு, செயல்திறனில் சமநிலையை அடைய திட்டமிடப்பட்டுள்ளது. உயர் செயல்திறனை அடைய, ஒரு அணுகுமுறை பயன்படுத்தப்பட்டது, இதில் பழமையான மதிப்புகளை டிகோடிங் செய்வதற்கான அடிப்படை செயல்பாடுகள் அசெம்பிளரில் பாதுகாப்பற்ற தொகுதிகள் (dav1d இலிருந்து அசெம்பிளி குறியீடு பயன்படுத்தப்படுகிறது), ஸ்ட்ரீம் பாகுபடுத்துதலுடன் சரிபார்த்த பிறகு பெறப்பட்ட தரவு. ரஸ்டில் எழுதப்பட்ட செயல்பாடுகள் (வீடியோ டிகோடர்களில் உள்ள பாதிப்புகளைக் கண்டறிவதில் கடந்தகால அனுபவம், சிக்கல்கள் முக்கியமாக குறைந்த-நிலை தரவு செயல்பாடுகளில் இல்லாமல், உயர்-நிலை வடிவமைப்பு பாகுபடுத்தும் குறியீட்டில் எழுகின்றன என்பதைக் காட்டுகிறது).

ஆதாரம்: opennet.ru

கருத்தைச் சேர்