" 

 All device drivers are software that helps interact with hardware per se, and there's no changing that. 
 You may take the terminology of the word ""driver"" as far to the etymology or history as you wish, but most people who use the term ""driver"" in computing mean device drivers, or lower-level software to ""abstract"" the user and/or developer from such a point. There's no such thing as a ""device driver"" for a filesystem, as it's not hardware it's a system for organizing files in software ON TO hardware. You can debate on the abstraction of it forever if you wish, but it doesn't change the fact that it's software written(regardless of either program code in firmware or not). This article is confusing by telling a user that a filesystem is a piece of abstraction, when it's simply code that entails some form of abstraction like most other things in user space, or from an interface-perspective. By simply telling people and linking them to an article on computer science and abstractions you're throwing them towards a whole new article that has endless babble on abstraction theories in computing, rather than simplifying the software and abstraction in a more straightforward sense."