linux系统组成及结构

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/kai_zone/article/details/80444872
            </div>
                                                <!--一个博主专栏付费入口-->
         
         <!--一个博主专栏付费入口结束-->
        <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-4a3473df85.css">
                                    <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-4a3473df85.css">
            <div class="htmledit_views" id="content_views">
                                        <p>&nbsp; &nbsp;<span style="font-size:18px;"><a class="replace_word" title="Linux知识库" href="http://lib.csdn.net/base/linux" rel="nofollow" style="font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;margin:0px;padding:0px;color:rgb(7,93,179);text-decoration:underline;">Linux</a><span style="background-color:rgb(254,254,242);color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;">系统一般有4个主要部分:</span></span></p><p></p><p style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-size:13px;font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><span style="margin:0px;padding:0px;">内核、shell、文件系统和应用程序</span>。内核、shell和文件系统一起形成了基本的<a class="replace_word" title="操作系统知识库" href="http://lib.csdn.net/base/operatingsystem" rel="nofollow" style="margin:0px;padding:0px;color:rgb(7,93,179);text-decoration:underline;">操作系统</a>结构,它们使得用户可以运行程序、管理文件并使用系统。部分层次结构如图1-1所示。</p><p style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-size:13px;font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;&nbsp;&nbsp;&nbsp;<br></p><p><img src="https://img-blog.csdn.net/20180524222515956?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thaV96b25l/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""></p><p><br></p><p></p><p class="headline-1 bk-sidecatalog-title" style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><span style="font-size:18px;">&nbsp;1. linux内核</span></p><p style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-size:13px;font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp;&nbsp; &nbsp;内核是操作系统的核心,具有很多最基本功能,它负责管理系统的进程、<a class="bluekey" href="http://product.yesky.com/catalog/219/" rel="nofollow" style="margin:0px;padding:0px;color:rgb(7,93,179);text-decoration:underline;">内存</a>、设备<a class="bluekey" href="http://drivers.yesky.com/" rel="nofollow" style="margin:0px;padding:0px;color:rgb(7,93,179);text-decoration:underline;">驱动</a>程序、文件和<a class="bluekey" href="http://product.yesky.com/net/" rel="nofollow" style="margin:0px;padding:0px;color:rgb(7,93,179);text-decoration:underline;">网络</a>系统,决定着系统的性能和稳定性。</p><p style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-size:13px;font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp;Linux 内核由如下几部分组成:内存管理、进程管理、设备驱动程序、文件系统和网络管理等。如图:</p><p style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-size:13px;font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br></p><p style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-size:13px;font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="https://img-blog.csdn.net/20180524222558542?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thaV96b25l/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-size:13px;font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><br></p><p style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"></p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><span style="margin:0px;padding:0px;">系统调用接口:</span>SCI 层提供了某些机制执行从用户空间到内核的函数调用。这个接口依赖于体系结构,甚至在相同的处理器家族内也是如此。SCI 实际上是一个非常有用的函数调用多路复用和多路分解服务。在 ./linux/kernel 中您可以找到 SCI 的实现,并在 ./linux/arch 中找到依赖于体系结构的部分。</p><h3 style="font-size:16px;margin-top:10px;margin-bottom:10px;padding:0px;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><a name="t0"></a><a style="margin:0px;padding:0px;"></a>&nbsp; &nbsp;<span style="margin:0px;padding:0px;">1.&nbsp;内存管理&nbsp;</span></h3><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp; 对任何一台计算机而言,其内存以及其它资源都是有限的。为了让有限的物理内存满足应用程序对内存的大需求量,Linux &nbsp;采用了称为“虚拟内存”的内存管理方式。Linux &nbsp;将内存划分为容易处理的“内存页”(对于大部分体系结构来说都是 4KB)。Linux 包括了管理可用内存的方式,以及物理和虚拟映射所使用的硬件机制。</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">  &nbsp; &nbsp;不过内存管理要管理的可不止 4KB 缓冲区。Linux 提供了对 4KB 缓冲区的抽象,例如 slab 分配器。这种内存管理模式使用 4KB 缓冲区为基数,然后从中分配结构,并跟踪内存页使用情况,比如哪些内存页是满的,哪些页面没有完全使用,哪些页面为空。这样就允许该模式根据系统需要来动态调整内存使用。<br style="margin:0px;padding:0px;">   为了支持多个用户使用内存,有时会出现可用内存被消耗光的情况。由于这个原因,页面可以移出内存并放入磁盘中。这个过程称为交换,因为页面会被从内存交换到硬盘上。内存管理的源代码可以在 ./linux/mm 中找到。</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><h3 style="font-size:16px;margin-top:10px;margin-bottom:10px;padding:0px;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><a name="t1"></a><a style="margin:0px;padding:0px;"></a>&nbsp; &nbsp;<span style="margin:0px;padding:0px;">&nbsp;2 .进程管理<br style="margin:0px;padding:0px;"></span></h3><span style="font-size:13px;margin:0px;padding:0px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp;进程实际是某特定应用程序的一个运行实体</span><span style="font-size:13px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">。在 Linux &nbsp;系统中,能够同时运行多个进程,Linux &nbsp;通过在短的时间间隔内轮流运行这些进程而实现“多任务”。这一短的时间间隔称为“时间片”,让进程轮流运行的方法称为“进程调度” ,完成调度的程序称为调度程序。</span><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp;<span style="margin:0px;padding:0px;">进程调度</span>控制进程对CPU的访问。当需要选择下一个进程运行时,由调度程序选择最值得运行的进程。可运行进程实际上是仅等待CPU资源的进程,如果某个进程在等待其它资源,则该进程是不可运行进程。Linux使用了比较简单的基于优先级的进程调度<a class="replace_word" title="算法与数据结构知识库" href="http://lib.csdn.net/base/datastructure" rel="nofollow" style="margin:0px;padding:0px;color:rgb(7,93,179);text-decoration:underline;">算法</a>选择新的进程。&nbsp;</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp; 通过多任务机制,每个进程可认为只有自己独占计算机,从而简化程序的编写。每个进程有自己单独的地址空间,并且只能由这一进程访问,这样,操作系统避免了进程之间的互相干扰以及“坏”程序对系统可能造成的危害。&nbsp;为了完成某特定任务,有时需要综合两个程序的功能,例如一个程序输出文本,而另一个程序对文本进行排序。为此,操作系统还提供进程间的通讯机制来帮助完成这样的任务。Linux 中常见的进程间通讯机制有信号、管道、共享内存、信号量和套接字等。&nbsp;</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp;内核通过 SCI 提供了一个应用程序编程接口(API)来创建一个新进程(fork、exec 或 Portable Operating System Interface [POSⅨ] 函数),停止进程(kill、exit),并在它们之间进行通信和同步(signal 或者 POSⅨ 机制)。</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><h3 style="font-size:16px;margin-top:10px;margin-bottom:10px;padding:0px;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><a name="t2"></a><a style="margin:0px;padding:0px;"></a>&nbsp; &nbsp;<span style="margin:0px;padding:0px;">&nbsp;3. 文件系统&nbsp;</span></h3><span style="font-size:13px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp;和 DOS 等操作系统不同,Linux 操作系统中单独的文件系统并不是由驱动器号或驱动器名称(如 A: &nbsp;或 C: &nbsp;等)来标识的。相反,和 UNIX &nbsp;操作系统一样,Linux 操作系统将独立的文件系统组合成了一个层次化的树形结构,并且由一个单独的实体代表这一文件系统。Linux &nbsp;将新的文件系统通过一个称为“挂装”或“挂上”的操作将其挂装到某个目录上,从而让不同的文件系统结合成为一个整体。Linux &nbsp;操作系统的一个重要特点是它支持许多不同类型的文件系统。Linux 中最普遍使用的文件系统是 Ext2,它也是 Linux &nbsp;土生土长的文件系统。但 Linux &nbsp;也能够支持 FAT、VFAT、FAT32、MINIX 等不同类型的文件系统,从而可以方便地和其它操作系统交换数据。由于 Linux &nbsp;支持许多不同的文件系统,并且将它们组织成了一个统一的虚拟文件系统.</span><br style="margin:0px;padding:0px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;font-size:13px;text-align:left;background-color:rgb(254,254,242);"><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp;&nbsp;<span style="margin:0px;padding:0px;">&nbsp; &nbsp;虚拟文件系统(VirtualFileSystem,VFS):</span>隐藏了各种硬件的具体细节,把文件系统操作和不同文件系统的具体实现细节分离了开来,为所有的设备提供了统一的接口,VFS提供了多达数十种不同的文件系统。虚拟文件系统可以分为逻辑文件系统和设备驱动程序。逻辑文件系统指Linux所支持的文件系统,如ext2,fat等,设备驱动程序指为每一种硬件控制器所编写的设备驱动程序模块。&nbsp;</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp;虚拟文件系统(VFS)是 Linux 内核中非常有用的一个方面,因为它为文件系统提供了一个通用的接口抽象。VFS 在 SCI 和内核所支持的文件系统之间提供了一个交换层。即VFS 在用户和文件系统之间提供了一个交换层。</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><h5 style="font-size:12px;margin-top:10px;margin-bottom:10px;padding:0px;color:rgb(51,51,51);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><a style="margin:0px;padding:0px;"></a>VFS &nbsp; &nbsp; &nbsp; &nbsp; 在用户和文件系统之间提供了一个交换层:</h5><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp;<img src="https://img-blog.csdn.net/20160518101853198" alt="" style="padding:0px;border:0px;max-width:900px;"><br style="margin:0px;padding:0px;">  在 VFS 上面,是对诸如 open、close、read 和 write 之类的函数的一个通用 API 抽象。在 VFS 下面是文件系统抽象,它定义了上层函数的实现方式。它们是给定文件系统(超过 50 个)的插件。文件系统的源代码可以在 ./linux/fs 中找到。<br style="margin:0px;padding:0px;">  文件系统层之下是缓冲区缓存,它为文件系统层提供了一个通用函数集(与具体文件系统无关)。这个缓存层通过将数据保留一段时间(或者随即预先读取数据以便在需要是就可用)优化了对物理设备的访问。缓冲区缓存之下是设备驱动程序,它实现了特定物理设备的接口。<br style="margin:0px;padding:0px;">&nbsp; &nbsp; &nbsp; 因此,用户和进程不需要知道文件所在的文件系统类型,而只需要象使用 Ext2 &nbsp;文件系统中的文件一样使用它们。</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><h3 style="font-size:16px;margin-top:10px;margin-bottom:10px;padding:0px;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><a name="t3"></a><a style="margin:0px;padding:0px;"></a>&nbsp; &nbsp;<span style="margin:0px;padding:0px;">&nbsp;&nbsp;4. 设备驱动程序&nbsp;</span></h3><span style="font-size:13px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; 设备驱动程序是 Linux &nbsp;内核的主要部分。和操作系统的其它部分类似,设备驱动程序运行在高特权级的处理器环境中,从而可以直接对硬件进行操作,但正因为如此,任何一个设备驱动程序的错误都可能导致操作系统的崩溃。设备驱动程序实际控制操作系统和硬件设备之间的交互。设备驱动程序提供一组操作系统可理解的抽象接口完成和操作系统之间的交互,而与硬件相关的具体操作细节由设备驱动程序完成。一般而言,设备驱动程序和设备</span><br style="margin:0px;padding:0px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;font-size:13px;text-align:left;background-color:rgb(254,254,242);"><span style="font-size:13px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">的控制芯片有关,例如,如果计算机硬盘是 SCSI &nbsp;硬盘,则需要使用 SCSI &nbsp;驱动程序,而不是 IDE 驱动程序。&nbsp;</span><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><h3 style="font-size:16px;margin-top:10px;margin-bottom:10px;padding:0px;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><a name="t4"></a><a style="margin:0px;padding:0px;"></a>&nbsp; &nbsp;<span style="margin:0px;padding:0px;">&nbsp;5.网络接口(NET)&nbsp; &nbsp;</span></h3><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp; &nbsp; &nbsp; &nbsp;提供了对各种网络标准的存取和各种网络硬件的支持。网络接口可分为网络协议和网络驱动程序。网络协议部分负责实现每一种可能的网络传输协议。众所周知,TCP/IP &nbsp;协议是 Internet &nbsp;的标准协议,同时也是事实上的工业标准。Linux &nbsp;的网络实现支持 BSD 套接字,支持全部的TCP/IP协议。Linux内核的网络部分由BSD套接字、网络协议层和网络设备驱动程序组成。&nbsp;<br style="margin:0px;padding:0px;">&nbsp; &nbsp; 网络设备驱动程序负责与硬件设备通讯,每一种可能的硬件设备都有相应的设备驱动程序。</p><h2 style="font-size:21px;margin-top:10px;margin-bottom:10px;padding:0px;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><a style="margin:0px;padding:0px;"></a></h2><p class="headline-1 bk-sidecatalog-title" style="margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><span style="font-size:18px;">2 . linux shell</span></p><span style="font-size:13px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行,是一个命令解释器。另外,shell编程语言具有普通编程语言的很多特点,用这种编程语言编写的shell程序与其他应用程序具有同样的效果。</span><br style="margin:0px;padding:0px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;font-size:13px;text-align:left;background-color:rgb(254,254,242);"><span style="font-size:13px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">目前主要有下列版本的shell。</span><br style="margin:0px;padding:0px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;font-size:13px;text-align:left;background-color:rgb(254,254,242);"><span style="font-size:13px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">1.Bourne Shell:是贝尔实验室开发的。  </span><br style="margin:0px;padding:0px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;font-size:13px;text-align:left;background-color:rgb(254,254,242);"><span style="font-size:13px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">2.BASH:是GNU的Bourne Again Shell,是GNU操作系统上默认的shell,大部分linux的发行套件使用的都是这种shell。</span><br style="margin:0px;padding:0px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;font-size:13px;text-align:left;background-color:rgb(254,254,242);"><span style="font-size:13px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">3.Korn Shell:是对Bourne SHell的发展,在大部分内容上与Bourne Shell兼容。    </span><br style="margin:0px;padding:0px;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;font-size:13px;text-align:left;background-color:rgb(254,254,242);"><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">4.C Shell:是SUN公司Shell的BSD版本。</p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><br></p><p style="font-size:13px;margin:10px auto;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);">&nbsp;</p><div style="font-size:13px;"><br></div><h2 style="font-size:21px;margin-top:10px;margin-bottom:10px;padding:0px;line-height:1.5;color:rgb(0,0,0);font-family:Verdana, Arial, Helvetica, sans-serif;text-align:left;background-color:rgb(254,254,242);"><a style="margin:0px;padding:0px;"></a></h2><br><br><p><br></p><p><br></p><p><br></p>                                    </div>
                </div>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值