Stasiun Kerja Online OnWorks Linux dan Windows

logo

Hosting Online Gratis untuk WorkStation

<Sebelumnya | Konten | Selanjutnya>

Perlu diingat bahwa sistem yang berbeda akan berperilaku berbeda dengan rata-rata beban yang sama. Misalnya, sistem dengan kartu grafis yang mendukung akselerasi perangkat keras tidak akan mengalami masalah rendering gambar 3D, sedangkan sistem yang sama dengan kartu VGA murah akan sangat lambat saat rendering. P133 lama saya akan menjadi sangat tidak nyaman ketika saya memulai server X, tetapi pada sistem modern Anda hampir tidak melihat perbedaan dalam beban sistem.


gambar

4.3.5. Dapatkah saya melakukan sesuatu sebagai pengguna?


Lingkungan yang besar dapat memperlambat Anda. Jika Anda memiliki banyak variabel lingkungan yang disetel (bukan variabel shell), jalur pencarian panjang yang tidak dioptimalkan (kesalahan dalam menyetel variabel lingkungan jalur) dan lebih banyak lagi dari setelan yang biasanya dibuat "on the fly", sistem akan membutuhkan lebih banyak waktu untuk mencari dan membaca data.


Di X, pengelola jendela dan lingkungan desktop bisa menjadi pemakan CPU nyata. Sebuah desktop yang sangat mewah datang dengan harga, bahkan ketika Anda dapat mengunduhnya secara gratis, karena sebagian besar desktop menyediakan add-on ad infinitum. Kesopanan


adalah suatu kebajikan jika Anda tidak membeli komputer baru setiap tahun.


gambar

4.3.5.1. prioritas


Prioritas atau pentingnya suatu pekerjaan ditentukan oleh bagus nomor. Program dengan angka bagus yang tinggi ramah terhadap program lain, pengguna lain, dan sistem; itu bukan pekerjaan penting. Semakin rendah angka yang bagus, semakin penting suatu pekerjaan dan semakin banyak sumber daya yang dibutuhkan tanpa membagikannya.


Membuat pekerjaan menjadi lebih baik dengan meningkatkan jumlah Nice hanya berguna untuk proses yang menggunakan banyak waktu CPU (kompiler, aplikasi matematika, dan sejenisnya). Proses yang selalu menggunakan banyak waktu I/O secara otomatis dihargai oleh sistem dan diberikan prioritas yang lebih tinggi (angka bagus yang lebih rendah), misalnya input keyboard selalu mendapat prioritas tertinggi pada suatu sistem.


Penentuan prioritas suatu program dilakukan dengan bagus perintah.


Sebagian besar sistem juga menyediakan BSD renice perintah, yang memungkinkan Anda untuk mengubah kebaikan dari perintah yang sedang berjalan. Sekali lagi, baca halaman manual untuk informasi khusus sistem Anda.


gambarProgram interaktif

BUKAN ide yang baik untuk bagus or renice program interaktif atau pekerjaan yang berjalan di latar depan.

Penggunaan perintah ini biasanya merupakan tugas bagi administrator sistem. Baca halaman manual untuk info lebih lanjut tentang fungsionalitas tambahan yang tersedia untuk administrator sistem.


gambar

4.3.5.2. sumber daya CPU


Pada setiap sistem Linux, banyak program ingin menggunakan CPU secara bersamaan, bahkan jika Anda adalah satu-satunya pengguna di sistem tersebut. Setiap program membutuhkan sejumlah siklus tertentu pada CPU untuk dijalankan. Mungkin ada kalanya tidak ada cukup siklus karena CPU terlalu sibuk. NS uptime perintah sangat tidak akurat (hanya menampilkan rata-rata, Anda harus tahu apa yang normal), tetapi jauh dari tidak berguna. Ada beberapa tindakan yang dapat Anda lakukan jika menurut Anda CPU yang harus disalahkan atas tidak responsifnya sistem Anda:


• Jalankan program berat saat beban rendah. Ini mungkin terjadi pada sistem Anda pada malam hari. Lihat bagian selanjutnya untuk penjadwalan.

• Mencegah sistem melakukan pekerjaan yang tidak perlu: hentikan daemon dan program yang tidak Anda gunakan, gunakan

temukan alih-alih menemukan yang berat, ...

• Jalankan pekerjaan besar dengan prioritas rendah


Jika tidak satu pun dari solusi ini merupakan opsi dalam situasi khusus Anda, Anda mungkin ingin meningkatkan CPU Anda. Pada mesin UNIX ini adalah pekerjaan untuk admin sistem.


gambar

4.3.5.3. Sumber daya memori


