GNU和LINUXthe到底怎么发音个发音

GNU/Linux编程_百度百科
声明:百科词条人人可编辑,词条创建和修改均免费,绝不存在官方及代理商付费代编,请勿上当受骗。
GNU/Linux编程
《GNU/Linux编程》是2012年出版的图书,作者是郑谦益。
GNU/Linux编程基本信息
书 名 GNU/Linux编程(工业和信息化普通高等教育“十二五”规划教材立项项目)  丛 书 名 21世纪高等教育计算机规划教材  标准书号 ISBN 978-7-115-28260-6[1]
  作 者 郑谦益 编著  责任编辑 董楠  开 本 16 开  印 张 15.5  字 数 407 千字  页 数 240 页  装 帧 平装  版 次 第1版第1次  初版时间 2012年8月  本 印 次 2012年8月  首 印 数 -- 册
GNU/Linux编程内容提要
Linux作为一种自由和源码开放的类UNIX操作系统,虽然诞生至今只有20年的时间,但已经在各个领域中得到了广泛的应用,对软件行业产生了深远的影响。本书通过大量实例讲述Linux环境下进行软件开发所必须掌握的基础知识。全书内容由四个部分组成,第一部分介绍Linux相关背景知识和GNU命令工具的使用方法;第二部分为Shell程序设计,讲述Shell脚本语言的语法结构;第三部分介绍Linux开发环境,讲述基于开发的GNU工具的使用方法;第四部分为Linux环境下的C语言编程,系统讲述与Linux内核有关的应用编程接口函数的使用方法。
本书可以作为高校计算机相关专业的高年级学生、研究生学习Linux编程的教材或教学参考书。
GNU/Linux编程目录
第一部分 Linux基础
第1章 UNIX系统概述 2  1.1 UNIX的发展历史 2  1.1.1 UNIX的产生与发展 2  1.1.2 UNIX的相关标准 3  1.2 GNU的诞生与发展 4  1.2.1 自由软件计划GNU 4  1.2.2 许可证协议 5  1.2.3 自由软件和开源软件 5  1.3 Linux内核 5  1.3.1 Minix操作系统 5  1.3.2 Linux的产生与发展 6  1.3.3 Linux内核版本 6  1.3.4 Linux内核的分类 6  1.4 Linux系统 6  1.4.1 Linux系统的概念 6  1.4.2 GNU/Linux 7  1.4.3 Linux发行版 7  1.5 Linux系统的商业运营模式 8
第2章 Shell命令 9  2.1 Shell命令概述 9  2.1.1 目录的组织结构 9  2.1.2 文件的路径 10  2.1.3 Linux命令的语法结构 10  2.1.4 Shell命令的分类 11  2.1.5 联机帮助 11  2.2 目录和文件操作 11  2.2.1 目录操作 11  2.2.2 文件操作 12  2.2.3 显示文本文件内容 15  2.2.4 硬链接和软链接 16  2.3 用户和用户组管理 16  2.3.1 用户的分类 16  2.3.2 用户组管理 16  2.3.3 用户管理 17  2.3.4 用户属性的修改 18  2.3.5 用户管理相关配置文件 18  2.4 文件的权限管理 19  2.4.1 文件属性 19  2.4.2 权限的修改 21  2.4.3 权限验证 22  2.4.4 权限掩码umask 23  2.4.5 文件和目录权限的计算 23  2.5 进程管理 24  2.5.1 进程的管理信息 24  2.5.2 与进程相关的命令 25  2.6 Linux的备份与恢复 28  2.6.1 面向文件的备份与恢复 28  2.6.2 面向文件系统的备份 30  2.6.3 面向设备的备份与恢复 31  2.7 Linux应用软件包管理 32  2.7.1 应用软件包的分类 32  2.7.2 RPM软件包的管理 32  2.8 输入输出重定向和管道 33  2.8.1 标准输入输出文件的定义 33  2.8.2 输入输出重定向 34  2.8.3 管道 34  2.9 元字符与正则表达式 35  2.9.1 元字符 35  2.9.2 正则表达式 36
第3章 Linux系统的定制 38  3.1 磁盘管理 38  3.1.1 硬盘的物理结构 38  3.1.2 磁盘分区 39  3.1.3 分区格式化 41  3.1.4 ext2文件系统 43  3.1.5 文件系统的挂载与卸载 44  3.2 引导加载程序 grub 45  3.2.1 引导加载的概念 45  3.2.2 引导加载程序grub 46  3.2.3 grub交互命令 47  3.2.4 grub的启动过程 48  3.3 Linux内核定制 49  3.3.1 Linux内核 49  3.3.2 定制Linux内核 50  3.4 Linux应用环境的初始化 50  3.4.1 引导配置文件inittab 50  3.4.2 用户登录 53  第二部分 Shell程序设计  第4章 Shell程序设计 56  4.1 Shell概述 56  4.2 Shell脚本的定义与执行 57  4.3 Shell变量 58  4.3.1 Shell变量的分类 58  4.3.2 命令替换 61  4.4 输入和输出 62  4.5 Shell中的引号 63  4.5 条件表达式 65  4.5.1 条件表达式 65  4.5.2 命令分隔符 68  4.6 判断语句 68  4.6.1 条件语句 68  4.6.2 分支语句 71  4.7 循环语句 73  4.7.1 for循环语句 73  4.7.2 while语句 75  4.7.3 until语句 76  4.8 函数 77  第三部分 CNU C语言开发环境  第5章 GNU C开发环境 82  5.1 GNU C编译器 82  5.1.1 目标代码的生成 82  5.1.2 GCC概述 83  5.1.3 GNU C编译链接工具 83  5.2 项目管理工具—GNU make 85  5.2.1 项目管理概述 85  5.2.2 基于make工具的项目管理 86  5.2.3 Makefile中的变量 88  5.2.4 Makefile文件中的潜规则 90  5.3 创建和使用函数库 92  5.3.1 静态库 93  5.3.2 共享库 95  5.3.3 动态链接库 96  5.4 GNU C函数库—glibc 98  第四部分 Linux环境下的C语言编程  第6章 Linux文件与目录 102  6.1 Linux文件系统概述 102  6.1.1 文件系统的概念 102  6.1.2 虚拟文件系统 102  6.1.3 文件系统的结构 103  6.1.4 应用编程接口 104  6.2 文件的基本输入输出 105  6.2.1 文件操作 105  6.2.2 标准输入输出文件的定义 108  6.2.3 编程实例 108  6.3 文件属性操作 111  6.3.1 获得文件属性 111  6.3.2 修改文件存取权限 114  6.3.3 改变文件的属主和属组 115  6.4 目录操作 116  6.4.1 目录操作 117  6.4.2 浏览目录中的文件 119  6.5 标准I/O库 120  6.5.1 标准I/O库概述 120  6.5.2 文件操作 121  6.5.3 格式化输入与输出 124  6.5.4 刷新缓冲区 127  6.6 I/O重定向 129  6.6.1 文件描述符 129  6.6.2 I/O重定向 129  6.6.3 实现重定向的方法 129
第7章 Linux信号 133  7.1 信号概述 133  7.1.1 信号的概念 133  7.1.2 应用编程接口 133  7.2 Linux系统中的信号 134  7.2.1 Linux系统中的信号 134  7.2.2 信号的分类 136  7.2.3 Linux信号的产生 136  7.2.4 信号的处理方式 136  7.2.5 信号的处理流程 136  7.3 信号的定义 136  7.3.1 设置信号的行为 137  7.3.2 信号处理函数 139  7.3.3 定义多个信号 139  7.3.4 信号的阻塞 142  7.4 发送信号 143  7.5 计时器 146  7.5.1 睡眠延迟 146  7.5.2 间隔计时器 150
第8章 Linux进程 154  8.1 Linux进程概述 154  8.1.1 Linux进程 154  8.1.2 应用编程接口 155  8.2 进程的地址空间 155  8.2.1 进程的地址空间 155  8.2.2 环境变量相关操作 159  8.2.3 命令行参数的引用 160  8.2.4 动态内存管理 161  8.3 进程的创建与终止 162  8.3.1 创建进程 162  8.3.2 程序的启动与结束 164  8.4 加载可执行映像 167  8.4.1 ELF格式 167  8.4.2 可执行文件的加载 168  8.5 进程同步控制 173  8.5.1 等待子进程结束 173  8.5.2 等待指定子进程 176  8.6 Linux进程环境 179  8.6.1 用户和用户组 179  8.6.2 进程和进程组 180  8.6.3 会话 184  8.6.4 守护进程 185
第9章 Linux进程通信 187  9.1 进程通信概述 187  9.1.1 进程通信方式 187  9.1.2 应用编程接口 187  9.2 管道 188  9.2.1 无名管道 188  9.2.2 命名管道 192  9.3 IPC概述 193  9.4 信号量 193  9.4.1 创建信号量 194  9.4.2 获得与释放信号量 195  9.4.3 信号量的控制操作 197  9.5 消息队列 198  9.5.1 创建消息队列 199  9.5.2 发送消息 200  9.5.3 接收消息 201  9.5.4 设置消息队列属性 203  9.6 共享内存 206  9.6.1 创建共享内存 206  9.6.2 共享内存映射的建立与释放 207  9.6.3 设置共享内存属性 208
第10章 I/O操作模式 212  10.1 I/O操作模式概述 212  10.1.1 I/O操作模式 212  10.1.2 应用编程接口 213  10.2 同步阻塞I/O模式 214  10.2.1 基本概念 214  10.2.2 存在的问题 214  10.2.3 解决方法 215  10.3 同步非阻塞I/O模式 215  10.3.1 基本概念 215  10.3.2 实现方法 216  10.4 多路复用I/O模式 218  10.4.1 基本概念 218  10.4.2 实现方法 219  10.5 信号驱动的I/O模式 221  10.5.1 基本概念 221  10.5.2 实现方法 221  10.6 异步I/O模式 223  10.6.1 基本概念 223  10.6.2 实现方法 223  10.7 内存的I/O映射 227  10.7.1 基本概念 227  10.7.2 实现方法 227  10.8 文件锁 229  10.8.1 文件锁的类型 229  10.8.2 基于flock函数实现文件锁 230  10.8.3 利用fcntl函数实现文件加锁 231  10.9 终端I/O 233  10.9.1 终端的行为模式 234  10.9.2 终端模式的设置 234  10.9.3 终端I/O的编程接口 236
参考文献 240
.人民邮电出版社教学服务与资源网[引用日期]新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
白手起家, 积分 19, 距离下一级还需 181 积分
论坛徽章:0
我是新手,请教各位Linux中的GNOME怎么读,最好能给出音标,谢啦!
&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp
丰衣足食, 积分 667, 距离下一级还需 333 积分
论坛徽章:0
未命名.jpg (4.02 KB, 下载次数: 3)
11:29 上传
丰衣足食, 积分 667, 距离下一级还需 333 积分
论坛徽章:0
发音:呢儿木
白手起家, 积分 19, 距离下一级还需 181 积分
论坛徽章:0
回复 #2 jonelaw 的帖子
衷心感谢jonelaw的指点!
丰衣足食, 积分 667, 距离下一级还需 333 积分
论坛徽章:0
回复 #4 redful 的帖子
稍有积蓄, 积分 471, 距离下一级还需 29 积分
论坛徽章:0
Q: GNOME: &nome& or &guh-nome&?&&
A: In English, the word &gnome& is pronounced with a silent &g&. However, GNOME itself is generally pronounced as &guh-nome&, just as GNU is pronounced &guh-noo& when referring to the GNU Project.
巨富豪门, 积分 24925, 距离下一级还需 15075 积分
论坛徽章:0
& & 用汉字打出来发音用户名:陆伟峰
访问量:6664
注册日期:
阅读量:1297
阅读量:3317
阅读量:451365
阅读量:1136011
[匿名]ddf:
51CTO推荐博文
相信很多人看到了这个标题就会产生疑问,这篇文章到底要讲什么东西?在回答这个问题之前,我先提出几个问题?
1. 什么是linux?
2. 什么是gnu?
3. gnu/linux是什么玩意儿?
在回答了以上问题后,大家自然也清楚我想说明的问题了。
什么是linux
相信了解一些it知识的人都听过linux这个名词。维基百科上的linux词条是最经典和最准确的说明(http://zh.wikipedia.org/wiki/linux),在此直接应用,免去班门弄斧之嫌。
linux操作系统(linux),是一种计算机操作系统。linux操作系统的内核的名字也是“linux”。linux操作系统也是自由软件和开放源代码发展中最著名的例子。
linux内核最初是为英特尔386微处理器设计的。现在linux内核支持从个人电脑到大型主机甚至包括嵌入式系统在内的各种硬件设备。
在开始的时候,linux只是个人狂热爱好的一种产物。但是现在,linux已经成为了一种受到广泛关注和支持的一种操作系统。包括ibm和惠普在内的一些计算机业巨头也开始支持linux。很多人认为,和其他的商用unix系统以及微软 windows相比,作为自由软件的linux具有低成本,安全性高,更加可信赖的优势。
linux内核最初只是由芬兰人林纳斯•托瓦兹(linus torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。最初的设想中,linux是一种类似minix这样的一种操作系统。linux的第一个版本在1991年9月被发布在internet上,随后在10月份第二个版本就发布了。
linux的历史是和gnu紧密联系在一起的。从1983年开始的gnu计划致力于开发一个自由并且完整的类unix操作系统,包括软件开发工具和各种应用程序。到1991年linux内核发布的时候,gnu已经几乎完成了除了系统内核之外的各种必备软件的开发。在linus torvalds和其他开发人员的努力下,gnu组件可以运行于linux内核之上。整个内核是基于gnu通用公共许可,也就是gpl(general pubic license)的,但是linux内核并不是gnu 计划的一部分。
linux的标志和吉祥物是一只名字叫做tux的企鹅,linux的注册商标是linus torvalds所有的。这是由于在1996年,一个名字叫做william r. della croce的律师开始向各个linux发布商发信,声明他拥有linux商标的所有权,并且要求各个发布商支付版税,这些发行商集体进行上诉,要求将该注册商标重新分配给linus torvalds。
linux的某些版本是不需要安装就能使用的版本,他们称为livecd
gnu计划,又称革奴计划,是由richard stallman在日公开发起的。它的目标是创建一套完全自由的操作系统。richard stallman最早是在net.unix-wizards新闻组上公布该消息,并附带一份《gnu宣言》等解释为何发起该计划的文章,其中一个理由就是要“重现当年软件界合作互助的团结精神”。
gnu是“gnu's not unix”的递归缩写。stallman宣布gnu应当发音为guh-noo,与canoe发音相同,以避免与gnu(非洲牛羚,发音与new相同)这个单词混淆。unix是一种广泛使用的商业操作系统的名称。由于gnu将要实现unix系统的接口标准,因此gnu计划可以分别开发不同的操作系统部件。gnu计划采用了部分当时已经可自由使用的软件,例如tex排版系统和x window视窗系统等。不过gnu计划也开发了大批其他的自由软件。
为保证gnu软件可以自由地“使用、复制、修改和发布”,所有gnu软件都在一份在禁止其他人添加任何限制的情况下授权所有权利给任何人的协议条款,gnu通用公共许可证(gnu general public license,gpl)。这个就是被称为“反版权”(或称copyleft)的概念。
1985年richard stallman又创立了自由软件基金会(free software foundati hat兼并的cygnus soluti
到了1990年,gnu计划已经开发出的软件包括了一个功能强大的文字编辑器emacs,c语言编译器gcc,以及大部分unix系统的程序库和工具。唯一依然没有完成的重要组件就是操作系统的内核(称为hurd)。
1991年linus torvalds编写出了与unix兼容的linux操作系统内核并在gpl条款下发布。linux之后在网上广泛流传,许多程序员参与了开发与修改。1992年linux与其他gnu软件结合,完全自由的操作系统正式诞生。(尽管如此gnu计划自己的内核hurd依然在开发中,目前已经发布beta版本。)
许多unix系统上也安装了gnu软件,因为gnu软件的质量比之前unix的软件还要好。gnu工具还被广泛地移植到windows和mac os上。
注:以上内容来自维基百科gnu词条(http://zh.wikipedia.org/wiki/gnu)
gnu/linux是什么玩意儿
通过回答上面两个问题,我们很明显可以注意到linux只是一个操作系统内核而已,而gnu提供了大量的自由软件来丰富在其之上各种应用程序。
因此,严格来讲,linux这个词本身只表示linux内核,但在实际上人们已经习惯了用linux来形容整个基于linux内核,并且使用gnu 工程各种工具和数据库的操作系统。基于这些组件的linux软件被称为linux发行版。一般来讲,一个linux发行套件包含大量的软件,比如软件开发工具,数据库,web服务器(例如apache),x window,桌面环境(比如gnome和kde),办公套件(比如openoffice.org),等等。
绝大多数基于linux内核的操作系统使用了大量的gnu软件,包括了一个shell程序、工具、程序库、编译器及工具,还有许多其他程序,例如emacs。正是由于linux使用了许多gnu程序,gnu计划的开创者richard stallman博士提议将linux操作系统改名为gnu/linux。但有些人只把操作系统叫做&linux&。
有部分linux套件,包括了debian,采用了“gnu/linux”的称呼。但大多数商业linux套件依然将操作系统称为linux。有些人也认为“操作系统”一词指的应该只是系统的内核,其他程序都只能算是应用软件,这么一来,该操作系统的内核应叫linux,而linux套件是在linux内核的基础上加入各种gnu工具。
一些人拒绝使用“gnu/linux”作为操作系统名称的人认为:
1. linux朗朗上口;名字较短又好记;
2. richard stallman博士直到1990年代中期,linux开始流行后才要求更名。
我相信,坚持看完这些枯涩文字的读者一定明白了我需要探讨的问题,我们常说的linux,准确地来讲,应该是叫“gnu/linux”。虽然,我们没有为gnu和linux的开发做出什么贡献,但是我们可以为gnu和linux的宣传和应用做出微薄的努力,至少我们能够准确地去向其他人解释清楚gnu、linux以及gnu/linux之间的区别。让我们一起为gnu/linux的推广贡献出自己的力量!
了这篇文章
类别:┆阅读(0)┆评论(0)
16:06:07 12:29:32}

我要回帖

更多关于 the到底怎么发音 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信