当前位置:Linux教程 - Linux - Linux 2.4的精彩世界(4)

Linux 2.4的精彩世界(4)

作者:Joe Pranevich 编译:Georgia

字符设备-键盘、鼠标,控制台和端口

  仅能够被连续访问的这一类设备就叫Character Device(字符设备)。这些设备,像串口设备,能够从流数据或者压入数据读入,而并不跳跃在这些数据之前或者之后的串口设备,包括串口和并口、键盘、鼠标以及终端设备。Linux 2.4内核最突出的表现就是对这些方面做了很多主要的改进。

  Linux 2.4内核在这些方面最大的改进之一就是对键盘和鼠标的支持。以前的Linux 内核包括对串口和PS/2鼠标、键盘(和ADB,例如在苹果机上),而Linux 2.4很好地支持USB接口的鼠标和键盘。另外,Linux 2.4也支持那些没有被BIOS初始化以及无论键盘是否配备但是已经出故障的系统上。最后,Linux 2.4包括对数字Pad的扩展支持以及模拟允许它们作为一个正常的鼠标使用,甚至当这个不是在硬件中直接支持设备的时候。

  自从Linux 2.2发布以来,Linux对串口的支持并没有改变多少。Linux 2.4(Linux 2.2之后的一些版本)支持共享PCI串口接线板的IRQ资源,以前ISA接口和主板上的串口限制了这些功能。此外,Linux 2.4为多端口串行卡提供了一系列新的驱动程序。希望这些改变以及以后的改进,使用户在Linux 2.4下比以前更加容易使用串口设备。

  在一个独立部分中,从Linux 2.2开始就对所谓的""WinModems"" (或者 ""soft modems"",软调制解调器,软猫)支持做了很多工作。这些""软猫""很大程度上是靠软件起作用的,但是,这些""软猫""的厂家通常只提供Windows的驱动程序,通常它的DSP(Digital Signal Processing,数字信号处理技术)和其它硬件部分的功能必须在软件中执行,而不是传统的电路板上。虽然这些""软猫""厂家没有向Linus提供驱动程序代码,但是,为了更好地支持这些惹人厌的""软猫"",几个独立的驱动程序计划一直在努力改变这一境况。

  虽然,在Linux支持大多数这些设备之前,将还有很长的路要走,但是事实上由于Open Source(开放源代码)运动的迅速增长,从而掀起整个业界滚滚而来开放源代码趋势。

  Linux 2.4也包括基本上重写了并行端口子系统。在这个方面一个最主要的改变是支持所谓的""generic(普通)""并口设备。程序通常使用特殊的方法访问并行端口,或者很有可能仅仅为取得即插即用信息而检测端口。另外,如果在硬件支持的条件下,这次重写将允许Linux 2.4用户以增强模式访问并行端口,包括使用UDMA (为了提高输入/输出速度)。在新的Linux 内核下,它同样也能发送所有的控制台信息到打印机之类的并口设备上,这就使得Linux通过把内核和纠错信息添加在一台行式打印机上,它的功能性将和许多商业UNIX操作系统相抗衡。

多媒体:声音、电视、广播等

  在相对复杂的字符设备名单中,只有很少一部分基本的设备被Linux支持。作为逐渐开始扮演桌面平台角色的Linux,正在努力支持声卡、电视和广播接收卡,以及其他音频和视频输出设备。老实说,Linux 2.4在这个方面突破性的改进,并不如Linux 2.2做的那么多。Linux 2.4包含了新增或更新的驱动程序,用以支持多种声卡和显卡,包括全双工的支持。Linux 2.4和一些最新版本的Linux 2.2还包含一些代码,使某些音频设备能够在需要的范围内更容易的分配内存,这使得使用和配置这些设备时更便易。

  彻底重写声音子系统的工作正在进行,它将支持现今声卡的许多高级功能。这些支持在Linux2.4中还未实现,但相信在Linux 2.6内核中会增加这些内容。

显卡

  另一个更为复杂多样的设备是帧缓冲--许多显示卡就是这种设备。帧缓冲是内存中的一块区域,它代表了(或本身就是)显示卡存储器中的相应内容。对这部分内存进行写操作会影响到屏幕上相应点的颜色。它比其他设备复杂得多的原因是它须要进行IO操作来完成修改调色板及其他一些视频功能。

  Linux 2.4包含许多新的驱动和对老驱动的改进。特别重要的是,linux支持更多的""标准""VGA卡及其设置,至少是某些模式(哪怕只是16色模式--至少它能工作)。请记住这项功能可以被略过,除非你确定没有其他方法能够支持这些设备(在i386机器上)。目前,相对系统核心,XFree项目提供更多的驱动程序支持更多的显示卡,所以没有必要使用这项功能来支持X Window系统。(SVGAlib和其他一些库都可以在支持的硬件上进行直接显存操作,但是使用这些库必须要小心谨慎,因为存在安全问题并可能导致竞态冲突。)

  系统核心在这方面的最大改变是加入了Direct Rendering Manager(DRM),DRM负责管理对图像硬件的访问,因为会导致系统崩溃,它禁止许多对显卡的立即写入操作,这将会很多情况下提高系统的稳定性。另外,DRM还作为显卡DMA访问的入口。总的来说,这些改变将使Linux 2.4(与XFree4.x及其他兼容程序一起)进行密集型图像操作时更加稳定和安全。同时这些改变也将使某些电视接收卡可以在Linux下工作。