起因
今天刷到一个视频。我们学习linux的时候就学到了一句话”一切皆是文件“,仔细看了一下他的看法和视频。确实很严谨。”一切皆是文件“是源于unix的,linux继承下来了,但是,不能这样理解。linus曾经解释过,一切皆字节流。我们实际使用一般都是使用api,所以,在api层面就该理解为,一切皆是文件描述符。
文件描述符
文件类型
字符设备
块设备
网络设备
总线设备
别好奇,搞驱动不只是字符,块,网络。还有平台和总线设备驱动。比如usb,spi,iic。这些你说他们是什么设备?都不一定的。这个是开用途的,usb可以网口啊,usb可以u盘啊,usb可以键盘鼠标啊!所以,这些平台设备和总线设备是另一种驱动,这些是给上面三种驱动一个总线驱动和驱动方法,这些一般都是厂商写好的,usb只能通过调用linux内核中的api来实现usb驱动的编写,因为,高度封装了,想得到usb配置符,只能靠内核哦!