ááŸá
áºáááŒá¬ááœá¶á·ááŒáá¯ážááá¯ážáááºááŒá®ážáá±á¬áẠLinus Torvalds
áá¬ážááŸááºážá¡áá
áºááœáẠdeveloper 15100 áá¶á០ááŒááºáááºáá»áẠ1882 áá«áááºáááºá
patch á¡ááœááºá¡á
á¬áž - 62 MB (áááºáá±á¬ááºááŸá¯ááŸááá±á¬ 30889 ááá¯ááºáá»á¬ážááᯠá¡ááŒá±á¬ááºážá¡áá²áá»á¬ážá áá¯ááºááá¯ááºáž 625094 ááá¯ááºážááᯠááá·áºááœááºážáá²á·áááºá 531864 ááá¯ááºážáá»á¬ážááᯠáá»ááºáá
áºáá²á·áááº)á 45 ááœááºáááºááŒáá°á¡á¬ážáá¯á¶ážá 5.2% ááá·áº
á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááẠá
ááºáá
á¹á
ááºážáááá¯ááºáá¬áá»á¬ážááŸáá·áº áááºá
ááºáá±ááŒá®áž á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážá 21% ááá·áºááŸááááºá
áá¬á·ááºáá²áááá¯áá¬áá»á¬ážááá¯ááºáᬠáá¯ááºáá®ážááá·áº ááœááºážáá¶ááŒááºážá¡áá±á«áº ááá±á¬áá¬áž 12%á
network stack ááŸáá·áº áááºáááºáá±á¬á ááá¯ááºá
áá
áºáá»á¬ážááá¯á· 3% ááŸáá·áº internal á¡ááœáẠ3%
kernel ááœá²á
áá
áºáá»á¬ážá ááŒá±á¬ááºážáá²ááŸá¯á¡á¬ážáá¯á¶ážá 12.4% ááᯠIntel á០ááŒááºáááºáá¬ážááŒá®áž Red Hat á០6.3%á Google á០5.4%á AMD á០4.0%á SUSE 3.1%á IBM á០3%á Huawei á០2.7%á Linaro á០2.7%á ARM á០2.2% 1.6% - Oracleá
- Disk ááœá²á
áá
áºá I/O ááŸáá·áº ááá¯ááºá
áá
áºáá»á¬áž
- Ext4 á¡ááœáẠááá·áºáá±ážáá¬ážáá«áááºá
áá±á¬ááºáá¶á· áááºááœáŸááºážáá»ááºá¡áá Ạâ+Fâ (EXT4_CASEFOLD_FL) ááᯠá¡áá¯á¶ážááŒá¯á áá®ážááŒá¬ážááá¬áááºážááœáŸááºáá áºáá¯áá»ááºážá á®ááŸáá·áºáᬠáááºááá¯ááºááá·áº ááá¯ááºá¡áááºáá»á¬ážááŸá áá¬ááºáá±á¬ááºáá»á¬ážááᯠááœá²ááŒá¬ážááááá² á¡áá¯ááºáá¯ááºáá«á ဠattribute ááᯠáááºážááœáŸááºáá áºáá¯ááœáẠáááºááŸááºáá±á¬á¡áá«á á¡ááœááºážááŸá ááá¯ááºáá»á¬ážááŸáá·áº áááºážááœáŸááºáá»ááºááœá²áá»á¬ážáá«ááŸááá±á¬ áá¯ááºáá±á¬ááºááŸá¯á¡á¬ážáá¯á¶ážááᯠá¡ááŸá¯ááœá²á¡áá«á¡ááẠáá¬ááºáá±á¬ááºáá»á¬ážá ááŒá áºáááºááᯠááá·áºááœááºážá ááºážá á¬ážááŒááºážáááŸááá² ááá¯ááºáá»á¬ážááᯠááŸá¬ááœá±ááŒááºážááŸáá·áº ááœáá·áºááá·áºá¡áá«ááœáẠáá»á áºáá»á°ááŸá¯ááœá¬ážáááá·áºááẠ(á¥ááá¬á Test.txt ááá¯ááºáá»á¬ážá ááá¯áááºážááŒá±á¬ááºážáá»á¬ážááŸá test.txt ááŸáá·áº test.TXT ááá¯á·ááᯠáá°áá®áááºáᯠáá°ááá«áááº)á áá¯á¶ááŸááºá¡á¬ážááŒáá·áºá "chattr +F" áááºááœáŸááºážáá»ááºáá«ááá·áº áááºážááœáŸááºáá»á¬ážá០ááœá²á ááá¯ááºá áá áºááẠá á¬áá¯á¶ážá¡áá±áž-á¡ááááá¯ááºááᶠáááºáááºááŸááá±áá«áááºá - string comparison ááŸáá·áº normalization áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºáá¬ááœáẠá¡áá¯á¶ážááŒá¯ááá·áº ááá¯ááºá¡áááºáá»á¬ážááœáẠUTF-8 áá¬ááºáá±á¬ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºááŒááºážá¡ááœáẠáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá±á«ááºážá ááºážáá¬ážáá«áááºá
- XFS ááẠááá¯ááºá áá áºáá»ááºážáá¬áá±ážá á±á¬áá·áºááŒáá·áºááŒááºážá¡ááœáẠá¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááŸáá·áº áá»ááºážáá¬áá±ážá¡ááŒá±á¡áá±ááᯠá á¯á¶á ááºážáá±ážááŒááºážáááºá¡ááœáẠioctl á¡áá áºááᯠáá±á«ááºážááá·áºáááºá á¡áœááºááá¯ááºážááœáẠsuperblock áá±á¬ááºáá¬áá»á¬ážááᯠá á áºáá±ážáááºá¡ááœáẠá ááºážáááºááŸá¯á¡ááºá¹áá«áááºááᯠá¡áá¯á¶ážááŒá¯áá¬ážáááºá
- áá±á¬áºáá»á°ážá¡áá
Ạáááááá¬-ááŒá±áá¯á¶áá¯ááºáá°"
dm-áá¯áẠ"á áááºážááẠááá·áºá¡á¬áž áá®áá®áá¬áá±á«áºááŸá ááá±á¬ááºážáá²á· ááá±á¬ááºáá»á¬áž ááá¯á·ááá¯áẠá¡ááŸá¬ážá¡ááœááºážáá»á¬ážááᯠdisk ááŸáááºááá·áºá¡áá« á¡áá¯áá°ááá¯ááºá á±áá«áááºá áá±á¬áºáá»á°ážááẠááá·áºá¡á¬áž ááŒá áºááá¯ááºáá»á±ááŸááá±á¬ áá»áá¯á·ááœááºážááŸá¯áá»á¬ážááááºááá¯ááºááá»áááºááœáẠá¡ááá®áá±ážááŸááºážáá»á¬ážááŸáá·áº á¡áá»áá¯ážáá»áá¯ážáá±á¬ ááá¯ááŸá±á¬ááºááŸá¯á áá áºáá»á¬ážááᯠá¡ááŸá¬ážááŸá¬ááŒááºážááŸáá·áº á ááºážáááºááŒááºážáá»á¬ážááᯠááá¯ážááŸááºážá á±ááẠááœáá·áºááŒá¯áááºá -
áá±á¬ááºááœááºáá²á·áá«áááºá BFQ I/O á¡áá»áááºááá¬ážá¡ááœáẠáááá¬áááºááŸá¬ážáá±á¬ á áœááºážáá±á¬ááºááẠááá¯ááá¯áá±á¬ááºážááœááºá¡á±á¬áẠáá¯ááºáá±á¬ááºááŸá¯áá»á¬ážá ááŒáá·áºáá¬ážáá±á¬ I/O load á¡ááŒá±á¡áá±áá»á¬ážááœááºá ááá¯ááá¯áá±á¬ááºážááœááºá¡á±á¬ááºááŒá¯áá¯ááºáá¬ážáááºáááœáá·áºááŒá¯ á¡ááá®áá±ážááŸááºážáá»á¬ážááœáá·áºááŒááºážáá²á·ááá¯á·áá±á¬ áá¯ááºáááºážáá±á¬ááºááœááºááŸá¯á¡áá»áááºááᯠ80% á¡áá áá»áŸá±á¬á·áá»áá«á - ááá¯ááºá
áá
áºáá»á¬áž áááºáááºááŒááºážá¡ááœáẠá
áá
áºáá±á«áºááá¯ááŸá¯ á
á®ážáá®ážáá»á¬ážááᯠááá·áºááœááºážáá²á·áááº-
fsopen() ,open_tree() ,fspick() ,fsmount() ,fsconfig() Оmove_mount() . á€á áá áºáá±á«áºááá¯ááŸá¯áá»á¬ážááẠááá·áºá¡á¬áž mount() á áá áºáá±á«áºááá¯ááŸá¯á¡á¬áž á¡áá¯á¶ážááŒá¯á ááááºááá¯ááºáá±á¬ááºáá²á·áá±á¬ mount() á áá áºááá¯ááºáᬠá¡áá»ááºá¡áááºáá»á¬ážááᯠáá®ážááŒá¬ážá á®áá¯ááºáá±á¬ááºááá¯ááºááẠ(á á°áá«ááá±á¬ááºááá¯áá¯ááºáá±á¬ááºáááºá ááá¯ááºá áá áºá¡ááŒá±á¬ááºážá¡áá»ááºá¡áááºáá»á¬ážááá°áááºá mountá mount point ááá¯á· áá°ážááœá²áá«) ááᯠáá®ážááŒá¬ážá á®áá¯ááºáá±á¬ááºááá¯ááºá á±áááºááŒá áºáááºá áá®ážááŒá¬ážáá±á«áºááá¯ááŸá¯áá»á¬ážááẠááá¯ááá¯ááŸá¯ááºááœá±ážáá±á¬ áá±á¬ááºáá±á«áºá¡ááŒá±á¡áá±áá»á¬ážááᯠáá¯ááºáá±á¬ááºáááºááŸáá·áº superblock ááᯠááŒááºáááºááŒááºáááºááŒááºážá ááœá±ážáá»ááºááŸá¯áá»á¬ážááᯠááœáá·áºááŒááºážá mount á¡ááŸááºááᯠááŒá±á¬ááºážáá²ááŒááºážááŸáá·áº á¡ááŒá¬áž namespace ááá¯á· ááœáŸá±á·ááŒááºážáá²á·ááá¯á·áá±á¬ áá®ážááŒá¬ážáá¯ááºáá±á¬ááºááŸá¯áá»á¬ážááᯠáá¯ááºáá±á¬ááºááá¯ááºá áœááºážááᯠáá±ážáá«áááºá ááá¯á·á¡ááŒááºá áá®ážááŒá¬ážáá¯ááºáá±á¬ááºááŒááºážááẠááá·áºá¡á¬áž á¡ááŸá¬ážáá¯ááºáá»á¬ážááœááºááŸáááŒááºážá¡ááœáẠá¡ááŒá±á¬ááºážáááºážáá»á¬ážááᯠáááá»á áœá¬áá¯á¶ážááŒááºááá¯ááºááŒá®áž overlayfs áá²á·ááá¯á·áá±á¬ multi-layer ááá¯ááºá áá áºáá»á¬ážá¡ááœáẠá¡áááºážá¡ááŒá áºáá»á¬ážá áœá¬ááᯠáááºááŸááºááá¯ááºá á±áá«áááºá - IORING_OP_SYNC_FILE_RANGE áá¯ááºáá±á¬ááºáá»ááºá¡áá
áºáá
áºáá¯á¡á¬áž á
áá
áºáá±á«áºááá¯ááŸá¯áá
áºáá¯ááŸáá·áºáá®áá»áŸáá±á¬ áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºáá±ážááá·áº á¡ááŒáá¯ááºá¡ááá¯áẠI/O io_uring á¡ááœáẠá¡ááºáá¬áá±á·á
áºááá¯á· áá±á«ááºážááá·áºááá¯ááºáááº
sync_file_range() ááŸáá·áº eventfd ááᯠio_uring ááŒáá·áº á á¬áááºážááœááºážááá¯ááºááŒá®áž áá¯ááºáá±á¬ááºáá»ááºáá»á¬áž ááŒá®ážááŒá±á¬ááºááŒááºážááŸáá·áºáááºáááºáá±á¬ á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºáá»á¬ážááᯠáááºáá¶ááá°ááŒááºážááá¯áááºáž áá¯ááºáá±á¬ááºáá²á·áááºá - CIFS ááá¯ááºá áá áºá¡ááœááºá FIEMAP ioctl ááẠáááá±á¬ááºáá±á¬á¡ááá¯ááºážá¡áá¬ááŒá±áá¯á¶ááœá²ááŒááºážá¡ááŒáẠSEEK_DATA ááŸáá·áº SEEK_HOLE áá¯ááºáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ááá¯á·ááᯠáá¶á·ááá¯ážáá±ážáá¬ážáá«áááºá
- FUSE á
áá
áºááœá²ááœááº
á¡ááá¯ááŒá¯áááºá áá±áᬠcaching ááá¯á á®áá¶ááá·áºááœá²ááẠAPI - Btrfs ááẠqgroups á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ááᯠá¡áá±á¬ááºážáá¯á¶ážááŒá áºá¡á±á¬áẠáá¯ááºáá±á¬ááºááŒá®áž hard link áá»á¬ážá áœá¬ááŸááá±á¬ ááá¯ááºáá»á¬ážá¡ááœáẠfsync áá¯ááºáá±á¬ááºááŸá¯á¡ááŒááºááŸá¯ááºážááᯠááŒáŸáá·áºáááºáá±ážáá«áááºá áá±áá¬ááá¯ááºáá¬ááŸá¯ á á áºáá±ážááá·áºáá¯ááºááᯠááŒáŸáá·áºáááºáá¬ážááŒá®ážá áá±áá¬ááᯠáá áºááºááá¯á· ááá¯ááºáá® RAM ááŸá á¡áá»ááºá¡áááºáá»á¬áž áá»ááºá á®ážááá¯ááºáá»á±ááᯠááá·áºááœááºážá ááºážá á¬ážáááºá
- CEPH ááẠNFS ááŸáá áºááá·áº áá»áŸááºáá áºááŒááºááá¯ááºáá»ááºáá»á¬áž áááºááá¯á·ááŒááºážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ áááºáá±á¬ááºážááá·áºááœááºážáá¬ážáááºá
- âsoftâ áá¯ááºááœáẠNFSv4 áááºáááºááŒááºážá á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ááᯠááá¯ááá¯áá±á¬ááºážááœááºáá¬áá«ááŒá® (âáá»á±á¬á·â áá¯ááºááœáẠáá¬áá¬ááᯠáááºáá±á¬ááºáá¬ááœáẠá¡ááŸá¬ážá¡ááœááºážáá áºáᯠááŒá áºáá±á«áºáá«áá á¡ááŸá¬ážáá¯ááºáá áºáᯠáá»ááºáá»ááºážááŒááºááá¯á·ááẠáá±á«áºááá¯ááŸá¯áá áºáá¯ááŸáá·áº FS ááá±á¬ááºááá»ááºáž âhardâ áá¯ááºááœáẠááááºážáá»á¯ááºááŸá¯ ááá±ážáá¬ážáá«á áááŸáááá¯ááºááŸá¯ ááá¯á·ááá¯áẠá¡áá»áááºáá¯ááºáá¯á¶ážááŸá¯ááᯠááŒááºáááºááá°áááºá) áá¯ááºáá±ááŸá¯á¡áá áºááẠá¡áá»áááºáá¯ááºááœááºááŒááºážááᯠááá¯ááºááœááºáá¬ááœáẠááá¯ááá¯áááá»áá±á¬á áá»ááºá á®ážááŸá¯ááá¯ááá¯ááŒááºáááºá áœá¬ ááŒááºáááºááá°ááŒááºážááŸáá·áº á¡áá»áááºáá¯ááºááœá¬ážááá·áºá¡áá« ááŒááºáá±ážááá·áº á¡ááŸá¬ážáá¯áẠ(ETIMEDOUT) ááᯠááŒá±á¬ááºážáá²ááá¯ááºá á±ááá·áº "áá»á±á¬á·áá»á±á¬ááºážáá±á¬" mount option á¡áá áºááᯠáá¶á·ááá¯ážáá±ážáá«áááºá
- NFS áá±á¬ááºáááºáá»á¬ážá á¡ááŒá±á¡áá±á¡á¬áž ááŒá±áá¬áá¶ááẠáá®ááá¯ááºážáá¯ááºáá¬ážááá·áº nfsdcld API ááẠNFS áá¬áá¬á¡á¬áž ááŒááºáááºá áááºáá»áááºááœáẠáá¯á¶ážá áœá²áá°áá¡ááŒá±á¡áá±ááᯠááŸááºáááºá áœá¬ááŒá±áá¬áá¶ááẠááœáá·áºááŒá¯áááºá ááá¯á·ááŒá±á¬áá·áºá nfsdcld daemon ááẠááá¯á¡áá« nfsdcltrack handler á¡ááŒá Ạáá¯ááºáá±á¬ááºááá¯ááºááŒá®ááŒá áºáááºá
- AFS á¡ááœááº
áááºááŒá±á¬áááºá ááá¯ááºáá»á¬ážááœáẠááá¯ááºá¡ááœá¬á¡áá±áž áá±á¬á·ááºáá»ááŒááºážááᯠá¡áá¯áá°ááŒááºáž (Byte Range áá±á¬á·ááºáá»ááŒááºážá );
- Ext4 á¡ááœáẠááá·áºáá±ážáá¬ážáá«áááºá
- Virtualization ááŸáá·áº áá¯á¶ááŒá¯á¶áá±áž
- ááá¯ááºááá¯ááºááŸá¯áá áºáá¯á¡ááœááºáž á¡áá¯á¶ážáá»ááá¯ááºááá·áº á¡áá¬ážá¡áá¬ááŸááá±á¬ á¡áá±á«ááºáá»á¬ážááᯠááááºááá¯á·á á±ááá·áº á á¬ááŒáá·áºáá±ážáá¬ážááá¯ááºáá±á¬ áá±á¬ááºááŒááºáááºááá·áº ááŸááºáá¬ááºáá±áá¬áá»á¬ážá០áá¯ááºáá¯ááºáá±á¬ááºááŸá¯ááᯠááœáá·áºááŒá¯ááá·áº kernel á¡ááœááºážááŸá áá±áá¬áá»á¬ážááᯠáááºááŸá¬ážááẠáá¯ááºáá±á¬ááºáá¬ážáá«áááºá
- kernel command line parameter á¡áá Ạ"mitigations=" ááᯠááá·áºááœááºážáá¬ážááŒá®ážá CPU áá±á«áºááŸá ááœáŸááºááŒá¬ážáá»ááºáá»á¬ážááᯠááŸááºážááá¯ááºáá±á¬ááºááŒááºážááŸáá·áº áááºá ááºáá±áá±á¬ á¡á¬ážáááºážáá»ááºáá»á¬ážááᯠáá¬ááœááºáááºá¡ááœáẠá¡áá»áá¯á·áá±á¬áááºážááá¬áá»á¬ážá ááœáá·áºáá¬ážááŸá¯ááᯠááááºážáá»á¯ááºááẠááá¯ážááŸááºážáá±á¬áááºážáááºážááᯠáá±ážáá±á¬ááºáá¬ážáá«áááºá "mitigations=off" ááá¯ááŒááºáááºážááŒááºážááŒáá·áº ááŸáááŒá®ážáá¬ážáááºážáááºážáá»á¬ážá¡á¬ážáá¯á¶ážááᯠdisable áá¯ááºááŒá®áž áá°áááºážáá¯áẠ"mitigations=auto" ááẠá¡áá¬á¡ááœááºááᯠááœáá·áºáá¬ážáá±á¬áºáááºáž Hyper Threading á¡áá¯á¶ážááŒá¯ááŸá¯ááᯠáááááá¯ááºá á±áá«á "mitigations=auto,nosmt" áá¯ááºááẠáá¬ááœááºááŸá¯áááºážáááºážááŒáá·áº ááá¯á¡ááºáá«á Hyper Threading ááᯠáááºáá¶ááááºáá±ážáá«áááºá
-
áááºááŒá±á¬áá«áááºá GOST R 34.10-2012 (RFC 7091á ISO/IEC 14888-3) á¡á á¡á®áááºáááœááºážáá Ạáá áºáá»á áºááẠáááºááŸááºá¡ááœáẠáá¶á·ááá¯ážááŸá¯ááœá¶á·ááŒáá¯ážáááºá Basalt SPO á០Vitaly Chikunov á áá°áááºáž TLS á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ááœáẠAES128-CCM á¡ááœáẠáá¶á·ááá¯ážááŸá¯ áá±á«ááºážááá·áºáá¬ážáááºá crypto_simd module ááœáẠAEAD algorithms á¡ááœáẠáá¶á·ááá¯ážááŸá¯ áá±á«ááºážááá·áºáá¬ážáááºá - Kconfig ááœááº
áááºááŒá±á¬áááºá kernel áá¬ááœááºááŸá¯ááᯠááŒáŸáá·áºáááºááẠááœá±ážáá»ááºá áá¬áá»á¬ážáá«ááŸááá±á¬ áá®ážááŒá¬áž "kernel hardening" á¡ááá¯ááºážá áá±á¬áá±á¬áááºááœááºá ááá¹áá¡áá áºááœáẠGCC á á áºáá±ážááŸá¯ááᯠááŒáŸáá·áºáááºááá¯ááºáá±á¬ ááááºá¡ááºáá»á¬ážááᯠááœáá·áºááẠáááºáááºáá»á¬ážáᬠáá«ááŸááááºá - kernel áá¯ááºá áá®ážáá«ážáá«á
áá±ážááá¯á·áá²á·áááºá switch ááœáẠbreaking ááá¯ááºáá±á¬ case statements áá»á¬ážá០( case block áá áºáá¯á á®ááŒá®ážáá±á¬áẠááŒááºááŒááºáž ááá¯á·ááá¯áẠbreak ááá¯ááºáá² ) á ááá¯ááá¯á·áá±á¬ááá¯ááºá¡áá¯á¶ážááŒá¯ááŸá¯ 32 á¡áááºá០2311 áá¯ááᯠááŒá¯ááŒááºááẠáá»ááºááŸááá±áááºá ááá¯á·áá±á¬áẠkernel ááá¯áááºáá±á¬ááºááá·áºá¡áá« "-Wimplicit-fallthrough" áá¯ááºááᯠá¡áá¯á¶ážááŒá¯ááẠááŒá áºááá¯ááºáá«áááºá - PowerPC áááá¯áá¬á¡ááœááºá á¡áá¯á¶ážááŒá¯áá°áá±áá¬ááŸá áá±áá¬áá»á¬ážááá¯á· áááá¯áá¬ážá¡ááºáá±á¬ kernel áááºáá±á¬ááºááŸá¯áááºážááŒá±á¬ááºážáá»á¬ážááᯠááá·áºáááºáááºá¡ááœáẠáá¬á·ááºáá²ááá¹ááá¬ážáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºáá²á·áááºá
- ááááºááá¯á·ááŒááºážáá¯ááºááᯠááá·áºáá¬ážáááºá
ááá¯ááºááá¯ááºááŸá¯áá»á¬áž Intel áááá¯áááºáá¬áá»á¬ážááœáẠMDS (Microarchitectural Data Sampling) á¡áááºážá SysFS variable â/sys/devices/system/cpu/vulnerabilities/mdsâ ááŸáááá·áº á áá áºáá áºáá¯ááẠá¡á¬ážáááºážáá»ááºáá»á¬ážááᯠáá¶ááá¯ááºáááºááŸááááŸá á á áºáá±ážááá¯ááºáááºááááŸáááá¯áẠááááºážáá»á¯ááºááŸá¯á¡áá¯á¶ážááŒá¯áá°áá±áᬠááá¯á·ááá¯áẠá§áá·áºáááºá áá áºááá¯á· ááœáŸá²ááŒá±á¬ááºážááá¯ááºáá±á¬á¡áá« ááááºážáá»á¯ááºááŸá¯á¡á¬áž á¡áá¯á¶ážááŒá¯áá°áá±áᬠááá¯á·ááá¯áẠá§áá·áºáááºá áá áºááá¯á· ááœáŸá²ááŒá±á¬ááºážááá·áºá¡áá« CPU ááŒá¬ážáá¶áá»á¬ážááᯠááŸááºážáááºážááŒááºáž áá¯á¶ážáá¡á¬ááá¶ááŒááºážáááŸáááá·áº á¡áá¬á¡ááœááºáá¯ááºááŸá áºáá¯- á¡ááŒáá·áºá¡á á¯á¶á á¡ááºááááºáá¯ááºáá¬ážáá±á¬ ááá¯ááºáááá¯áá¯ááºááá¯á¡ááºááŒá®áž ááŸá±á¬ááºááœááºážááẠááá¯á¡ááºáááºá áá¬ááœááºááŸá¯áá¯ááºáá»á¬ážááᯠááááºážáá»á¯ááºáááºá¡ááœááºá âmds=â áá±á¬ááºááᯠkernel ááœáẠááá·áºááœááºážáá¬ážááŒá®áž áááºááá¯ážáá»á¬ážááᯠâfullâá âfull,nosmtâ (+ Hyper-Threads) ááŸáá·áº âoffâ ááá¯á·ááᯠááááºáá¬ážááá¯ááºáááºá - x86-64 á áá áºáá»á¬ážááœááºá IRQá debugging ááá¹ááá¬ážáá»á¬ážááŸáá·áº ááŒáœááºážáá»ááºáááºááá¯ááºáááááá¬áá»á¬ážá¡ááœáẠ"stack guard-page" á¡áá¬á¡ááœááºááᯠááá·áºááœááºážáá¬ážááŒá®ážá áááºážáá¡ááŸá áºáá¬áááŸá¬ stack ááŸáá·áºáááºá ááºááŸá memory á á¬áá»ááºááŸá¬áá»á¬ážááᯠá¡á á¬ážááá¯ážááŒááºážááŒá áºááŒá®ážá áá áºáá¯ááá»áá¯ážáááºááá¯á·áááºáá±á¬ááºááŒááºážá¡á¬áž áááºáá±á¬ááºááŒááºáž ááŒáœááºážáá»áẠ(á á¬áá»ááºááŸá¬-á¡ááŸá¬áž);
- userfaultfd() á áá áºáá±á«áºááá¯ááŸá¯ááᯠá¡áá¯á¶ážááŒá¯ááẠá¡ááœáá·áºáá°ážáááá±ážáá±á¬ áá¯ááºáááºážá ááºáá»á¬ážá á áœááºážáááºááᯠááááºážáá»á¯ááºááá·áº sysctl áááºááẠvm.unprivileged_userfaultfdá
- ááœááºáááºá
áá
áºááœá²
-
áááºááŒá±á¬áá«áááºá IPv6 áááºážááŒá±á¬ááºážáá»á¬ážá¡ááœáẠIPv4 ááááºáá±ážáá¶á·ááá¯ážááŸá¯á á¥ááá¬á¡á¬ážááŒáá·áºá áááºááẠááá¯á¡áá«ááœáẠâip ro add 172.16.1.0/24 ááŸáááá·áº inet6 2001:db8::1 dev eth0â áá²á·ááá¯á·áá±á¬ áááºážááŒá±á¬ááºážá ááºážáá»ááºážáá»á¬ážááᯠáááºááŸááºááá¯ááºáá«ááŒá®á - ICMPv6 á¡ááœááºá ioctl áá±á«áºááá¯ááŸá¯áá»á¬ážááᯠicmp_echo_ignore_anycast ááŸáá·áº icmp_echo_ignore_multicast ááá¯á·ááẠáááºááá·áºáá¬á
áºá¡ááœááºáááᯠICMP ECHO ááᯠáá»á
áºáá»á°ááŸá¯ááẠáá¯ááºáá±á¬ááºáááº
multicast ááááºá á¬áá»á¬ážááááºááŒá±á¬áá«áááºá ICMPv6 packet processing á ááŒááºážáááºááŸá¯ááᯠááá·áºáááºááá¯ááºá áœááºážá - BATMAN (Better Approach To Mobile Adhoc Networking) mesh protocol á¡ááœááºá node áá
áºáá¯á
á®ááᯠá¡áá®ážáá¬ážááŸá node áá»á¬ážááŸáá
áºááá·áº áá»áááºáááºáá¬ážááá·áº áááá¯áá»á¯ááºááá¯ááºááŸá¯áá»áŸá±á¬á·áá»áá¬ážáá±á¬ ááœááºáááºáá»á¬ážááᯠáááºáá®ážááá¯ááºá
á±ááá·áºá
áááºááŒá±á¬áááºá multicast á០unicast ááá¯á· áá¯ááºááœáŸáá·áºááŒááºážá¡ááœáẠáá¶á·ááá¯ážááŸá¯á¡ááŒáẠsysfs ááŸáááá·áº ááááºážáá»á¯ááºááá¯ááºá áœááºážá - ethtool ááœááº
áááºááŒá±á¬ááẠ1000BaseT á¡ááœáẠááá·áºááºáá±á«ááºážáá¯ááºááá á¹á áááºá¡ááŒá±á¬ááºáž á¡áá»ááºá¡áááºáááºáá¶áááŸáááẠááá¯á¡ááºááá·áºá¡áá»áááºááᯠáá»áŸá±á¬á·áá»ááá¯ááºá á±ááá·áº Fast Link Down áá«áá¬áá®áá¬á¡áá Ạ(áá¯á¶ááŸááºá¡ááŒá±á¡áá±áá»á¬ážááœáẠááŸá±á¬áá·áºááŸá±ážááŸá¯ááẠ750ms á¡ááááŸááááº)á - áá±á«áºáá¬áááºá
á¡ááœáá·áºá¡áá±áž Foo-Over-UDP á¥áááºááŸáá¯ááºáá±á«ááºážáá»á¬ážááᯠáá®ážááŒá¬ážááááºá á¬á ááœááºáááºá¡ááºáá¬áá±á·á Ạááá¯á·ááá¯áẠáá±á¬á·ááºáá²áá áºáá¯ááá¯á· áá±á«ááºážá ááºážááŒááºáž (ááááºá áá¯á¶áá»ááºááŸá¬áá¯á¶ážáá áºáá¯ááŒáá·áºáᬠá ááºážááŸá±á¬ááºááŒááºážááŒá áºáááº)á - ááŒáá¯ážáá²á· stack áá²ááŸá¬
áá±ážáá¬ážáááºá ááá¯ááºááœááºáá°áá»á¬ážááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááẠá¡áá¬ážá¡áá¬
á¡áá¯á¶ážááŒá¯áá°áá±áá¬ááŸá OWE (á¡ááœáá·áºá¡áááºážááŸááá±á¬ááŒáá¯ážáá²á·áá¯ááºááŸááºááŒááºáž) - Netfilter ááœááºá inet ááááºá á¬áááá¬ážá á¯á¡ááœáẠáá¶á·ááá¯ážááŸá¯á¡á¬áž nat ááœááºážáááºáá»á¬ážááá¯á· áá±á«ááºážááá·áºááá¯ááºááẠ(á¥ááá¬á ipv4 ááŸáá·áº ipv6 á¡ááœáẠá ááºážáá»ááºážáá»á¬ážááᯠááœá²ááŒá¬ážááŒááºážáááŒá¯áá² ááá¯á¡áá« áá¬áá¬ááŒááºá ááºážáá»ááºážáá áºáá¯á¡á¬áž áááºá¡áá¯á¶ážááŒá¯ááá¯ááºááŒá®á
- netlink ááœááº
áááºááŒá±á¬ááẠá á áºá¡á áá¯ážá áá»áŸá±á¬áºááŸááºážáá¬ážáá±á¬ attribute á¡ááœááºá¡á á¬ážááᯠáá»á±á¬áºááœááºááœáá·áºáááŒá¯áá² áááºáá±á·ááºá»áá¡áá¯á¶ážááœáẠá¡ááá¯áá±áá¬áá»á¬áž áááºáá±á¬ááºážááá·áºááŒááºážááᯠáá¬ážááŒá áºáá¬ážááá·áº áááºáá±á·ááºá»áá»á¬ážááŸáá·áº á¡áááºá¡áá»ááºážá¡á¬ážáá¯á¶ážá ááŸááºáááºááŸá¯ááᯠáááºážááŒááºá áœá¬ á¡áááºááŒá¯ááẠáááºážáá»ááºáá¬ážáááºá
-
- Memory ááŸáá·áº System áááºáá±á¬ááºááŸá¯áá»á¬áž
- CLONE_PIDFD á¡áá¶ááᯠclone() á áá áºáá±á«áºááá¯ááŸá¯ááœáẠááá·áºááœááºážáá¬ážááŒá®ážá áááºááŸááºáá±á¬á¡áá«á áááºáá®ážáá¬ážáá±á¬ ááá±ážáá¯ááºáááºážá ááºááŒáá·áº áá±á¬áºáá¯ááºáá¬ážáá±á¬ ááá¯ááºáá±á¬áºááŒáá»áẠâpidfdâ ááᯠáááºááá¯ááºáááºážá ááºááá¯á· ááŒááºááœá¬ážáá«áááºá á¥ááá¬á¡á¬ážááŒáá·áºá á€ááá¯ááºáá±á¬áºááŒáá»ááºááẠááŒáá¯ááºááœá²á¡ááŒá±á¡áá±ááá¯á· ááŒá±ážáááºááᯠáááŒá±á¬ááºáá² á¡áá»ááºááŒááŸá¯áá»á¬ážááᯠáá±ážááá¯á·ááẠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá (á¡áá»ááºááŒááŸá¯ááᯠáá±ážááá¯á·ááŒá®ážáá±á¬áẠáá áºááŸáẠPID ááᯠáá¯ááºáááºážá ááºáááºá á²ááŒá®áž á¡ááŒá¬ážáá¯ááºáááºážá ááºáá áºáá¯á ááááºážááá¯ááºááŸá¯ááŒá±á¬áá·áº ááœááºááŒá±á¬ááºááá¯ááºáááº)á
- cgroups á áá¯ááááá¬ážááŸááºážá¡ááœááºá áá±áá²áá±áá¹áᬠááááºážáá»á¯ááºáááááᬠáá¯ááºáá±á¬ááºáá»ááºááᯠááá·áºááœááºážáá¬ážááŒá®ážá áááºážááẠcgroup áá áºáá¯ááœáẠá¡áá¯ááºááá¯ááºáá±á¬á·áá² á¡ááŒá¬ážáá¯ááºáá±á¬ááºá áá¬áá»á¬áž áá¯ááºáá±á¬ááºáááºá¡ááœáẠá¡áááºážá¡ááŒá áºá¡áá»áá¯á· (CPUá I/O ááŸáá·áº ááŒá áºááá¯ááºáá»á±ááŸááá±á¬ memory áááº) ááᯠáá±áá¹ááááºáá¯ááºááá¯ááºáááºá á á®áá¶ááá·áºááœá²ááŸá¯ááᯠcgroup.freeze ááŸáá·áº cgroup.events á០cgroup áá áºáááºááŸáááá¯ááºáá»á¬ážááᯠááááºážáá»á¯ááºáááºá cgroup.freeze ááœáẠááá·áºááœááºážááŸá¯ 1 ááẠáááºááŸá cgroup ááŸáá·áº ááá±ážá¡á¯ááºá á¯áá»á¬ážá¡á¬ážáá¯á¶ážááŸá áá¯ááºáááºážá ááºáá»á¬ážááᯠáááºá á±áááºá á¡á±ážáá²ááŒááºážááẠá¡áá»áááºá¡áááºážáááºááŒá¬áá±á¬ááŒá±á¬áá·áºá áá¯ááºáá±á¬ááºáá»áẠááŒá®ážáá¯á¶ážááŒááºážá¡ááŒá±á¬ááºáž áááºááŸá¬ááœá±ááááŸáááá¯ááºá á±áááºá¡ááœáẠáá±á¬ááºááẠcgroup.events ááá¯ááºááᯠáá¶á·ááá¯ážáá±ážáá¬ážáá«áááºá
-
áá¯á¶ááŒá¯á¶áááºá sysfs ááŸá node áá áºáá¯á á®ááœáẠáá«ááŸááá±á¬ memory attribute áá»á¬áž áááºááá¯á·ááŒááºáž á áááºážááẠá¡áá¯á¶ážááŒá¯áá° áá±áá¬á០memory banks áá»á¬ážááᯠááœá²ááŒá¬ážáá±á¬ memory ááŸááá±á¬ á áá áºáá»á¬ážááœáẠáá¯ááºáá±á¬ááºááŒááºážá ááá±á¬ááá¬áááᯠáá¯á¶ážááŒááºááá¯ááºá á±áá«áááºá - PSI (Pressure Stall Information) á áá áºááœá²ááᯠááŒáŸáá·áºáááºáá¬ážááŒá®ážá á¡áá»áá¯á·áá±á¬áá¯ááºáááºážáá¬áááºáá»á¬áž ááá¯á·ááá¯áẠcgroup ááŸá áá¯ááºáááºážá ááºá¡á á¯á¶á¡ááœáẠá¡áá»áá¯ážáá»áá¯ážáá±á¬á¡áááºážá¡ááŒá áºáá»á¬áž (CPUá memoryá I/O) áááºáá¶áááŸáááŒááºážá¡ááœáẠá á±á¬áá·áºááá¯ááºážáá»áááºááŸáá·áºáááºáááºáá±á¬ á¡áá»ááºá¡áááºáá»á¬ážááᯠááœá²ááŒááºážá áááºááŒá¬ááá¯ááºá á±áá«áááºá PSI ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááŒáá·áº á¡áá¯á¶ážááŒá¯áá°áá±áá¬ááœááºááá¯ááºááœááºáá°áá»á¬ážááẠLoad Average ááŸáá·áºááŸáá¯ááºážááŸááºáá«á á áá áºáááºááŸáá·áºááŸá±ážááœá±ážááŸá¯áá¯á¶á á¶áá»á¬ážá¡ááá·áºááᯠááá¯ááá¯áááá»á áœá¬ááá·áºááŸááºážááá¯ááºáááºá áá¬ážááŸááºážá¡áá áºááẠsensitivity thresholds áá»á¬ážáááºááŸááºááŒááºážááŸáá·áº poll() call ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážá¡ááœáẠáá¶á·ááá¯ážááŸá¯áá±ážáá«áááºá áááºááŸááºáá¬ážáá±á¬ thresholds áá»á¬ážááᯠá¡áá»áááºá¡ááá¯ááºážá¡áá¬áá áºáá¯á¡áá á¡á áá»áá¯ážáá¬ážáááºáá°áá±á¬ á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºááᯠáááºáá¶áááŸáááẠpoll() call ááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá á€á¡ááºá¹áá«áááºááẠAndroid á¡á¬áž á¡á á±á¬ááá¯ááºážá¡ááá·áºááœáẠááŸááºáá¬ááºááŒááºáááºááŸá¯ááᯠá á±á¬áá·áºááŒáá·áºáááºá ááŒá¿áá¬áá»á¬ážááááºážááŒá áºááᯠááŸá¬ááœá±áá±á¬áºáá¯ááºááá¯ááºááŒá®áž á¡áá¯á¶ážááŒá¯áá°á¡á¬áž áááá¬áááºááŸá¬ážááá·áº ááŒá¿áá¬áá»á¬ážáááŒá áºá á±áá² á¡áá±ážáááŒá®ážáá±á¬á¡ááá®áá±ážááŸááºážáá»á¬ážááᯠá¡áá¯á¶ážáááºá á±ááá¯ááºáááºá á áááºááá á®ážááŸá¯ááᯠá ááºážáááºáá±á¬á¡áá«á PSI á¡ááŒá±áᶠááŸááºáá¬ááºáá¯á¶ážá áœá²ááŸá¯ á á±á¬áá·áºááŒáá·áºáá±áž áááááá¬áá»á¬ážááẠvmpressure ááááºážááááºážáá»á¬ážááŸáá·áº ááŸáá¯ááºážááŸááºáá«á ááŸá¬ážááœááºážáá±á¬ á¡ááŒá¯ááá±á¬ áá á áááºážáá«ážááŒá±á¬ááºáž ááá¯ááºááŒáá²á·áááºá
- BPF áááá¯ááááºáá»á¬ážááᯠá á áºáá±ážááŒááºážá¡ááœáẠáá¯ááºááᯠááá¯ááá¯áá±á¬ááºážááœááºá¡á±á¬áẠááŒá¯áá¯ááºáá¬ážááŒá®ážá ááŒá®ážáá¬ážáá±á¬ áááá¯ááááºáá»á¬ážá¡ááœáẠá¡á 20 á¡áá ááá¯ááá¯ááŒááºáááºá áœá¬ á á áºáá±ážááá¯ááºá á±áá«áááºá ááá¯ááá¯áá±á¬ááºážááœááºá¡á±á¬ááºááŒá¯áá¯ááºááŒááºážá BPF áááá¯ááááºáá»á¬ážá á¡ááœááºá¡á á¬ážááá·áºáááºáá»ááºááᯠ4096 á០ááœáŸááºááŒá¬ážáá»ááºáá áºáááºážá¡áá ááŒáŸáá·áºáááºááá¯ááºá á±áá²á·áááºá
- BPF á¡á
á®á¡á
ááºáá»á¬ážá¡ááœááº
áá±ážáá¬ážáááºá áááá¯ááááºáá»á¬ážááœáẠááá¹áá¬áá¯á¶ážááá¯ááºáᬠááááºážáá±áá»á¬ážááŸáá·áº ááááºážáá±áá»á¬ážááᯠáááºááŸááºááá¯ááºá á±ááá·áº ááá¹áá¬áá¯á¶ážááá¯ááºáá¬áá±áá¬ááᯠáááºáá±á¬ááºááŒáá·áºááŸá¯ááá¯ááºááŸá¯á - áááºááŒá±á¬áá«áááºá
API ááᯠBPF áááá¯ááááºáá»á¬ážá០sysctl parameters áá»á¬ážááœáẠááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážááᯠááááºážáá»á¯ááºááá¯ááºá á±áá±á¬á - MIPS32 áááá¯áá¬á¡ááœááºá eBPF virtual machine á¡ááœáẠJIT compiler áá áºáá¯ááᯠá¡áá±á¬ááºá¡ááẠáá±á¬áºáá¬ážáááºá
- 32-bit PowerPC áááá¯áá¬á¡ááœááºá áááºááá¯áá®ááŸáá·áºá¡áá¯ááºáá¯ááºáá¬ááœáẠá¡ááŸá¬ážá¡ááœááºážáá»á¬ážááá¯ááœá²ááŒá¬ážáááºááŸááºáá±ážááá·áº KASan (Kernel address sanitizer) á¡ááŸá¬ážááŸá¬ááŒááºááŒááºážáááááá¬ááᯠáá¶á·ááá¯ážáá±ážáá¬ážáá«áááºá
- x86-64 á áá áºáá»á¬ážááœááºá 896MB á¡áááºááŸááºáá¬ááºáá±áá¬áá»á¬ážááœáẠkernel áá»ááºáá»ááŸá¯ (crash-dump) ááœáẠstate dumps áá¬ážááŸáááŒááºážááá¯ááºáᬠááá·áºáááºáá»ááºááᯠáááºááŸá¬ážááá¯ááºáá«áááºá
- s390 áááá¯áá¬á¡ááœááºá kernel address space randomization (KASLR) á¡ááœáẠáá¶á·ááá¯ážááŸá¯ ááŸáá·áº kexec_file_load() ááŸáááá·áº kernel ááᯠloading áá¯ááºáá±á¬á¡áá« áá áºáá»á áºááẠáááºááŸááºáá»á¬ážááᯠá¡áááºááŒá¯ááá¯ááºááŸá¯ááᯠáá±á¬ááºááœááºáá±ážáá«áááºá
- PA-RISC áááá¯áá¬á¡ááœááºá kernel debugger (KGDB)á jump marks ááŸáá·áº kprobes á¡ááœáẠáá¶á·ááá¯ážááŸá¯ áááºáá±á¬ááºážááá·áºáá¬ážáá«áááºá
- áá
á¹á
ááºážááááá¬
- áá¬ááºáá±á¬ááºážáá«áááºáá«áááºá
Lima Mali 400/450 GPU á¡ááœáẠARM áááá¯áá¬ááá¯á¡ááŒá±áá¶á á¡áá±á¬ááºážáá»á áºááºáá»á¬ážá áœá¬ááœááºá¡áá¯á¶ážááŒá¯áááºá á¡áá áºáá±á¬ Mali GPU áá»á¬ážá¡ááœááºá Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) ááŸáá·áº Bifrost (Mali G3x, G5x, G7x) microarchitectures áá»á¬ážá¡áá±á«áº á¡ááŒá±áá¶áá¬ážáá±á¬ áá»á áºááºáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážááá·áº Panfrost driver ááᯠááá·áºááœááºážáá¬ážáá«áááºá - ááœáá·áºáá¬ážáá±á¬ ááá¯ááºážáá²ááᯠá¡áá¯á¶ážááŒá¯á á¡áá¶áááááá¬áá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ áááºááá·áºáá¬ážáááºá
ááœáá·áºáááºáž Firmware á¡áᶠ(SOF ) á¡ááœáá·áºáááá¯ááºáá¬áá»á¬áž áááŸáááá¯ááºáá±á¬áºáááºážá á¡áá¶áá»á áºááºáá»á¬ážá¡ááœáẠááá¯ááºážáá²áá¯ááºááᯠááááºáá¬ážáá²ááŒá áºááŒá®áž binary áá¯á¶á á¶ááŒáá·áº áá¶á·ááá¯ážáá±ážáá¬ážáááºá Sound Open Firmware ááá±á¬áá»ááºááᯠá¡áá¶ááá¯ááºážááá¯ááºáá¬áá¯ááºáá±á¬ááºááŒááºážááŸáá·áºáááºááá¯ááºááá·áº DSP áá»á áºááºáá»á¬ážá¡ááœáẠopen firmware ááá¯áááºáá®ážááẠIntel ááŸáá®ááœááºáá²á·ááẠ(Google ááẠáá±á¬ááºááá¯ááºážááœáẠááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááœááºáá«áááºáááº)á áá±á¬áá±á¬áááºááœááºá ááá±á¬áá»ááºááẠIntel Baytrailá CherryTrailá Broadwellá ApolloLakeá GeminiLakeá CannonLake ááŸáá·áº IceLake ááááºáá±á¬ááºážáá»á¬ážá¡ááœáẠá¡áá¶áá»á áºááºáá»á¬ážá¡ááœáẠfirmware ááá¯ááŸá¬ááœá±ááŒááºáááºáá¬ážááŒá®ážááŒá áºáááºá - Intel DRM áááá¯ááºáᬠ(i915) ááẠáá»á
áºááºáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ áááºáá±á¬ááºážáá«áááºá
Elkhartlake (Gen11)á Comet Lake (Gen9) áá»á áºááºáá»á¬ážá¡ááœáẠPCI ID áá»á¬ážááᯠááá·áºááœááºážáá¬ážáááºá Icelake áá»á áºááºáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ááᯠáááºááŒáááºá¡á±á¬áẠááŒá¯áá¯ááºáá¬ážááŒá®ážá áá±á¬ááºááẠPCI á ááºáá á¹á ááºáž ááœá²ááŒá¬ážáááºááŸááºááŸá¯áá»á¬ážááá¯áááºáž ááá·áºááœááºážáá¬ážáááºá
ááœáá·áºáá¬ážáááºá
mmio ááŸáá áºááá·áº 3D á¡ááá®áá±ážááŸááºážá¡áá»áá¯á·á á áœááºážáá±á¬ááºáááºááᯠáááááá¬áᬠááŒáŸáá·áºáááºáá±ážááá·áº mmio ááŸáá áºááá·áº áá±ážááŒááºážáá¯ááºáá±á¬ááºááá·áºá¡áá« áá®áá®ááá¯ááŸááºáá¬ááºááŸá buffer ááŸá áºáá¯ááŒá¬ážááœáẠá¡áá®á¡áá»áŸááŒá±á¬ááºážááŒááºáž (á¥ááá¬á 3DMark Ice Storm á ááºážáááºááŸá¯ááœáẠá áœááºážáá±á¬ááºááẠ300-400%) ááá¯ážáá¬áá«áááºá áááºážááá¬áá¶á·ááá¯ážááŸá¯áááºáž ááá·áºááœááºážáá¬ážáá«áááºáHDCP2.2 HDMI ááŸáááá·áºáá¯ááºááœáŸáá·áºáá±á¬ áá®áá®ááá¯á¡áá»ááºááŒááŸá¯áá»á¬ážááᯠáá¯ááºááŸááºááŒááºážá¡ááœáẠ(high-bandwidth Digital Content Protection) - Vega20 GPU á¡ááœáẠamdgpu áááá¯ááºáá¬
áááºááŒá±á¬áááºá RAS (áá¯á¶ááŒááºá áááºáá»áááŸá¯á áááŸáááá¯ááºááŸá¯á áááºáá±á¬ááºááŸá¯áá±ážááá¯ááºááŸá¯) á¡ááœáẠáá¶á·ááá¯ážááŸá¯ááŸáá·áº Powerplay áááºážááá¬ááᯠá¡á á¬ážááá¯ážááá·áº SMU 11 á áá áºááœá²á¡ááœáẠá ááºážáááºáá¶á·ááá¯ážááŸá¯á GPU Vega12 á¡ááœááºáááºááŒá±á¬áááºá BACO áá¯áẠ(Bus Activeá Chip Off) á¡ááœáẠáá¶á·ááá¯ážááŸá¯á GPU á¡ááŒááºá¡ááŸááºáá»áááºáááºááŸá¯á¡ááœáẠXGMIá ááŒááºááŸá¯ááºážááŒáá·áºáááºá áºáá¬áž (PCIe 4.0) á¡ááœáẠáááŠážáá¶á·ááá¯ážááŸá¯ áááºááá·áºáá¬ážáááºá Polaris10 GPU ááᯠá¡ááŒá±áá¶á amdkfd áááá¯ááºáá¬ááá¯á· PolarisXNUMX GPU ááá¯á¡ááŒá±áá¶áá¬ážáá±á¬ áááºáá»á¬ážá¡ááœáẠáá»á±á¬ááºáá¯á¶ážáá±áá±á¬ á¡áá±á¬ááºá¡áá¬ážáá»á¬ážááᯠáá±á«ááºážááá·áºáá¬ážáááºá - Nouveau áááá¯ááºáá¬ááẠNVIDIA Turing 117 áá»á
áºááºááẠ(GeForce GTX 117) ááœááºá¡áá¯á¶ážááŒá¯ááá·áº NVIDIA Turing 1650 chipset ááᯠá¡ááŒá±áá¶á áá¯ááºáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯áááºáá±á¬ááºážáá±ážáá¬ážáááºá IN
kconfigáááºááŒá±á¬áááºá áááºááŸáááœááºááŸááá¬ážáá±á¬ libdrm ááœáẠá¡áá¯á¶ážáááŒá¯áá±á¬á·áá±á¬ á¡áá¯á¶ážáááŒá¯áá±á¬á·áá±á¬ áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠááááºááẠáááºááŸááºááŒááºážá - "timeline" synchronization objects áá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯á¡á¬áž DRM API ááŸáá·áº amdgpu driver ááœáẠááá·áºááœááºážáá¬ážááŒá®ážá áááºááẠclassic blocking ááá«áá² áá¯ááºáá±á¬ááºááá¯ááºáááºááŒá áºáááºá
- VirtualBox virtual GPU á¡ááœáẠvboxvideo áááá¯ááºáá¬ááᯠáá¬ááºááœáŸááºážáá¬áááœá²á០áááºáááœá²á·á ááºážáá¯á¶ááá¯á· ááœáŸá±á·áá¬ážáááºá
- GFX SoC ASPEED áá»á áºááºá¡ááœáẠá¡ááŒááºááŸá¯ááºážáááá¯ááºáá¬ááᯠááá·áºááœááºážáá¬ážáááºá
- ARM SoC ááŸáá·áº Intel Agilex (SoCFPGA)á NXP i.MX8MMá Allwinner (RerVision H3-DVK (H3)á Oceanic 5205 5inMFDá áBeelink GS2 (H6)á Orange Pi 3 (H6))á Rockchip (Orange Piá ) áá¯ááºáá»á¬áž RK3399á Nanopi NEO4á Veyron-Mighty Chromebook), Amlogic: SEI Robotics SEI510á
ST Micro (stm32mp157aá stm32mp157c), NXP (
Eckelmann ci4x10 (i.MX6DL)ái.MX8MM EVK (i.MX8MM)á
ZII i.MX7 RPU2 (i.MX7)á
ZII SPB4 (VF610)á
Zii Ultra (i.MX8M)á
TQ TQMa7S (i.MX7Solo)á
TQ TQMa7D (i.MX7Dual)á
Kobo Aura (i.MX50)á
Menlosystems M53 (i.MX53)), NVIDIA Jetson Nano (Tegra T210)á
- áá¬ááºáá±á¬ááºážáá«áááºáá«áááºá
áá
áºáá»áááºáááºážááŸá¬áááºá áááºáááºá¡áá±áááá¡ááá²á·áá±á¬á·ááºáá²áá±á¬ááºáá±ážááŸááºáž
option ááá¯
Sound Firmware ááá¯ááœáá·áºáá«á áááá¯ááºáá¬áá»á¬ážááœáẠblobs áá»á¬ážáááºááŒááºážááᯠááááºáá¬ážáááºá
mt7615á rtw88á rtw8822bá rtw8822cá btmtksdioá iqs5xxá ishtp ááŸáá·áº ucsi_ccgá ixp4xxá imx-sdmaá amdgpuá nouveau ááŸáá·áº goya áááá¯ááºáá¬áá»á¬ážááŸáá·áº á
áá
áºááœá²áá»á¬ážá¡ááŒáẠááá¯ááºáááá¯áá¯ááºá
á¬ááœááºá
á¬áááºážáá»á¬ážááœáẠáá«ááŸáááá·áº blob ááá·áºááŸááºážáá±ážáá¯ááºááᯠá¡ááºááááºáá¯ááºááŒá®ážáá«ááŒá®á áááºážááááºááŸá¬ážááŸá¯ááŒá±á¬áá·áº r8822be áááá¯ááºáá¬ááŸá blobs ááá·áºááŸááºážáá±ážááᯠáááºááá·áºáá²á·áááºá
source: opennet.ru