Tha an kernel Linux 5.12 air gabhail ris an fho-shiostam KFence gus mearachdan a lorg nuair a bhios tu ag obair le cuimhne

Tha an Linux kernel 5.12, a tha ga leasachadh, a’ toirt a-steach buileachadh inneal KFence (Kernel Electric Fence), a bhios a’ sgrùdadh làimhseachadh cuimhne, a’ glacadh cus bufair, slighean cuimhne às deidh an saoradh, agus mearachdan eile de chlas coltach ris.

Bha comas-gnìomh coltach ris mar-thà an làthair anns an kernel ann an cruth roghainn togail KASAN (sanitizer seòladh kernel, a’ cleachdadh Address Sanitizer ann an gcc agus clang an latha an-diugh) - ge-tà, chaidh a shuidheachadh sa mhòr-chuid airson cleachdadh deasbaid. Tha fo-shiostam KFence eadar-dhealaichte bho KASAN anns an astar obrachaidh àrd aige, a tha ga dhèanamh comasach am feart seo a chleachdadh eadhon air coraichean ann an siostaman obrach.

Le bhith a’ cleachdadh siostaman toraidh bidh e comasach mearachdan cuimhne a ghlacadh nach eil a’ nochdadh ann an ruith deuchainn agus nach nochd iad ach rè eallach obrach no rè obrachadh fad-ùine (le uptime mòr). A bharrachd air an sin, le bhith a’ cleachdadh KFence air siostaman toraidh bidh e comasach àrdachadh mòr a thoirt air an àireamh de dh’ innealan a tha an sàs ann a bhith a ’sgrùdadh gnìomhachd an kernel le cuimhne.

Bidh KFence a’ faighinn a’ char as lugha os cionn luchdan neo-eisimeileach le bhith a’ cur duilleagan dìon a-steach don charn aig amannan stèidhichte. Às deidh don ath ùine dìon a thighinn gu crìch, bidh KFence, tron ​​​​t-siostam riarachadh cuimhne àbhaisteach (SLAB no SLUB allocator), a ’cur ris an ath dhuilleag dìon bho amar stuthan KFence, agus a’ tòiseachadh aithisg cunntais ùine ùr. Tha gach nì KFence suidhichte ann an duilleag cuimhne air leth, agus tha na duilleagan cuimhne air na crìochan clì is deas a’ cruthachadh duilleagan dìon, agus tha am meud air a thaghadh air thuaiream.

Mar sin, tha duilleagan le nithean air an sgaradh bho chèile le duilleagan dìon, a tha air an rèiteachadh gus “faochadh duilleag” a ghineadh air ruigsinneachd sam bith. Gus sgrìobhadh taobh a-muigh na crìche a lorg taobh a-staigh duilleagan nì, thathas a’ cleachdadh “sònaichean dearga” stèidhichte air pàtran cuideachd, a bhios a’ fuireach ann an cuimhne nach eil air a chleachdadh le nithean, a’ fuireach nuair a tha meud nan duilleagan cuimhne air an aon rèir. —+————+———+————+————+————+— | xxxxxxxxx | O: | xxxxxxxxx | :o | xxxxxxxxx | | xxxxxxxxx | B: | xxxxxxxxx | :b | xxxxxxxxx | | x GUARD x | J: RED- | x GUARD x | RED- :J| x GUARD x | | xxxxxxxxx | E: Sòn | xxxxxxxxx | Sòn: E | xxxxxxxxx | | xxxxxxxxx | C: | xxxxxxxxx | :c | xxxxxxxxx | | xxxxxxxxx | T: | xxxxxxxxx | :T | xxxxxxxxx | —+————+———+————+———+————+—

Ma thèid oidhirp a dhèanamh faighinn gu àite taobh a-muigh crìochan bufair, bidh an obrachadh a’ toirt buaidh air an duilleag dìon, a tha a’ leantainn gu gineadh “faochadh duilleag”, a bhios a’ gabhail a-steach KFence agus a’ clàradh fiosrachadh mun duilgheadas a chaidh a lorg. Gu gnàthach, cha bhith KFence a’ bacadh mearachd agus cha bhith e a’ taisbeanadh ach rabhadh sa log, ach tha suidheachadh “panic_on_warn” ann a leigeas leat an kernel a chuir ann an staid clisgeadh ma lorgar mearachd.

Source: fosgailtenet.ru

Cuir beachd ann