Java: как устроено чтение и запись файла на низком уровне
Допустим, мы на java открыли файл через file.input.stream, то есть, создали поток. А как это происходит на уровнях ниже?
Т.е. java-машина когда запускает подобный код обращается сначала к ОС; ОС обращается к файловой системе, а затем даёт добро на запись и т.д..
Посоветуйте, пожалуйста, книги или темы для прочтения, чтобы разобраться в этом вопросе фундаментально.
Java наверное использует какое-то API от ОС чтобы записывать файлы, а ОС использует протоколы файловой системы...?