Ko te putanga tuatahi (v1.0.0) o waho-o-rakau, he kete taputapu mo te whakawhanake me te whakamatautau i nga mahi me nga waahanga kernel Linux, i tukuna.
waho-o-rakau ka taea e koe te whakaaunoa i etahi mahi mahinga ki te hanga taiao mo te patuiro i nga kōwae kernel me te whakamahi, te whakaputa i nga tatauranga pono, me te whakarato hoki i te kaha ki te whakauru ngawari ki te CI (Te Whakakotahitanga Tonu).
Kei te whakaahuahia ia kōwae kernel, whakamahi ranei e te konae .out-of-tree.toml, e whakaatu ana i nga korero mo te taiao e hiahiatia ana, me te (mehemea he painga) nga here mo te mahi i te aroaro o etahi whakamarumaru.
Ma te kete taputapu ka taea e koe te tautuhi i nga momo momo kernel e pa ana ki tetahi whakaraeraetanga (ma te whakamahi i te whakahau --guess), ka taea hoki te whakamahi hei whakangawari i nga rapunga-rua mo tetahi mahi motuhake.
Kei raro ko te rarangi o nga huringa mai i te putanga v0.2.
Kua tapirihia e
-
I whakatinanahia te kaha ki te whakawhäiti i te maha o nga kakano i hanga (waho-o-te rakau kernel autogen) kakano (i runga i te whakaahuatanga i roto i te .out-of-tree.toml) me te taki oma (waho-o-rakau pew) ma te whakamahi i te —max= Tawhā X.
-
Ko te whakahau genall hou, ka taea e koe te whakaputa i nga kakano katoa mo te tohatoha me te putanga motuhake.
-
Ko nga raarangi katoa kei te rongoa inaianei i roto i te putunga sqlite3. Kua whakatinanahia nga whakahau mo nga patai ngawari e hiahiatia ana, me te kaweake raraunga ki te json me te tohu.
-
Kua whakatinanahia te tatauranga mo te tupono o te mahi angitu (i runga i nga whakarewatanga o mua).
-
Te kaha ki te penapena i nga hua hanga (tawhā hou --dist mo te whakahau pew-waho-rakau)
-
Tautoko mo te whakaputa metadata mo nga kakano kua whakauruhia ki runga i te punaha manaaki, me te hanga tika ki te kaihautu.
-
Tautoko mo nga kakano tuatoru.
-
Ko te taiao patuiro kei waho o te rakau ka rapu aunoa mo nga tohu patuiro i runga i te punaha manaaki.
-
Kua taapirihia te kaha ki te whakahaere i nga whakahekenga haumarutanga me te whakaahei/whakakore i nga haki KASLR, SMEP, SMAP me KPTI i te wa e patuiro ana.
-
Kua taapirihia te --threads=N tawhā ki te whakahau whakamatautau pew-waho-rakau, ka taea te whakamahi ki te tohu i te maha o nga miro hei hanga/whakahaere me te whakamatautau i nga mahi me nga kōwae kernel.
-
Ko te kaha ki te tautuhi tohu ka tuhia ki te raarangi ka taea te whakamahi ki te tatau tatauranga.
-
Kua taapirihia te kaha ki te tautuhi i te putanga kernel me te kore e whakamahi i nga korero noa.
-
Ko te whakahau mokihi hou, e whakamahia ana mo te whakamatautau papatipu o nga mahi me nga waahanga kernel i roto i nga raarangi.
-
I roto i te whirihoranga (.out-of-tree.toml) mo te whakamahi me te kernel module, kua taapirihia te kaha ki te whakakore i te KASLR, SMEP, SMAP me KPTI, me te tautuhi i te maha o nga matua me te mahara.
-
Inaianei ka utaina nga whakaahua (rootfs) i te wa e rere ana te kernel autogen. kua kore e hiahiatia te bootstrap.
-
Tautoko mo nga kakano CentOS.
Ngā huringa
-
Inaianei, mena karekau he ahua (rootfs) mo te putanga e hiahiatia ana o te tohatoha, ka ngana a waho-o-rakau ki te whakamahi i te ahua o te putanga tata. Hei tauira, te ahua Ubuntu 18.04 mo Ubuntu 18.10.
-
Inaianei e kore e kiia he rahua nga whakamatautau mo nga waahanga kernel mena ka ngaro (kaore he whakamatautau - kaore he hapa!).
-
Inaianei ka whakahoki mai i waho o te rakau he waehere hapa kino mena i rahua tetahi waahanga (hanga, whakarewa, whakamatautau ranei) i runga i tetahi o nga matua.
-
Kua huri te kaupapa ki te whakamahi i nga waahanga Go, ko te hanga me te GO111MODULE=on kua pai ake inaianei.
-
Kua taapirihia nga whakamatautau taunoa.
-
Ka whakamahia taunoa a Test.sh ki te kore te huihuinga i te ${TARGET}_test i whakatinana i te Makefile.
-
Kua kore e whakawāteatia te rangitaki kernel i mua i te whakahaere i te kōwae kernel, te whakamahi ranei. Ko etahi o nga mahi e whakamahi ana i te riihi turanga kernel i roto i te dmesg ki te karo i te KASLR, na te horoi ka pakaru te arorau kua whakatinanahia.
-
Kei te whakamahi a qemu/kvm i nga kaha katoa o te kaitukatuka manaaki.
Kua tangohia
-
wheketere Kernel kua tangohia katoatia na te whakatinanatanga o te whakatipuranga kernel i runga i nga Dockerfiles kua whakahoutia.
-
karekau a bootstrap e mahi i tetahi atu mea. Ka tangohia te whakahau i te tukunga e whai ake nei.
Whakatikatika
-
I runga i te macOS, kaore e hiahiatia nga GNU coreutils kia rere.
-
Kua nukuhia nga konae rangitahi ki ~/.out-of-tree/tmp/ na te hapa o te whakaurunga ki roto docker ki etahi punaha.
Source: linux.org.ru