This question already has an answer here:

I have been trying to read the source code for linux. I started watching a Youtube video which mentioned that character and block devices are different. It didn't say much about why it matters because once something is on the filesystem its the same.

marked as duplicate by Fox, thrig, meuh, GAD3R, Renan Feb 25 '18 at 1:56

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • 2
    Did you try Googling this? – Kusalananda Feb 24 '18 at 12:31
  • @MarkPlotnick I did take a look at that answer. I specifically wanted to know why is it so necessary to differentiate. – piepi Feb 24 '18 at 16:05
  • It's just historical. Block device drivers get access to common kernel routines for buffer caching and io scheduling. As mentioned in the answer to this question, FreeBSD has eliminated block devices and has a different framework for buffers and scheduling. – Mark Plotnick Feb 24 '18 at 17:40

This is just easy to understand a block device can be read block to block a character device is read char by char ...

/dev/random is char for example /dev/tyy is char


char devices can be controlled with special chars like ctrl+G makes a physical serial console to emit a Beep for example....

the simpliest explaination : it depends on method needed to read/write to them

Not the answer you're looking for? Browse other questions tagged or ask your own question.