当前位置: 主页 > 电脑系统维修 > 如何 Linux 虚构终端显现文字_Linux教程_Linux-Linux系统门第网

如何 Linux 虚构终端显现文字_Linux教程_Linux-Linux系统门第网

发布时间:02-03 19:09点击:

  观众群引见前沿的 Wayland system compositor 是什么以及干什么 需求它。

  CJKTTY 布条是什么,干什么我写了它

  当你没有运用 X 的时分,翻开计算机,你就正在运用虚构终端。这样积年来它任务的很好,直到它离开了中国。蕴含中文字符的资料名无奈准确显现,中文文档无奈阅

  读。千万能够运用 X , 然而我干什么没有能让终端也能显现方块字呢?假如正在 X 下我能让银幕显现方块字,终端下定然也能。为此我开端了 internet 上的搜索。我找出了 fbterm,这是个能够应用 /dev/fb0 完成的终端模仿器,和 XTERM 一样,只没有过 XTERM 应用的 X 制图文字,而 fbterm 间接写入 /dev/fb0。

  /dev/fb0 是什么?

  帧缓冲区设施。帧缓冲区是一块存储海域(外存或者许显存或者许其余的输入设施的存储时间),内核将其形象为一度设施。经过拜访该设施就能拜访帧缓冲区。帧缓冲区的形式既然银幕映像。由输入设施没有停的扫描帧缓冲区生成显现设施的掌握信号。

  但是我仿佛总是忘却登录后 fbterm,对于我来说,等看到乱码的时分骤然想起没有 fbterm 并没有是那样欢快的阅历。这但是内中一度缺欠。fbterm 占用了帧缓冲区设施,招致 w3m 这类运用帧缓存绘绘制像的终端 阅读器没有能畸形任务。许多依托帧缓冲区设施的终端顺序都没有能被 fbterm 优良的兼容。此外我接续寻觅,找出了 youbest 写的中文布条。我有个喜爱运用最新内核的习气,当内核晋级招致 youbest 的布条再也没有能运用的时分,我开端到 youbest 公布布条的页面挥笔,指望 youbest 百忙中能修正一下他的布条。

  Youbest 仿佛很忙,正在新内核的下,我决议本人正在修正。那个时分我才真正的开端看内核的代码。终究理解了虚构终端的任务原理后,我开端修正内核。因为内核外部构造变化招致 youbest 的布条无奈使用,我简直是从头开端了开拓而没有是容易的将无奈使用的全体停止修理。独一失去保存的就是 youbest 布条中的布点字库。我将其起名儿为 CJKTTY , 取能显现 CJK 的 TTY 之意。

  从这里失掉中文显现布条呢?

  我将布条接管正在了

  VGA 显卡在于文字形式时,情理地点 0xB8000 即文字缓冲区起始地点,大小由其文字形式决议,最大 32KB 。VGA 显卡内建字符发作器,一直的扫描字符缓冲区并将文字转换为图形驱动显现器显现。其 GLYPH 即为字符的 ASCII 码。

  字符发作器和书体

  字符发作器内建一度或者许多个位图书体。运用何种书体起源于安装的文????形式代码。

  Linux默许运用 80x25 字符 16 色形式 , 每字符 8x16 布点。字符发作器的书体蕴含 256 个字形。字符发作器里的文字和字符的对于应联系正在 DOS 零碎下被称为代码页。显卡自带的被称为 OEM 代码页。

  字符发作器的书体能够修正。DOS 下经过修正代码页完成。

  Linux下能够运用 setfont。

  由于这一历史缘由,VGA 的文字形式至多同屏涌现 256 种没有同的字符。关于只要 26 个假名的拉丁文字绰绰没有足,然而却无奈满意占有百万字符的中文。文字形式掌握台由 vgacon (drivers/video/console/vgacon.c)完成。 VGA 再有没有常运用的单色文字形式,起始地点为 0xB0000 。况且字符体例也有所没有同,那里没有再引见。

  图形形式掌握台

  图形形式掌握台间接操作帧缓冲区显现文字。帧缓冲区是一块存储海域(一般是正在显存中),其形式就是显现正在银幕上的图像。显卡间接将其形式为显现器掌握信号。关于顺序而言,帧缓冲区就是银幕。

  图像形式掌握台运用帧缓冲区作为银幕输入,要想运用图像形式掌握台,必需加载帧缓冲区驱动并有呼应的软件。

  没有同的显现设施一般运用没有同的帧缓冲区驱动,关于 VGA 兼容显卡,除非能运用对准于显卡写的帧缓冲区驱动 ( 假如部分话 ),还能够运用通用的 VESA 驱动。 VESA 驱动应用 VGA 兼容的显卡的 BIOS 将显卡转入 VGA 图形形式并安装期冀的缓冲区形式,由显现形式内核参数 vga= 给出。 VGA 图形形式下,帧缓冲区的起始地点为 0xA0000 ,最大 64KB 大小。像素体例看显现色深。垂范的 256 色形式下每像素一度字节。假如 BIOS 支撑 VBE 扩大,能安装更大的区分率和颜色深浅,帧缓冲区大小也会超越 64KB,因此起始地点也没有再是 0xA0000,详细底细请参考. 帧缓存形式下,

  Linux内核将需求显现的字符率先转换为位图,而后将位图书体写入帧缓存即可变出现于银幕。也就是说,图形形式下,由内核来承当字符发作器的任务。实践下去说,某个内核自带的字符发作器将能支撑显现多于 255 种字符。然而我将正在前面通知

  观众群,由于历史缘由,内核完成的字符发作器和 VGA 的字符发作器有着一样的缺欠。图形掌握台由 fbcon(drivers/video/console/fbcon.c)完成。图形掌握台因为需求生成位图字形,需求带上座图书体,意译内核的时分至多需求取舍一度书体。位图书体正在内核是一度大数组,没有同的书体 ( drivers/video/console/font_ ) 存储正在各自的数组中。

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
电脑维修