先学C语言
在学linux内核编程
我觉得从每个函数上字面上的意思,就能看出来吧?
估计你要的这个注释真没有,自己百度,google一下吧。
或者查看一下man。你研究的linux太深了..这个帮不了你。
Linux是开源的 *** 作系统,是目前世界上非常流行的一个 *** 作系统。优点很多。是有全世界各个行业的人在不断更新的 *** 作系统;
是不需要支付昂贵购买费用的 *** 作系统
是相对windows等系统要稳定得多的系统
是目前众多大型企业中小企业首选的服务器系统
是目前病毒攻击最少的系统
是任何一个想成为计算机高手和已经成为计算机高手的必须要掌握的系统
是一个让你最能知道计算机底层 *** 作方式和运作原理的系统
1、国际青少年信息学奥林匹克竞赛委员会决定:IOI2001将采用Linux *** 作系统和相对应的编程环境。
2、中国计算机学会也决定在NOI2001采用新的 *** 作系统和编程环境。
3、Linux开始于芬兰赫尔辛基大学的Linus Torvalds的业余爱好。
4、Linux是一 个与UNIX兼容的 *** 作系统。但Linux并没有包括Unix源码。
5、Linux属于一个完全基于自由软件的软件体系(GNU)。所有的GNU程序遵循一种“Copyleft”原则,即可以拷贝,可以修改,可以出售,只是有一条:源代码所有的改进和修改必须向每个用户公开,所有用户都可以获得改动后的源码。它保证了自由软件传播的延续性。Linux是自由软件,任何机构和个人都可以在遵守GNU公用许可证的前题下随意打包组合Linux软件和工具,以免费或收费的方式发行。即是说:Linux是目前唯一可以从网上或其他途径自由获得的可为PC及网络提供多用户、多任务、多进程功能的免费 *** 作系统软件。
6、Linux的标志(吉祥物)是企鹅。
7、Linux的分内核版本和发行版本。我们以内核版本来看,一般具有2.2.16这样的形式。其中第一部分是主版本号,第二部分是次版本号,二者构成当前的内核版本号,第三部分是对当前内核版本的修正次数。根据约定,次版本号为偶数时,表示该内核是稳定的发行版本,次版本号为奇数时,则表示该内核是不稳定的开发版本。
8、像Unix一样,Linux一般被分成四个主要部分:内核、Shell、文件系统和实用工具。
9、Linux需同时使用多个分区,每个分区称之为一个文件系统。最少需要二个分区:一个交换分区,一个根文件系统分区。
10、Linux采用的文件系统类型是ext2而不是FAT32(FAT32是WINDOWS采用的文件系统)。
11、“root”即根用户,是Linux系统中的最高权限用户,这个帐号对系统的一切文件都有完全的访问权限。
12、Linux的关机和MSDOS会有所不同,不能随意关机,因为Linux会将内存作为暂存区,那样可能会造成系统的瘫痪。使用正常的关机可将内存信息写回硬盘。关机使用的指令是“shutdown”。组合键“Ctrl + Alt + Del”可重启动Linux。
13、Vi 是 UNIX 世界里最通用的全屏编辑器,所有的UNIX机器都提供本编辑器。Linux里提供的是vi的加强版—vim,是同vi完全兼容的。
14、X Window System 是 UNIX 系统上强大的图形化作业环境。提供了类似于Windows的图形环境。
15、在Linux系统中,软盘/光盘属独立的文件系统,使用前必须挂装,用完需卸载。挂装使用命令:Mount –t 文件系统类型 设备名 挂装点。
16、Linux对字母的大小写是敏感的,在命令和参数中a和A并不等价。
17、Linux中包含5种文件系统。比较关键的是根文件系统和/usr文件系统。
-----------------------------------------------------------------
Linux的良好特性
1 开放性
是指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。凡遵循国际标准所开发的硬件和软件,都能彼此兼容,可方便地实现互连。
2 多用户
是指系统资源可以被不同用户使用,每个用户对自己的资源(例如:文件、设备)有特定的权限,互不影响。Linux和Unix都具有多用户的特性
3 多任务
是现代计算机的最主要的一个特点。它是指计算机同时执行多个程序,而且各个程序的运行互相独立。Linux系统调度每一个进程平等地访问微处理器。由于 CPU的处理速度非常快,其结果是,启动的应用程序看起来好像在并行运行。事实上,从处理器执行一个应用程序中的一组指令到Linux调度微处理器再次运行这个程序之间只有很短的时间延迟,用户是感觉不出来的。
4 良好的用户界面
Linux向用户提供了两种界面:用户界面和系统调用。Linux的传统用户界面是基于文本的命令行界面,即shell,它既可以联机使用,又可存在文件上脱机使用。shell有很强的程序设计能力,用户可方便地用它编制程序,从而为用户扩充系统功能提供了更高级的手段。可编程Shell是指将多条命令组合在一起,形成一个Shell程序,这个程序可以单独运行,也可以与其他程序同时运行。系统调用给用户提供编程时使用的界面。用户可以在编程时直接使用系统提供的系统调用命令。系统通过这个界面为用户程序提供低级、高效率的服务。 Linux还为用户提供了图形用户界面。它利用鼠标、菜单、窗口、滚动条等设施,给用户呈现一个直观、易 *** 作、交互性强的友好的图形化界面。
5 设备独立性
设备独立性是指 *** 作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以象使用文件一样, *** 纵、使用这些设备,而不必知道它们的具体存在形式。具有设备独立性的 *** 作系统,通过把每一个外围设备看作一个独立文件来简化增加新设备的工作。当需要增加新设备时、系统管理员就在内核中增加必要的连接。这种连接(也称作设备驱动程序)保证每次调用设备提供服务时,内核以相同的方式来处理它们。当新的及更好的外设被开发并交付给用户时, *** 作允许在这些设备连接到内核后,就能不受限制地立即访问它们。设备独立性的关键在于内核的适应能力。其他 *** 作系统只允许一定数量或一定种类的外部设备连接。而设备独立性的 *** 作系统能够容纳任意种类及任意数量的设备,因为每一个设备都是通过其与内核的专用连接独立进行访问。 Linux是具有设备独立性的 *** 作系统,它的内核具有高度适应能力,随着更多的程序员加入Linux编程,会有更多硬件设备加入到各种Linux内核和发行版本中。另外,由于用户可以免费得到Linux的内核源代码,因此,用户可以修改内核源代码,以便适应新增加的外部设备。
6 供了丰富的网络功能
完善的内置网络是Linux一大特点。 Linux在通信和网络功能方面优于其他 *** 作系统。Linux为用户提供了完善的、强大的网络功能。支持Internet是其网络功能之一。Linux免费提供了大量支持Internet的软件,Internet是在Unix领域中建立并繁荣起来的,在这方面使用Linux是相当方便的,用户能用Linux与世界上的其他人通过Internet网络进行通信。文件传输是其网络功能之二。用户能通过一些Linux命令完成内部信息或文件的传输。远程访问是其网络功能之三。Linux不仅允许进行文件和程序的传输,它还为系统管理员和技术人员提供了访问其他系统的窗口。通过这种远程访问的功能,一位技术人员能够有效地为多个系统服务,即使那些系统位于相距很远的地方。
7 可靠的系统安全
Linux采取了许多安全技术措施,包括对读、写控制、带保护的子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。
8 良好的可移植性
Linux可移植性是指将 *** 作系统从一个平台转移到另一个平台使它仍然能按其自身的方式运行的能力。 Linux是一种可移植的 *** 作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。可移植性为运行Linux的不同计算机平台与其他任何机器进行准确而有效的通信提供了手段,不需要另外增加特殊的和昂贵的通信接口。
Linux是一个开放的,自由的类Unix *** 作系统,它的源代码是公开的, 各个版本的Linux,包括从内核到许许多多的应用程序的源代码, 以及可执行文件都可以免费从互联网上下载。你也可以通过光盘得到Linux系统,和一般的软件不同的是, 你可以合法的和你的朋友分享Linux光盘。很显然Linux光盘的价格不会很高, 第一,因为你可以免费从网上下载第二,你可以和你的朋友合伙凑钱买一套Linux光盘, 再和你的朋友分享使用。
Linux和一般的软件不同,是可以和你的朋友分享的。 举个例子来说:
如果朋友家有张非常漂亮的窗子,但是这窗子是95牌的, 那么你仿制是违法的,如果这窗子是X牌的,或者说牌子是GPL, 那么你仿制就不违法。如果你不想违法,但又想要漂亮的窗子, 答案是选择自由软件。选择Linux。
Linux准确的说,是一个系统内核,它是最初在91年, 由芬兰的了不起的学生Linus Torvalds发起, 接着又有全世界的志愿者加入进来开发的。
现在有一些软件公司在做Linux的生意, 著名的有RedHat,SuSE以及Caldera等等, 这些公司发布自己的基于Linux内核的一整套的Linux系统: 这些整套的系统通常包括有:一个C语言及C++编译器,Perl脚本解释程序, 外壳Shell,图形用户界面X窗口系统,包括有X Server以及众多的应用程序等等。
这些整套的Linux系统按照习惯叫做Linux发布(distribution)。 目前使用最广泛的Linux发布是RedHat公司的RedHat Linux。 以前使用广泛的Slackware,现在也还有许多人在使用, 我自己的第一个Linux系统就是Slackware,现在我玩的是Debian, Debian和其他的Linux发布的不同之处在于:Debian是完全由志愿者开发的, 不像RedHat和SuSE,是由软件公司所支持的。
RedHat是使用最广泛的Linux发布,并且RedHat公司现在得到了Netscape, 以及Intel的支持,前景看好,根据一般的看法Redhat也是最容易上手的Linux发布。
SLackware和RedHat相比要稍微复杂一些,这主要是指软件的安装方面, 由于RedHat使用rpm打包系统,安装新软件简单到只要一行命令即可。 而Slackware往往要从源代码重新编译,稍微费事一些。
SuSE也是基于rpm打包系统,SuSE的特别之处在于它对X窗口系统的支持非常好, SuSE的吉祥物是一只绿色的蜥蜴,非常可爱。
Debian基于自己的Deb格式的打包系统,但是它也可以安装rpm软件包。
Linux可以运行在DEC公司的Alpha机上,也可以运行在Sun公司的Sparc机器上。 当然也可以运行在Intel公司的386以上的机器上。 编写的好的源代码可以不经修改的在各种不同的Linux平台上直接编译安装运行, 但是显然,不同的硬件平台之间的可执行文件是不兼容的。 但是一个特别针对Intel机器的rpm软件包是可以轻易的在for Intel的RedHat,SuSE,Debian, 以及Slackware上安装运行起来的。
RedHat,SuSE,Slackware以及Debian等各个发布之间的另一个不同是, 它们都带有自己的系统管理工具。 RedHat使用著名的控制面板+Linuxconf, Debian使用臭名昭著的dselect(为什么说臭名昭著?因为它非常难控制, 我自己只要有可能,就尽量不碰它) Slackware使用pkgtool, SuSE也有自己的管理工具。
Linux是一个开放的 *** 作系统,它的各个部分:内核,应用程序, 库程序是有机的结合的。并不是固定的死死的,碰都不能碰。Linux的内核的版本号是XX.XX.XX格式的,由三个数字组成, 第一个数字是主版本好,第三个数字是辅版本号,中间的数字如果是奇数, 表示这是一个开发版的内核,如果是偶数,表示是一个相对稳定的,可靠的内核。 一般来讲,除非你正在研究Linux内核,或有特别的需要, 否则不要摆弄奇数版本的内核。
今天演示的第三个部分是Linux下的软件。常常有人抱怨Linux缺乏有效的软件的支持, 这在一定情况下的确如此,但是另一方面也是我们对Linux了解太少, Linux平台上现在已经有了相当多的应用软件。 并且Linux正在得到越来越多的厂家的支持。 这段时间炒的非常火的Oracle,Sybase等等大型数据库的Linux版本就是一例。
Linux下不但有类似于PhotoShop的免费的图像编辑软件:gimp, 还有免费的类似于3DS的三维设计软件:MoonLight。 并且所有这些软件,你都可以得到源代码。
Linux下的图形用户界面是基于X窗口系统的, 这也秉承了Linux的一贯传统:开放的,有机结合的。 XFree86只是图形界面的服务器,上面可以运行各种不同的窗口管理器, 现在著名的窗口管理器有AfterStep,WindowMaker,以及Enlightenment。 有的窗口管理器做得非常的漂亮,真是叫做不看不知道,一看吓一跳。 另外,如果你不喜欢花哨的窗口管理器,你可以选择wm2或者9wm, 它们只占用非常少的系统资源,我自己经常使用的就是9wm。
有了X服务器和一个窗口管理器,你就有了图形用户界面。 你就可以运行Gimp或者Moonlight了,甚至你还可以运行Doom和quake!
现在还有一批程序员正在为Linux开发免费的,开放源代码的红色警报。
对Linux的一个最主要的批评是:Linux缺乏支持。 坦白的说,就我自己作为一个个人用户来讲,我觉得Linux的支持非常的好。 我曾经在安装Debian的时候遇到几个问题, 到Debian的Mail List里发信询问了一下,几个小时后就得到了答案。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)