Что произошло в файловой системе UNIX(точнее, в файловых дескрипторах, таблице открытых файлов и индексе), когда я использую системный вызов link ()?

#linux #unix #filesystems

Вопрос:

Я видел картинку о файловой системе UNIX, она показана ниже, предположим, что в процессе есть две инструкции.:

 fd = open("/tmp/xyz", O_CREATE|O_WRONLY);
link("a", "/tmp/xyz");
 
  1. Мне интересно , что произойдет после link("a", "/tmp/xyz") , создаст ли он еще одну запись в таблице индексов или в таблице открытых файлов? Или это не имеет никакого отношения к этим трем таблицам и использует другие таблицы или структуру данных для записи этой ссылки?
    введите описание изображения здесь
  2. Также я рисую ниже еще одну картинку, которая является состоянием(в моем понимании) после выполнения fd = open("/tmp/xyz", O_CREATE|O_WRONLY); , если что-то на картинке не так, пожалуйста, поправьте меня.

введите описание изображения здесь