Ketika proses yang sedang berjalan mengharapkan lebih banyak memori daripada sistem yang tersedia secara fisik, sistem Linux tidak akan crash; itu akan mulai paging, atau swapping, yang berarti proses menggunakan memori pada disk atau di ruang swap, memindahkan konten memori fisik (bagian dari program yang berjalan atau seluruh program jika terjadi pertukaran) ke disk, sehingga mengambil kembali memori fisik untuk menangani lebih banyak proses. Ini sangat memperlambat sistem karena akses ke disk jauh lebih lambat daripada akses ke memori. NS puncak perintah dapat digunakan untuk menampilkan memori dan penggunaan swap. Sistem yang menggunakan glibc menawarkan pesan dan status memo perintah untuk memvisualisasikan penggunaan memori.


Jika Anda menemukan bahwa banyak memori dan ruang swap yang digunakan, Anda dapat mencoba:


• Membunuh, menghentikan, atau memperbarui program yang menggunakan sebagian besar memori

• Menambahkan lebih banyak memori (dan dalam beberapa kasus lebih banyak ruang swap) ke sistem.

• Menyetel kinerja sistem, yang berada di luar cakupan dokumen ini. Lihat daftar bacaan di Lampiran A untuk lebih lanjut.


gambar

4.3.5.4. sumber daya I/O


Sementara keterbatasan I/O adalah penyebab utama stres bagi admin sistem, sistem Linux menawarkan utilitas yang agak buruk untuk mengukur kinerja I/O. NS ps, vmstat dan puncak alat memberikan beberapa indikasi tentang berapa banyak program yang menunggu I/O; netstat menampilkan statistik antarmuka jaringan, tetapi hampir tidak ada alat yang tersedia untuk mengukur respons I/O terhadap beban sistem, dan iostat perintah memberikan gambaran singkat tentang penggunaan I/O umum. Berbagai front-end grafis ada untuk menempatkan output dari perintah ini dalam bentuk yang dapat dimengerti manusia.


Setiap perangkat memiliki masalahnya sendiri, tetapi bandwidth yang tersedia untuk antarmuka jaringan dan bandwidth yang tersedia untuk disk adalah dua penyebab utama kemacetan dalam kinerja I/O.


Masalah I/O jaringan:


• Kelebihan jaringan:


Jumlah data yang diangkut melalui jaringan lebih besar dari kapasitas jaringan, mengakibatkan lambatnya pelaksanaan setiap tugas terkait jaringan untuk semua pengguna. Mereka dapat diselesaikan dengan membersihkan jaringan (yang terutama melibatkan penonaktifan protokol dan layanan yang tidak Anda perlukan) atau dengan mengkonfigurasi ulang jaringan (misalnya penggunaan subnet, mengganti hub dengan sakelar, meningkatkan antarmuka dan peralatan).

• Masalah integritas jaringan:


Terjadi ketika data ditransfer secara tidak benar. Memecahkan masalah semacam ini hanya dapat dilakukan dengan mengisolasi elemen yang salah dan menggantinya.


Masalah I/O Disk:


• kecepatan transfer per proses terlalu rendah:


Kecepatan baca atau tulis untuk satu proses saja tidak cukup.

• tingkat transfer agregat terlalu rendah:


Total bandwidth maksimum yang dapat disediakan sistem untuk semua program yang dijalankan tidak cukup.


Masalah semacam ini lebih sulit untuk dideteksi, dan biasanya membutuhkan perangkat keras tambahan untuk membagi kembali aliran data melalui bus, pengontrol, dan disk, jika perangkat keras yang kelebihan beban menjadi penyebab masalahnya. Salah satu solusi untuk mengatasi ini adalah konfigurasi array RAID yang dioptimalkan untuk tindakan input dan output. Dengan cara ini, Anda dapat menyimpan perangkat keras yang sama. Upgrade ke bus, pengontrol, dan disk yang lebih cepat biasanya merupakan pilihan lain.


Jika kelebihan beban bukan penyebabnya, mungkin perangkat keras Anda secara bertahap gagal, atau tidak terhubung dengan baik ke sistem. Periksa kontak, konektor, dan colokan untuk memulai.


gambar


4.3.5.5. Pengguna


Pengguna dapat dibagi dalam beberapa kelas, tergantung pada perilaku mereka dengan penggunaan sumber daya:


• Pengguna yang menjalankan sejumlah (besar) pekerjaan kecil: Anda, pengguna Linux pemula, misalnya.

• Pengguna yang menjalankan pekerjaan yang relatif sedikit tetapi besar: pengguna yang menjalankan simulasi, kalkulasi, emulator, atau program lain yang memakan banyak memori, dan biasanya pengguna ini memiliki file data besar yang menyertainya.

• Pengguna yang menjalankan sedikit pekerjaan tetapi menggunakan banyak waktu CPU (pengembang dan sejenisnya).


Anda dapat melihat bahwa persyaratan sistem dapat bervariasi untuk setiap kelas pengguna, dan mungkin sulit untuk memuaskan semua orang. Jika Anda menggunakan sistem multi-pengguna, akan berguna (dan menyenangkan) untuk mengetahui kebiasaan pengguna lain dan sistem, untuk mendapatkan hasil maksimal darinya untuk tujuan spesifik Anda.


