Linux Programmer.docx

preview
需积分: 0 0 下载量 141 浏览量 更新于2019-06-26 收藏 14KB DOCX 举报
根据给定文件的信息,我们可以提炼出以下相关的IT知识点: ### 1. **啊哈C —— 易于使用的C语言编程软件** - **简介**:啊哈C是一款面向初学者和有一定经验的开发者设计的C语言编程软件。该软件基于GCC(GNU Compiler Collection)标准进行开发,这使得它不仅易于安装配置,还能够与众多其他开源工具无缝集成。 - **特点**: - **简洁可爱的界面**:直观的设计使得即使是第一次接触编程的新手也能够快速上手。 - **丰富的功能**:包括但不限于语法高亮、代码折叠以及编译错误提示等功能,这些功能有助于提高代码的可读性和编写效率。 - **易用性**:操作简便,适合初学者快速掌握C语言编程的基本技能。 ### 2. **Linux Programmer's Manual VCS(4) —— 虚拟控制台内存设备** - **概述**:本手册主要介绍了在Linux系统中与虚拟控制台终端相关的字符设备`/dev/vcs*`和`/dev/vcsa*`的功能和使用方法。 - **设备描述**: - `/dev/vcs0`:这是一个主设备号为7、次设备号为0的字符设备,通常权限设置为0644,所有者为root。该设备指向当前显示的虚拟控制台终端的内存。 - `/dev/vcs[1-63]`:这些是用于其他虚拟控制台终端的字符设备,主设备号同样为7,次设备号从1到63不等,权限通常也为0644,所有者为root。 - `/dev/vcsa[0-63]`:与`/dev/vcs*`类似,但包含额外的屏幕属性信息,如屏幕尺寸和光标位置等。 - **功能特性**: - 支持512字符字体:通过调用`ioctl(2)`函数中的`VT_GETHIFONTMASK`操作可以获取9位字节的位置信息。 - 屏幕转储:这些设备取代了传统的屏幕转储`ioctl(2)`操作,允许系统管理员通过文件系统的权限控制访问。 - **创建虚拟控制台设备**: - 可以通过简单的shell脚本来创建前八个虚拟控制台的设备文件: ```bash for x in {0..8}; do mknod -m 644 /dev/vcs$x c 7 $x mknod -m 644 /dev/vcsa$x c 7 $(($x + 128)) done chown root:tty /dev/vcs* ``` - **版本信息**:这些设备是在Linux内核版本1.1.92中引入的。 - **示例**: - 执行屏幕转储操作: ```bash cat /dev/vcs3 > foo ``` - 使用Braille支持: ```c #include <unistd.h> #include <stdlib.h> #include <stdio.h> #include <fcntl.h> #include <sys/ioctl.h> #include <linux/vt.h> int main(void) { int fd; char *device = "/dev/vcsa2"; char *console = "/dev/tty2"; struct { unsigned char lines, cols, x, y; } scrn; unsigned short s; unsigned short mask; unsigned char ch, attrib; fd = open(console, O_RDWR); if (fd < 0) { perror(console); exit(EXIT_FAILURE); } // 更多代码实现... } ``` 通过上述内容我们可以了解到啊哈C作为一款易于使用的C语言编程工具的特点和优势,同时深入理解了Linux系统中虚拟控制台内存设备的工作原理及其应用场景。这对于学习C语言和Linux系统管理都是非常有用的。