Rumah > Artikel > Tutorial sistem > Perbezaan antara peranti blok dan rentetan dalam Linux dan cara menggunakannya
Sebagai pengguna Linux, pernahkah anda menghadapi situasi di mana anda perlu menggunakan peranti blok atau peranti aksara? Walaupun peranti blok dan peranti aksara adalah serupa dari segi rupa dan kefungsian, ia sangat berbeza dalam cara ia dilaksanakan dan digunakan. Hari ini, kami akan membawa anda memahami secara mendalam tentang peranti blok dan rentetan di Linux, meneroka perbezaannya dan cara menggunakannya dengan betul.
Peranti dalam sistem yang boleh mengakses kepingan data bersaiz tetap (ketulan) secara rawak (tidak mengikut urutan) dipanggil peranti blok, dan kepingan data ini dipanggil blok. Peranti blok yang paling biasa ialah cakera keras, tetapi terdapat banyak peranti blok lain seperti pemacu cakera liut, pemacu CD-ROM dan memori kilat. Ambil perhatian bahawa kesemuanya digunakan untuk melekapkan sistem fail - ini adalah cara peranti blok secara umumnya diakses.
Satu lagi jenis peranti asas ialah peranti aksara. Peranti aksara diakses dengan teratur mengikut aliran aksara Port bersiri dan papan kekunci adalah semua peranti aksara. Jika peranti perkakasan diakses sebagai aliran aksara, ia harus diklasifikasikan sebagai peranti aksara sebaliknya, jika peranti diakses secara rawak (tidak teratur), maka ia adalah peranti blok.
Perbezaan asas antara kedua-dua jenis peranti ini ialah sama ada ia boleh diakses secara rawak - dengan kata lain, sama ada akses kepada peranti itu boleh melompat dari satu lokasi ke lokasi lain sesuka hati. Contohnya, peranti seperti papan kekunci menyediakan aliran data Apabila anda menaip rentetan "musang", pemacu papan kekunci akan mengembalikan aliran data yang terdiri daripada tiga aksara dalam susunan yang sama seperti input. Tidak masuk akal untuk meminta pemacu papan kekunci membaca rentetan yang tidak teratur, atau membaca aksara lain. Jadi papan kekunci ialah peranti aksara biasa, yang menyediakan input aliran aksara oleh pengguna daripada papan kekunci. Membaca daripada papan kekunci menghasilkan aliran aksara, pertama "f", kemudian "o", kemudian "x", dan akhirnya penghujung fail (EOF). Apabila tiada sesiapa yang menaip pada papan kekunci, aliran aksara kosong. Keadaan dengan peranti cakera keras adalah berbeza. Pemacu peranti cakera keras boleh meminta untuk membaca kandungan mana-mana blok pada cakera, dan kemudian beralih untuk membaca kandungan blok lain Kedudukan blok baca pada cakera tidak perlu berturut-turut, jadi keras cakera boleh diakses secara rawak Daripada diakses sebagai strim, ia jelas merupakan peranti blok.
Inti mengurus peranti sekatan dengan lebih terperinci daripada mengurus peranti aksara Isu yang perlu dipertimbangkan dan kerja yang perlu dilakukan adalah lebih kompleks daripada peranti aksara. Ini kerana peranti aksara hanya perlu mengawal satu lokasi—lokasi semasa—manakala peranti blok mesti boleh mengakses lokasi yang boleh dialihkan ke sana ke mari antara bahagian medium yang berbeza. Jadi sebenarnya, kernel tidak perlu menyediakan subsistem khusus untuk mengurus peranti aksara, tetapi pengurusan peranti blok mesti mempunyai subsistem khusus yang menyediakan perkhidmatan. Bukan sahaja kerumitan peranti blok jauh lebih tinggi daripada peranti aksara, tetapi sebab yang lebih penting ialah peranti blok mempunyai keperluan yang sangat tinggi pada prestasi pelaksanaan setiap penggunaan tambahan cakera keras akan meningkatkan prestasi keseluruhan sistem, dan kesannya Jauh lebih hebat daripada menggandakan kelajuan pemprosesan papan kekunci. Selain itu, seperti yang akan kita lihat, kerumitan peranti blok meninggalkan banyak ruang untuk pengoptimuman sedemikian.
Peranti bogel
Secara ringkasnya, peranti sekat boleh diakses secara rawak, tetapi peranti aksara tidak boleh diakses secara rawak Bagaimana untuk menerangkan peranti bogel?
Tidakkah peranti mentah, seperti peranti cakera mentah, juga boleh dibaca secara rawak? Kemudian gunakan peralatan mentah untuk mencipta fail data 2G dalam pangkalan data Untuk mengakses blok data terakhir, Oracle perlu membaca semua blok data sebelumnya Ini jelas tidak konsisten dengan fakta sistem pengendalian tidak boleh rawak Membaca tidak bermakna pangkalan data tidak boleh juga membaca secara rawak.
Peranti sekat dibaca dari cache sistem, bukan terus dari cakera fizikal. Peranti aksara boleh dibaca terus dari cakera fizikal tanpa melalui cache sistem. (Seperti papan kekunci, ganggu terus dengan sewajarnya)
Melalui pengenalan artikel ini, kami memahami bahawa terdapat perbezaan besar dalam pelaksanaan dan penggunaan peranti blok dan peranti rentetan. Ringkasnya, peranti blok berorientasikan input dan output data blok, manakala peranti rentetan berorientasikan input dan output jenis aliran aksara. Pada masa yang sama, dalam aplikasi sebenar, kita boleh memilih jenis peranti yang sesuai mengikut keperluan kita sendiri, dan menggunakan arahan yang sepadan untuk mencipta, melekap, memformat dan operasi lain. Secara umum, menguasai penggunaan peranti blok dan rentetan adalah sangat penting untuk meningkatkan pengoptimuman prestasi dan tahap pengurusan sistem Linux.
Atas ialah kandungan terperinci Perbezaan antara peranti blok dan rentetan dalam Linux dan cara menggunakannya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!