gambar

4.3.5.6. Alat grafis


Untuk lingkungan grafis, ada banyak alat pemantauan yang tersedia. Di bawah ini adalah cuplikan layar Monitor Sistem Gnome, yang memiliki fitur untuk menampilkan dan mencari informasi proses, dan memantau sumber daya sistem:


Gambar 4-3. Monitor Sistem Gnome


gambar


Ada juga beberapa ikon praktis yang dapat Anda instal di bilah tugas, seperti disk, memori, dan monitor beban. xload adalah aplikasi X kecil lainnya untuk memantau beban sistem. Temukan favorit Anda!


gambar

4.3.5.7. Mengganggu proses Anda


Sebagai pengguna yang tidak memiliki hak istimewa, Anda hanya dapat memengaruhi proses Anda sendiri. Kami telah melihat bagaimana Anda dapat menampilkan proses dan menyaring proses yang dimiliki oleh pengguna tertentu, dan pembatasan apa yang mungkin terjadi. Ketika Anda melihat bahwa salah satu proses Anda memakan terlalu banyak sumber daya sistem, ada dua hal yang dapat Anda lakukan:


1. Membuat proses menggunakan lebih sedikit sumber daya tanpa mengganggunya;

2. Hentikan proses sama sekali.


Jika Anda ingin proses terus berjalan, tetapi Anda juga ingin memberi kesempatan pada proses lain pada sistem, Anda dapat renice proses. Selain menggunakan bagus or renice perintah, puncak adalah cara mudah untuk menemukan proses yang merepotkan dan mengurangi prioritas.


Identifikasi proses di kolom "NI", kemungkinan besar akan memiliki prioritas negatif. Jenis r dan masukkan ID proses dari proses yang ingin Anda renice. Kemudian masukkan nilai bagus, misalnya "20". Itu berarti mulai sekarang, proses ini akan memakan waktu paling banyak 1/5 dari siklus CPU.


Contoh proses yang ingin Anda tetap jalankan adalah emulator, mesin virtual, compiler, dan sebagainya.


gambar

Jika Anda ingin menghentikan proses karena hang atau benar-benar mengamuk di jalan konsumsi I/O, pembuatan file atau penggunaan sumber daya sistem lainnya, gunakan membunuh memerintah. Jika Anda memiliki kesempatan, pertama-tama coba matikan prosesnya dengan lembut, kirimkan JANGKA TARGET sinyal. Ini adalah instruksi untuk menghentikan apa pun yang dilakukannya, menurut prosedur seperti yang dijelaskan dalam kode program:


joe:~> ps-ef | grep mozilla

joe 25822 1 0 Mar11 ?

00:34:04 /usr/lib/mozilla-1.4.1/mozilla-

joe:~> ps-ef | grep mozilla

joe 25822 1 0 Mar11 ?


joe:~> bunuh -15 25822

joe:~> bunuh -15 25822

Dalam contoh di atas, pengguna joe menghentikan browser Mozilla-nya karena hang.


gambar

Beberapa proses sedikit lebih sulit untuk dihilangkan. Jika Anda punya waktu, Anda mungkin ingin mengirimi mereka sinyal SIGINT untuk menginterupsi mereka. Jika itu juga tidak berhasil, gunakan sinyal terkuat, SIGKILL. Pada contoh di bawah ini, joe menghentikan Mozilla yang dibekukan:


joe:~> ps-ef | grep mozilla

joe 25915 1 0 Mar11 ?

00:15:06 /usr/lib/mozilla-1.4.1/mozilla-

joe:~> ps-ef | grep mozilla

joe 25915 1 0 Mar11 ?


joe:~> bunuh -9 25915


joe:~> ps-ef | grep 25915

joe 2634 32273 0 18:09 poin/4 00:00:00 grep 25915

joe:~> bunuh -9 25915


joe:~> ps-ef | grep 25915

joe 2634 32273 0 18:09 poin/4 00:00:00 grep 25915

Dalam kasus seperti itu, Anda mungkin ingin memeriksa apakah prosesnya benar-benar mati, menggunakan grep filter lagi pada PID. Jika ini hanya mengembalikan grep proses, Anda dapat yakin bahwa Anda berhasil menghentikan proses.


Di antara proses yang sulit untuk dibunuh adalah shell Anda. Dan itu adalah hal yang baik: jika mereka mudah dibunuh, Anda akan kehilangan cangkang Anda setiap kali Anda mengetik Ctrl-C pada baris perintah secara tidak sengaja, karena ini sama dengan mengirim SIGINT.


gambarUNIX tanpa pipa hampir tidak terpikirkan

Penggunaan pipa (|) untuk menggunakan output dari satu perintah sebagai input dari yang lain dijelaskan dalam bab berikutnya, Bab 5.

Komputasi Awan OS Teratas di OnWorks: