Cihaz Türleri

Cihazların nasıl yönetildiğini konuşmadan önce, bazı cihazlara gerçekten bir göz atalım.

$ ls -l /dev
brw-rw----   1 root disk      8,   0 Dec 20 20:13 sda
crw-rw-rw-   1 root root      1,   3 Dec 20 20:13 null
srw-rw-rw-   1 root root           0 Dec 20 20:13 log
prw-r--r--   1 root root           0 Dec 20 20:13 fdata

Sütunlar soldan sağa şu şekildedir:

  • Permissions

  • Owner

  • Group

  • Major Device Number

  • Minor Device Number

  • Timestamp

  • Device Name

ls komutunda her satırın ilk bitinde dosya türünü görebileceğinizi unutmayın. Device file’lar şu şekilde belirtilir:

  • c - character

  • b - block

  • p - pipe

  • s - socket

Character Device

Bu cihazlar veriyi iletir, ancak bir seferde bir karakter şeklinde. Çok sayıda pseudo device (/dev/null) karakter cihazı olarak karşınıza çıkacaktır, bu cihazlar gerçekten fiziksel olarak makineye bağlı değildir, ancak işletim sistemine daha fazla işlevsellik sağlarlar.

Block Device

Bu cihazlar veriyi iletir, ancak büyük sabit boyutlu bloklar halinde. En yaygın olarak harddiskler, dosya sistemleri gibi veri bloklarını kullanan cihazları block device olarak görürsünüz.

Pipe Device

Named pipe’lar iki veya daha fazla process’in birbiriyle iletişim kurmasına olanak tanır, bunlar character device’lara benzer, ancak çıktıyı bir cihaza göndermek yerine başka bir process’e gönderirler.

Socket Device

Socket device’lar process’ler arasında iletişimi kolaylaştırır, pipe device’lara benzerler ancak aynı anda birçok process ile iletişim kurabilirler.

Device Characterization

Cihazlar iki sayı kullanılarak karakterize edilir, major device number ve minor device number. Bu numaraları yukarıdaki ls örneğinde görebilirsiniz, virgülle ayrılmışlardır. Örneğin, bir cihazın cihaz numaralarının 8, 0 olduğunu varsayalım:

  • Major device number kullanılan device driver’ı temsil eder, bu durumda 8, ki bu genellikle sd block device’lar için major numaradır.

  • Minor number ise kernel’e bu driver sınıfındaki hangi benzersiz cihaz olduğunu söyler, bu durumda 0 ilk cihazı (a) temsil etmek için kullanılır.

Last updated