网站大量收购独家精品文档,联系QQ:2885784924

(浅谈Linux相关技术及发展前景.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(浅谈Linux相关技术及发展前景

浅谈Linux相关技术及发展前景 2009201124 王欢 摘 要 Linux从1991年问世到现在,短短的十几年时间已经发展成为功能强大、设计完善的操作系统之一;可运行在 X86、Alpha、Sparc、MIPS、PPC、Motorola、NEC、ARM等多种硬件平台,而且开放源代码,可以定制;可与各种传统的商业操 作系统分庭抗争。学习linux以来,我接触了linux的部分相关技术,在本文中重点讨论的是linux的进程、嵌入式、和内核技术。并凭借自己理解和文献参考谈论了相应的发展趋势。感叹于IT界发展之快的同时,我们必须认清眼前情况,了解自身所需,从而正式每一次的选择,以走好生命中的每一步。 关键词:linux、发展、技术、进程、嵌入式、内核 1、引 言 近年来,随着计算Linux 进程中最知名的属性就是它的进程号(Process Idenity Number,PID)和它的父进程号(parent process ID,PPID)。PID、PPID都是非零正整数。一个PID惟一地标识一个进程。一个进程创建新进程称为创建了子进程(child process)。相反地,创建子进程的进程称为父进程。所有进程追溯其祖先最终都会落到进程号为1的进程身上,这个进程叫做init进程。是内核自举后 第一个启动的进程。init进程作用是扮演终结父进程的角色。因为init进程永远不会被终止,所以系统总是可以确信它的存在,并在必要的时候以它为参 照。如果某个进程在它衍生出来的全部子进程结束之前被终止,就会出现必须以init为参照的情况。此时那些失去了父进程的子进程就都会以init作为它们 的父进程。如果你执行一下ps -af 命令,可以列出许多父进程ID(Parent Process ID,PPID)为1的进程来。Linux提供了一条pstree命令,允许用户查看系统内正在运行的各个进程之间的继承关系。直接在命令行中输入 pstree即可,程序会以树状结构方式列出系统中正在运行的各进程之间的继承关系。 Linux下进程的结构 Linux中一个进程在内存里有三部份的数据,就是数据段,堆栈段和代码段,基于I386兼容的中央处理器,都有上述三种段寄存器,以方便操作系统的运行。见图-1。 图-1 Linux进程的结构 ????代码段,是存放了程序代码的数据,假如机器中有数个进程运行相同的一个程序,那么它们就可以使用同一个代码段。而数据段则存放程序的全局变量,常数以及动态 数据分配的数据空间。堆栈段存放的就是子程序的返回地址、子程序的参数以及程序的局部变量。堆栈段包括进程控制块PCB(Process Control Block)中。PCB处于进程核心堆栈的底部,不需要额外分配空间。 Linux进程的种类 Linux操作系统包括三种不同类型的进程,每种进程都有自己的特点和属性。  ??a) 交互进程--由一个shell启动的进程。交互进程既可以在前台运行,也可以在后台运行。 ??b) 批处理进程--这种进程和终端没有联系,是一个进程序列。 ??c) 监控进程(也称守护进程)--Linux系统启动时启动的进程,并在后台运行。 Linux进程的创建 在Linux下产生新的进程的系统调用就是fork函数,这个函数名是英文中分叉的意思。为什么取这个名字呢?因为一个进程在运行中,如果使用了fork,就产生了另一个进程,于是进程就分叉了,所以这个名字取得很形象。fock的语法: #include #include pid_t fork(); 说明:本系统调用产生一个新的进程, 叫子进程, 调用进程叫父进程。 在 Linux网络编程中经常用到fork()系统调用。例如一个客户机/Web服务器构建的网络环境中,Web服务器往往可以满足许多客户端的请求。如果一 个客户机如果需要访问Web服务器需要发送一个请求,此时由服务器生成一个父进程,然后父进程通过fork()系统调用产生一个子进程,此时客户机的请求 由子进程完成。父进程可以再度回到等待状态不断服务其他用户端。嵌入式Linux系统 嵌入式系统是以应用为中心,以计算机为基础,软硬件可裁剪,适用于系统对功能、可靠性、成本、功耗严格要求的专用计算机系统嵌入式Linux(Embedded Linux)是指对Linux经过裁剪小型化后,可固化在存储器或单片机中,应用于特定嵌入式场合的专用Linux操作系统。嵌入式Linux的开发和研 究已经成为目前操作系统领域的一个热点。 Torvalds的预测

文档评论(0)

junjun37473 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档