FreeBSD Q2019 XNUMX முன்னேற்ற அறிக்கை

வெளியிடப்பட்டது ஏப்ரல் முதல் ஜூன் 2019 வரை FreeBSD திட்டத்தின் வளர்ச்சி குறித்த அறிக்கை. மாற்றங்களில் நாம் கவனிக்கலாம்:

  • பொதுவான மற்றும் முறையான சிக்கல்கள்
    • மையப்படுத்தப்பட்ட சப்வர்ஷன் மூலக் கட்டுப்பாட்டு அமைப்பிலிருந்து பரவலாக்கப்பட்ட ஜிட் அமைப்புக்கு மூலக் குறியீட்டை நகர்த்துவதற்கான சாத்தியக்கூறுகளை ஆராய ஒரு பணிக்குழுவை உருவாக்க கோர் குழு முடிவு செய்தது.
    • கணினியைப் பயன்படுத்தி FreeBSD கர்னலின் fuzz சோதனை நடத்தப்பட்டது syzkaller மேலும் பல அடையாளம் காணப்பட்ட பிழைகள் சரி செய்யப்பட்டன. 32-பிட் கர்னலைக் கொண்ட கணினிகளில் 64-பிட் சூழலுடன் இணக்கத்தன்மைக்காக நூலகங்களின் தெளிவற்ற சோதனைக்காக ஒரு அடுக்கு சேர்க்கப்பட்டது. பைவ் அடிப்படையிலான மெய்நிகர் இயந்திரங்களில் syzkaller ஐ இயக்கும் திறன் செயல்படுத்தப்பட்டுள்ளது. அடுத்த கட்டத்தில், சிஸ்டம் கால் டெஸ்டிங்கின் கவரேஜை விரிவுபடுத்தவும், கர்னலைச் சரிபார்க்க எல்.எல்.வி.எம் சானிடைசரைப் பயன்படுத்தவும், ஃபஸ்ஸிங் சோதனையின் போது கர்னல் டம்ப்களைச் சேமிக்க நெட்டம்பைப் பயன்படுத்தவும் திட்டமிடப்பட்டுள்ளது.
    • கர்னல் மட்டத்தில் zlib செயல்படுத்தலை மேம்படுத்தும் பணி தொடங்கியுள்ளது. zlib குறியீட்டிற்கான கர்னல் அணுகலுக்காக, contrib/zlib கோப்பகம் sys/contrib/zlib என மறுபெயரிடப்பட்டது, மேலும் zlib/crc.h உடன் முரண்படுவதைத் தவிர்க்க crc.h தலைப்புக் கோப்பும் மறுபெயரிடப்பட்டது. zlib மற்றும் inflate சார்ந்து இருக்கும் மரபுக் குறியீடு சுத்தம் செய்யப்பட்டது. அடுத்து, சுருக்கத்தைப் பயன்படுத்தும் செயல்பாடுகளின் புதிய பதிப்பிற்கு படிப்படியாக மாற்றுவதற்கு பழைய மற்றும் புதிய zlib உடன் ஒரே நேரத்தில் கர்னலை உருவாக்கும் திறனை வழங்க திட்டமிடப்பட்டுள்ளது;
    • லினக்ஸ் சூழல் எமுலேஷன் உள்கட்டமைப்பு (லினக்சுலேட்டர்) புதுப்பிக்கப்பட்டது. ஸ்ட்ரேஸ் பயன்பாடு போன்ற லினக்ஸ் பிழைத்திருத்தக் கருவிகளுக்கான ஆதரவு அதிகரித்தது. linux-c7-strace தொகுப்பு போர்ட்களில் சேர்க்கப்பட்டுள்ளது, இது நிலையான ட்ரஸ் மற்றும் ktrace பயன்பாடுகளுக்குப் பதிலாக லினக்ஸ் இயங்கக்கூடிய கோப்புகளைக் கண்டறியப் பயன்படுகிறது, இது இன்னும் சில லினக்ஸ்-குறிப்பிட்ட கொடிகள் மற்றும் கட்டமைப்புகளை டிகோட் செய்ய முடியாது. கூடுதலாக, லினக்ஸ் டெஸ்ட் ப்ராஜெக்ட் எக்ஸிகியூட்டபிள்களுடன் கூடிய linux-ltp தொகுப்பு சேர்க்கப்பட்டது மற்றும் glibc இன் புதிய பதிப்புகளுடன் இணைக்கப்பட்ட எக்ஸிகியூட்டபிள்களுடன் பொருந்தக்கூடிய சிக்கல்கள் தீர்க்கப்பட்டுள்ளன;
    • pmap பொறிமுறையில் தாமதமான செல்லாததாக்குதல் செயல்பாடுகளை செயல்படுத்துவது, பூட்டுகள் இல்லாமல் செயல்படும் வரிசை செயலாக்க வழிமுறையின் பயன்பாட்டிற்கு மாற்றப்பட்டது, இது அதிக எண்ணிக்கையிலான இணையான unmap செயல்பாடுகளைச் செய்யும்போது அளவிடுதல் சிக்கல்களைத் தீர்ப்பதை சாத்தியமாக்கியது;
    • execve() குடும்பத்தின் கணினி அழைப்புகளைச் செயல்படுத்தும் போது vnodeஐத் தடுப்பதற்கான வழிமுறை மாற்றப்பட்டுள்ளது, இது ஒரே கோப்பிற்கு execve()ஐ ஒரே நேரத்தில் இயக்கும்போது (உதாரணமாக, இணைநிலையுடன் கூடிய அசெம்பிளி செயல்பாடுகளைச் செய்யும்போது) அதிக செயல்திறனை அடைவதை சாத்தியமாக்கியது. கம்பைலர் வெளியீட்டின்);
  • பாதுகாப்பு
    • bhyve ஹைப்பர்வைசர் கெஸ்ட் சூழல்களை ஒரு ஹோஸ்டில் இருந்து மற்றொரு ஹோஸ்டுக்கு லைவ் மைக்ரேஷனுக்கான ஆதரவைத் தொடர்ந்து மேம்படுத்துகிறது மற்றும் சேவ்/ரீஸ்டோர் செயல்பாடு, இது கெஸ்ட் சிஸ்டத்தை முடக்கி, ஒரு கோப்பில் நிலையைச் சேமித்து, பின்னர் செயல்படுத்தலை மீண்டும் தொடங்க அனுமதிக்கிறது.
    • libvdsk நூலகத்தைப் பயன்படுத்துவதன் மூலம், QCOW2 வடிவத்தில் வட்டுப் படங்களுக்கான ஆதரவை bhyve சேர்த்துள்ளது. வேலை செய்ய நிறுவல் தேவை
      சிறப்பாக மாற்றியமைக்கப்பட்டது bhyve இன் பதிப்பு, இது libvdsk அடிப்படையிலான கோப்பு செயல்பாட்டு கையாளுதல்களைப் பயன்படுத்த மாற்றப்பட்டது. அறிக்கையிடல் காலத்தில், libvdsk புதிய வடிவங்களுக்கான ஆதரவை எளிதாக்குதல், வாசிப்பு மற்றும் எழுதுதல் செயல்திறனை மேம்படுத்துதல் மற்றும் நகல்-ஆன்-ரைட்டுக்கான ஆதரவைச் சேர்த்தல் போன்ற பணிகளையும் மேற்கொண்டது. மீதமுள்ள பணிகளில், பைவின் முக்கிய கட்டமைப்பில் libvdsk இன் ஒருங்கிணைப்பு குறிப்பிடப்பட்டுள்ளது;

    • போக்குவரத்து தகவல்களை சேகரிக்கும் அமைப்பு துறைமுகங்களில் சேர்க்கப்பட்டுள்ளது
      மால்ட்ரெயில், இது தீங்கிழைக்கும் நெட்வொர்க் கோரிக்கைகளுக்கான பொறிகளை உருவாக்க உங்களை அனுமதிக்கிறது (தடுப்புப்பட்டியலில் இருந்து ஐபிகள் மற்றும் டொமைன்கள் சரிபார்க்கப்படுகின்றன) மற்றும் கண்டறியப்பட்ட செயல்பாடு பற்றிய தகவலை மையப்படுத்தப்பட்ட சேவையகத்திற்கு அடுத்தடுத்த தடுப்பு அல்லது தாக்குதல் முயற்சிகளை பகுப்பாய்வு செய்ய அனுப்புகிறது;

    • தாக்குதல்களைக் கண்டறிவதற்கும், பதிவுகளை பகுப்பாய்வு செய்வதற்கும் மற்றும் கோப்பு ஒருமைப்பாட்டைக் கண்காணிப்பதற்கும் தளங்கள் துறைமுகங்களில் சேர்க்கப்பட்டுள்ளன. வசுஹ் (ஒஸ்செக்கின் ஃபோர்க் உடன் ஒருங்கிணைப்பதற்கான ஆதரவுடன் ELK-ஸ்டாக்);
  • பிணைய துணை அமைப்பு
    • 2 Gb/s வேகத்தில் EC2 கணுக்களுக்கு இடையே தகவல்தொடர்புகளை ஒழுங்கமைக்க எலாஸ்டிக் கம்ப்யூட் கிளவுட் (EC2) உள்கட்டமைப்பில் பயன்படுத்தப்படும் ENAv25 (Elastic Network Adapter) நெட்வொர்க் அடாப்டர்களின் இரண்டாம் தலைமுறையை ஆதரிக்க ena இயக்கி புதுப்பிக்கப்பட்டுள்ளது. NETMAP ஆதரவு ena இயக்கிக்கு சேர்க்கப்பட்டுள்ளது.
    • FreeBSD HEAD ஆனது CAM கட்டமைப்பின் அடிப்படையில் ஒரு புதிய MMC/SD அடுக்கை ஏற்றுக்கொள்கிறது மற்றும் SDIO (Secure Digital I/O) இடைமுகத்துடன் சாதனங்களை இணைக்க உங்களை அனுமதிக்கிறது. எடுத்துக்காட்டாக, ராஸ்பெர்ரி பை 3 போன்ற பல பலகைகளுக்கான வைஃபை மற்றும் புளூடூத் தொகுதிகளில் SDIO பயன்படுத்தப்படுகிறது. புதிய ஸ்டேக் ஆனது CAM இடைமுகத்தைப் பயன்படுத்தி பயனர் இடத்தில் உள்ள பயன்பாடுகளிலிருந்து SD கட்டளைகளை அனுப்ப அனுமதிக்கிறது, இது சாதனத்தை உருவாக்குவதை சாத்தியமாக்குகிறது. பயனர் மட்டத்தில் இயங்கும் இயக்கிகள். FullMAC பயன்முறையில் இயங்கும் பிராட்காம் வயர்லெஸ் சில்லுகளுக்கான இயக்கிகளை உருவாக்கும் பணி தொடங்கியுள்ளது (சிப் பக்கத்தில் அதன் 802.11 வயர்லெஸ் ஸ்டேக்கின் செயலாக்கங்களுடன் அதன் சொந்த இயக்க முறைமையின் ஒற்றுமையை இயக்குகிறது);
    • FreeBSD க்காக NFSv4.2 (RFC-7862) ஐ செயல்படுத்துவதற்கான பணிகள் நடைபெற்று வருகின்றன. NFS இன் புதிய பதிப்பு posix_fadvise, posix_fallocate செயல்பாடுகள், lseek இல் உள்ள SEEKHOLE/SEEKDATA முறைகள் மற்றும் சேவையகத்தில் உள்ள கோப்பின் பகுதிகளை (வாடிக்கையாளருக்கு மாற்றாமல்) உள்ளூர் நகலெடுக்கும் செயல்பாட்டைச் சேர்க்கிறது.

      FreeBSD ஆனது தற்போது LayoutError, IOAdvise, ஒதுக்கீடு மற்றும் நகல் செயல்பாடுகளுக்கு அடிப்படை ஆதரவை வழங்குகிறது. NFS உடன் lseek (SEEKHOLE/SEEKDATA) ஐப் பயன்படுத்த தேவையான சீக் செயல்பாட்டைச் செயல்படுத்துவது மட்டுமே எஞ்சியுள்ளது. FreeBSD 4.2க்கு NFSv13 ஆதரவு திட்டமிடப்பட்டுள்ளது;

  • சேமிப்பு மற்றும் கோப்பு முறைமைகள்
    • பயனர் இடத்தில் கோப்பு முறைமைகளின் செயலாக்கங்களை உருவாக்க அனுமதிக்கும் FUSE (USErspace இல் கோப்பு முறைமை) துணை அமைப்பிற்கான இயக்கியை மறுவேலை செய்யும் திட்டம் நிறைவடையும் தருவாயில் உள்ளது. முதலில் வழங்கப்பட்ட இயக்கி காலாவதியானது மற்றும் பல பிழைகள் உள்ளன. இயக்கி நவீனமயமாக்கல் திட்டத்தின் ஒரு பகுதியாக, FUSE 7.23 நெறிமுறைக்கான ஆதரவு செயல்படுத்தப்பட்டது (முந்தைய பதிப்பு 7.8, 11 ஆண்டுகளுக்கு முன்பு வெளியிடப்பட்டது), கர்னல் பக்கத்தில் அணுகல் உரிமைகளைச் சரிபார்க்க குறியீடு சேர்க்கப்பட்டது (“-o default_permissions”), அழைப்புகள் VOP_MKNOD, VOP_BMAP மற்றும் VOP_ADVLOCK ஆகியவை சேர்க்கப்பட்டன, FUSE செயல்பாடுகளை குறுக்கிடும் திறன், பெயரிடப்படாத குழாய்கள் மற்றும் ஃப்யூசெஃப்களில் யூனிக்ஸ் சாக்கெட்டுகளுக்கான ஆதரவு, /dev/fuse க்கான kqueue ஐப் பயன்படுத்தும் திறன், “mount -u” வழியாக மவுண்ட் அளவுருக்களைப் புதுப்பிக்க அனுமதி, ஆதரவு சேர்க்கப்பட்டது. NFS வழியாக ஃப்யூசெஃப்களை ஏற்றுமதி செய்வதற்கு, RLIMIT_FSIZE கணக்கியல் செயல்படுத்தப்பட்டு, FOPEN_KEEP_CACHE கொடிகள் மற்றும் FUSE_ASYNC_READ சேர்க்கப்பட்டது, குறிப்பிடத்தக்க செயல்திறன் மேம்படுத்தல்கள் செய்யப்பட்டுள்ளன மற்றும் கேச்சிங் அமைப்பு மேம்படுத்தப்பட்டுள்ளது;
    • BIO_DELETE செயல்பாட்டிற்கான ஆதரவு ஸ்வாப் பேஜர் குறியீட்டில் சேர்க்கப்பட்டுள்ளது, இது SSD டிரைவ்களில் இருந்து பிளாக்குகளை அகற்றும்போது TRIM கட்டளையைப் பயன்படுத்தி அவற்றின் சேவை வாழ்க்கையை அதிகரிக்க அனுமதிக்கிறது.
  • வன்பொருள் ஆதரவு
    • ARM64 SoC பிராட்காம் BCM5871Xக்கான ஆதரவை ARMv8 Cortex-A57 செயலிகளுடன் செயல்படுத்தும் பணி தொடர்கிறது, இது திசைவிகள், நுழைவாயில்கள் மற்றும் பிணைய சேமிப்பகத்தில் பயன்படுத்துவதை நோக்கமாகக் கொண்டுள்ளது. அறிக்கையிடல் காலத்தில், உள் மற்றும் வெளிப்புற iProc PCIe பேருந்துகளுக்கான ஆதரவு மேம்படுத்தப்பட்டது, BNXT ஈதர்நெட்டிற்கான ஆதரவு சேர்க்கப்பட்டது, மேலும் IPsec ஐ விரைவுபடுத்த உள்ளமைக்கப்பட்ட கிரிப்டோ இயந்திரத்தைப் பயன்படுத்துவதற்கான பணிகள் நடைபெற்று வருகின்றன. HEAD கிளையில் குறியீட்டின் ஒருங்கிணைப்பு ஆண்டின் இரண்டாம் பாதியில் எதிர்பார்க்கப்படுகிறது;
    • 64-பிட் SoC NXP LS1046A க்கான ARMv8 கோர்டெக்ஸ்-A72 செயலியை அடிப்படையாகக் கொண்ட ஒரு ஒருங்கிணைந்த நெட்வொர்க் பாக்கெட் செயலாக்க முடுக்க இயந்திரம், 10 Gb ஈதர்நெட், PCIe 3.0, SATA 3.0 மற்றும் USB 3.0 ஆகியவற்றைக் கொண்டு ஆதரிக்கும் பணி தொடங்கியுள்ளது. அடிப்படை இயங்குதளம் (பல-பயனர் SMP) மற்றும் SATA 3.0 க்கான ஆதரவு ஏற்கனவே செயல்படுத்தப்பட்டுள்ளது. USB 3.0, SD/MMC மற்றும் I2Cக்கான ஆதரவு வளர்ச்சியில் உள்ளது. திட்டங்களில் ஈத்தர்நெட், ஜிபிஐஓ மற்றும் கியூஎஸ்பிஐ ஆகியவற்றுக்கான ஆதரவு அடங்கும். 4 ஆம் ஆண்டின் 2019வது காலாண்டில் பணியை முடித்து HEAD கிளையில் சேர்ப்பது எதிர்பார்க்கப்படுகிறது.
    • Mellanox ConnectX-5 [Lx], ConnectX-5 [Ex] மற்றும் ConnectX-4 [Dx] ஈதர்நெட் மற்றும் இன்பினிபேண்ட் அடாப்டர்களுக்கான mlx5en மற்றும் mlx6ib இயக்கிகள் புதுப்பிக்கப்பட்டன. மெல்லனாக்ஸ் சாக்கெட் டைரக்ட் (கனெக்ட்எக்ஸ்-6) அடாப்டர்களுக்கான ஆதரவு சேர்க்கப்பட்டது, இது PCIe Gen 200 பேருந்தில் 3.0Gb/s வரை த்ரோபுட்டை அனுமதிக்கிறது. மல்டி-கோர் ப்ளூஃபீல்ட் சிப்களுக்கு, RShim இயக்கிக்கான ஆதரவு சேர்க்கப்பட்டுள்ளது. Mellanox அடாப்டர்களுக்கான கண்டறியும் பயன்பாடுகளின் தொகுப்புடன் mstflint தொகுப்பு போர்ட்களில் சேர்க்கப்பட்டுள்ளது;
  • பயன்பாடுகள் மற்றும் துறைமுக அமைப்பு
    • கிராபிக்ஸ் அடுக்கு கூறுகள் புதுப்பிக்கப்பட்டுள்ளன. drm.ko (Direct Rendering Manager) இயக்கி Linux 5.0 கர்னலில் இருந்து போர்ட் செய்யப்பட்டுள்ளது. இந்த இயக்கி சோதனைக்குரியதாகக் கருதப்படுகிறது மற்றும் போர்ட்ஸ் ட்ரீயில் graphics/drm-devel-kmod என சேர்க்கப்பட்டது. லினக்ஸ் கர்னல் DRM API உடன் இணக்கமாக இருக்க இயக்கி புதுப்பிக்கப்பட்ட Linux KPI கட்டமைப்பைப் பயன்படுத்துவதால், இயக்குவதற்கு FreeBSD CURRENT தேவைப்படுகிறது. VirtualBox மெய்நிகர் GPU க்கான vboxvideo.ko drm இயக்கி லினக்ஸிலிருந்து போர்ட் செய்யப்பட்டுள்ளது. Mesa தொகுப்பு 18.3.2 ஐ வெளியிட மேம்படுத்தப்பட்டது மற்றும் devel/llvm80 க்குப் பதிலாக devel/llvm60 போர்ட்டிலிருந்து LLVM ஐப் பயன்படுத்த மாறியது.
    • FreeBSD போர்ட்கள் மரம் 37000 துறைமுகங்களைத் தாண்டியுள்ளது, மூடப்படாத PRகளின் எண்ணிக்கை 2146 ஆக உள்ளது. அறிக்கையிடல் காலத்தில், 7837 டெவலப்பர்களிடமிருந்து 172 மாற்றங்கள் செய்யப்பட்டன. மூன்று புதிய பங்கேற்பாளர்கள் கமிட்டி உரிமைகளைப் பெற்றனர். துறைமுகங்களில் உள்ள குறிப்பிடத்தக்க பதிப்பு மேம்படுத்தல்கள்: MySQL 5.7, பைதான் 3.6, ரூபி 2.5, சம்பா 4.8, ஜூலியா 1.0, பயர்பாக்ஸ் 68.0, குரோமியம் 75.0.3770.100. அனைத்து Go போர்ட்களும் "USES=go" கொடியைப் பயன்படுத்துவதற்கு மாற்றப்பட்டுள்ளன. Haskell குறியீட்டிற்குப் பயன்படுத்தப்படும் Cabal தொகுப்பு மேலாளரில் "USES=cabal" கொடி சேர்க்கப்பட்டது. கடுமையான அடுக்கு பாதுகாப்பு பயன்முறை இயக்கப்பட்டது. பைத்தானின் இயல்புநிலை பதிப்பு 3.6க்கு பதிலாக 2.7 ஆகும்.
    • பயன்பாட்டு வெளியீடு தயாராகிவிட்டது nsysctl 1.0, இது பயன்படுத்தும் /sbin/sysctl க்கு ஒரு அனலாக் வழங்குகிறது libxo வெளியீடு மற்றும் விரிவாக்கப்பட்ட விருப்பங்களின் தொகுப்பை வழங்குவதற்கு. Nsysctl ஆனது sysctl மதிப்புகளின் நிலையை பார்வைக்கு கண்காணிக்கவும், கட்டமைக்கப்பட்ட வடிவத்தில் பொருள்கள் பற்றிய தகவல்களை வழங்கவும் பயன்படுகிறது. XML, JSON மற்றும் HTML வடிவங்களில் வெளியீடு சாத்தியம்;

ஆதாரம்: opennet.ru

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