Untuk membuat cerpen panjang, beberapa hari yang lalu salah satu pembangun kernel memuat naik patch (200 baris kod) yang memungkinkan untuk meningkatkan prestasi sistem (hampir 10 kali ganda), terutama ketika berurusan dengan multitasking selama pelaksanaan tugas berat (seperti menyusun kernel). Linus mengucapkan tahniah kepada pembangun ini kerana memberikan sumbangan besar. Walau bagaimanapun, pemaju Red Hat, Lennar Poettering tidak bersetuju untuk melaksanakan peningkatan ini secara langsung dari kernel; lebih baik dia membuat perubahan di ruang pengguna (~ / .bashrc). Linus marah dan mengejek pengembang ini, memberitahunya bahawa hasilnya bercakap untuk diri mereka sendiri. Lennar, bukannya menjawab dengan kata-kata kasar, duduk alternatif (yang tidak perlu menambal kernel) dan yang menempati hanya 4 baris. Pada akhirnya, mereka menutup Linus ... |
Catatan: kaedah ini memerlukan sokongan untuk kumpulan tugas dalam Kernel Linux (kumpulan), iaitu hanya pengguna dengan Kernel yang lebih tinggi dari 2.6.36 yang dapat menerapkannya.
Cara menggunakan patch di Fedora
1.- Edit fail ~ / .bashrc.
gedit ~ / .bashrc
2.- Tampal kod berikut di akhir fail:
jika ["$ PS1"]; kemudian
mkdir -m 0700 / sys / fs / cgroup / cpu / pengguna / $$
echo $$> / sys / fs / cgroup / cpu / pengguna / $$ / tugasan
fi
3.- Jalankan arahan berikut:
mount -t cgroup cgroup / sys / fs / cgroup / cpu -o cpu
mkdir -m 0777 / sys / fs / cgroup / cpu / pengguna
Cara menggunakan patch di Ubuntu
Di Ubuntu perkara lebih rumit ...
1.- Edit fail rc.lokal dengan arahan ini:
sudo gedit /etc/rc.local
dan tampal sebelum di mana tertera "keluar 0", berikut:
mkdir -p / dev / cgroup / cpu
mount -t cgroup cgroup / dev / cgroup / cpu -o cpu
mkdir -m 0777 / dev / cgroup / cpu / pengguna
echo "/ usr / local / sbin / cgroup_clean"> / dev / cgroup / cpu / release_agent
2.- Simpan fail dan berikan izin pelaksanaan:
sudo chmod + x /etc/rc.local
3.- Edit fail ~ / .bashrc:
gedit ~ / .bashrc
4.- Tampal kod berikut di akhir fail:
jika ["$ PS1"];
kemudian mkdir -m 0700 / dev / cgroup / cpu / user / $$
echo $$> / dev / cgroup / cpu / pengguna / $$ / tugasan
echo "1"> / dev / cgroup / cpu / pengguna / $$ / notify_on_release
fi
5.- Ubah suai fail cgroup_clean:
sudo gedit / usr / local / sbin / cgroup_clean
6.- Tampal kod berikut di akhir fail:
#! / Bin / sh
jika ["$ *"! = "/ pengguna"]; kemudian
rmdir / dev / cgroup / cpu / $ *
fi
7.- Simpan fail dan berikan izin pelaksanaan:
sudo chmod + x / usr / local / sbin / cgroup_clean
8.- Reboot sistem.
Catatan: jika anda melihat / dev / cgroup / folder anda akan melihat peningkatan yang besar dalam pengurusan multitasking.
Saya menemui arahan untuk Arch, mereka ada di sini: http://pastebin.com/raw.php?i=sHRYRuAN
Bagi saya, saya menggunakan patch, banyak peningkatan yang saya tidak perhatikan secara umum, tetapi jika anda melihat perubahan besar ketika menatal halaman web, laman web ini benar-benar lancar untuk pertama kalinya !!! =)
Hebat! Terima kasih banyak berkongsi!
Adakah saya memberitahu anda bahawa kami mencari orang yang menggunakan Arch untuk blog? Sekiranya anda berminat, hantarkan kepada kami jom gunalinux@gmail.com
Pelukan besar! Paul.
Terima kasih atas jemputan, maka kami akan meneruskan melalui pos kemudian 😉
Secara kebetulan tidak akan ada arahan untuk Archlinux, bukan? 🙂
Saya tidak menjumpainya. Tetapi ada yang memberitahu saya bahawa ia lebih menyerupai Fedora. Sebaliknya, harus diingat bahawa kerana semua orang mengumpulkan Arch seperti yang mereka mahukan, mungkin itu mempengaruhi prosedur untuk mengikuti ...
Di sini saya dapati cara menerapkannya di Archlinux, ia serupa dengan fedora: http://pastebin.com/raw.php?i=sHRYRuAN
bash: / dev / cgroup / cpu / user / $ / task: Fail atau direktori tidak ada
Saya mengikuti arahan ini dan terus menerus memberitahu saya ralat ini semasa membuka terminal AMD64 x jika ada hubungannya
Saya sudah menjumpainya, sila pablo betulkan http://www.webupd8.org/2010/11/alternative-to-200-lines-kernel-patch.html
Apa yang perlu dilakukan di ubuntu - bukannya apa yang anda letakkan - adalah:
sudo gedit / usr / local / sbin / cgroup_clean
dan letakkan ini:
#! / Bin / sh
jika ["$ *"! = "/ pengguna"]; kemudian
rmdir / dev / cgroup / cpu / $ *
fi
Sedia! Dibetulkan! Terima kasih!
Memang betul! Terima kasih kerana mengingatkan saya!
Saya baru sahaja menambahkan penjelasan itu pada awal catatan.
Pelukan! Paul.
Khususnya, apa faedah yang akan saya peroleh sebagai pengguna, dan peningkatan prestasi apa yang akan dilihat dalam sistem saya.
Semuanya berjalan lebih pantas. Walau bagaimanapun, perbezaannya benar-benar "dilihat" ketika anda melakukan tugas berat dan ingin melakukan tugas lain pada masa yang sama. Sebagai contoh, anda menjalankan pemasangan beberapa program atau anda menyusun kernel atau menyunting video yang berat dan pada masa yang sama anda ingin melayari internet atau menonton filem, dll.
Beritahu saya jika anda mengetahui cara melaksanakan patch di Arch. Saya akan mencuba menjalankan yang sesuai di Fedora.
Peluk! Paul.
Saya rasa ini bergantung pada penggunaan yang anda berikan pada komputer anda. Sekiranya anda hampir tidak menggunakan internet dan beberapa penyunting teks ringan ... anda tidak akan "merasakan" perbezaannya. Sebaliknya, jika anda seperti saya dan melakukan tugas berat (seperti menukar video, menyusun kernel, dan lain-lain) semasa melayari Internet atau menonton filem, anda boleh mengetahui perbezaannya.
Selepas semua langkah, semasa saya membuka terminal, saya selalu mendapat yang berikut:
mkdir: tidak dapat membuat direktori "/ dev / cgroup / cpu / user / 1844": Fail atau direktori tidak ada
bash: / dev / cgroup / cpu / user / 1844 / task: Fail atau direktori tidak ada
bash: / dev / cgroup / cpu / user / 1844 / notify_on_release: Fail atau direktori tidak ada
domingopv @ pc1: ~ $
Semuanya berfungsi dengan baik walaupun terminal, adakah anda melakukan sesuatu yang salah?
Mmmm ... Saya betul-betul tidak tahu apa itu. Namun, saya mendapat gambaran bahawa kemungkinan besar anda tidak melakukan beberapa langkah dengan baik, bermula dari 5 dan seterusnya. Cuba ulangi atau pastikan anda betul. Itu sahaja yang dapat saya fikirkan buat masa ini.
Pelukan besar! Paul.
Pasang semula maverick dan pasang semula patch dan sekarang saya mendapat yang berikut.
mkdir: tidak dapat membuat direktori "/ dev / cgroup / cpu / user / 1678": Fail atau direktori tidak ada
bash: / dev / cgroup / cpu / user / 1678 / task: Fail atau direktori tidak ada
bash: / dev / cgroup / cpu / user / 1678 / notify_on_release: Fail atau direktori tidak ada
domingopv @ pc1: ~ $
Uyy .. Saya benar-benar tidak tahu apa itu. Ia berfungsi dengan sempurna untuk saya.
Sesuatu memberitahu saya bahawa pembersihan kumpulan tidak dilakukan dengan baik. Itulah sebabnya saya menegaskan anda melihat dari langkah 5 dan seterusnya.
Ceria! Paul.
Ibu saya, mengagumkan, saya dapat melihat video flash 1080p pada nvidia 8400 pasif, maksud saya, buruk buruk, SEMPURNA, cpus semua berfungsi, uffff indah, yang bertambah baik, jauh lebih baik, saya mempunyai Ubuntu 10.04 😀 baik, video bagus untuk saya hahaha 😀
Apa rc.local? Terdapat beberapa, yang mana? Salam.
Saya baru saja menulis perintah yang tercantum di titik 4. Anda tidak perlu menyalinnya ke dalam fail tetapi menjalankan perintah tersebut.
Ceria! Paul.
Ia tidak dijelaskan dengan baik.
Apa yang perlu anda lakukan ialah mengedit fail rc.local dengan:
sudo gedit /etc/rc.local
Anda mesti menampal di dalam (sebelum keluar 0):
mkdir -p / dev / cgroup / cpu
mount -t cgroup cgroup / dev / cgroup / cpu -o cpu
mkdir -m 0777 / dev / cgroup / cpu / pengguna
echo "/ usr / local / sbin / cgroup_clean"> / dev / cgroup / cpu / release_agent
Itulah masalahnya. Langkah-langkah tersebut tidak dijelaskan dengan baik.
Anda betul! Dengan jelas tertulis, "edit fail rc.local." Apa yang tidak perlu ditambahkan adalah perintah untuk melakukan perkara tersebut (yang mungkin tidak diketahui oleh sesetengah orang). Saya menambahnya sekarang.
Terima kasih atas makluman! Ceria! Paul.
Apakah prosedur dalam PCLinuxOs?
Sebenarnya saya tidak tahu…
Sekiranya anda mengetahui, jangan lupa untuk berkongsi data dengan yang lain!
Thank you very much!
Ceria! Paul.
Nampaknya saya atau anda tidak memberikan rujukan dari mana anda mendapatkannya? Bolehkah anda memberitahu saya sumbernya?
Terima kasih
Tidak ada sumber tunggal. Saya mencari cara melakukannya dari pelbagai sumber dan dari pengalaman peribadi saya sendiri. Secara umum, saya dapat memberitahu anda bahawa sumbernya adalah berjuta-juta blog yang menghasilkan berita tersebut. Cari "patch 200 linux kernel lines" dan anda akan melihat apa yang saya bicarakan. Saya tidak ingat dengan tepat, tetapi bahagian Ubuntu mungkin diperoleh dari WebUpd8; tidak begitu dengan Fedora.
Saya adalah pengguna Ubuntu 64 bit yang tidak lama dahulu dan apabila saya melihat tip ini, saya mula menyiasat dan kernel semasa yang saya miliki adalah 2.6.32-27 mengikut catatan, patch ini hanya boleh digunakan pada kernel yang lebih tinggi atau sama hingga 2.6.36 Soalan saya ialah jika perubahan ini hanya berfungsi untuk distro 32 bit atau di distro saya sekarang bolehkah kernel dikemas kini menjadi 2.6.36?
Terima kasih untuk semua maklumat di web, bahan yang sangat baik.
Perubahan ini berlaku untuk 32 dan 64 bit.
Ceria! Paul.
untuk soalan, dan ini tidak akan mengganggu kemas kini kemudian?
Sekiranya tidak berjalan dengan baik, apa yang terburuk yang boleh berlaku?
(Anda melihat bahawa kemudian hanya dari Ubuntu 10.04 ke 10.10 merosakkan semuanya)
Perkara pertama yang harus diperjelas (untuk mengelakkan penggunaan kaedah yang tidak bertanggungjawab) adalah bahawa ia memerlukan sokongan untuk kumpulan tugas dalam Kernel Linux (kumpulan), iaitu, hanya pengguna dengan Kernel yang lebih besar dari 2.6.36 yang dapat menggunakan kaedah ini peningkatan.