Как терминал Linux рисует символы?

Как терминал Linux рисует символы?

Допустим, на диске хранится файл, имя которого закодировано в двоичном формате. Что произойдет,
если я запущу его в терминале? Возможно, как:ls

  1. lsсчитывает байты имени файла, ищет его в текущей установленной кодировке, экранирует определенные байты, если они не найдены в кодировке, затем выводит имя файла на экранstdout
  2. Shell считывает то, что lsнапечатано, и снова печатает этоstdout
  3. Терминал считывает то, что оболочка только что распечатала, ищет его в кодировке, обнаруживает, что эти байты представляют кодовую точку XX.
  4. Затем терминал ищет кодовую точку XX в таблице шрифтов и рисует шрифт на экране.

Мои догадки могут быть неверными, поскольку мои познания в кодировании находятся лишь на начальном уровне. Если есть ошибки, укажите на них.

Пожалуйста, не стесняйтесь быть конкретными и подробными, чтобы помочь пользователям, таким как я, узнать больше и устранить проблемы с кодировкой. Я думаю, что понимание того, как работают системы, помогает пользователям решать их проблемы.

Связанный контент