期刊问答网 论文发表 期刊发表 期刊问答

计算机操作系统毕业论文范文

  • 回答数

    6

  • 浏览数

    273

zww0825
首页 > 期刊问答网 > 期刊问答 > 计算机操作系统毕业论文范文

6个回答 默认排序1
  • 默认排序
  • 按时间排序

杨钦贺

已采纳
有一个诚梦计算机毕业设计,他们主要就是做这一类的,可以考虑下。

计算机操作系统毕业论文范文

261 评论(15)

吉大人

计算机病毒论文 计算机病毒是一个程序,一段可执行码。就像生物病毒一样,计算机病毒有独特的复制能力。计算机病毒可以很快地蔓延,又常常难以根除。它们能把自身附着在各种类型的文件上。当文件被复制或从一个用户传送到另一个用户时,它们就随同文件一起蔓延开来。 除复制能力外,某些计算机病毒还有其它一些共同特性:一个被污染的程序能够传送病毒载体。当你看到病毒载体似乎仅仅表现在文字和图象上时,它们可能也已毁坏了文件、再格式化了你的硬盘驱动或引发了其它类型的灾害。若是病毒并不寄生于一个污染程序,它仍然能通过占据存贮空间给你带来麻烦,并降低你的计算机的全部性能。 可以从不同角度给出计算机病毒的定义。一种定义是通过磁盘、磁带和网络等作为媒介传播扩散, 能“传染”其他程序的程序。另一种是能够实现自身复制且借助一定的载体存在的具有潜伏性、传染性和破坏性的程序。还有的定义是一种人为制造的程序, 它通过不同的途径潜伏或寄生在存储媒体(如磁盘、内存)或程序里。当某种条件或时机成熟时, 它会自生复制并传播, 使计算机的资源受到不同程序的破坏等等。这些说法在某种意义上借用了生物学病毒的概念, 计算机病毒同生物病毒所相似之处是能够侵入计算机系统和网络, 危害正常工作的“病原体”。它能够对计算机系统进行各种破坏, 同时能够自我复制, 具有传染性。所以, 计算机病毒就是能够通过某种途径潜伏在计算机存储介质(或程序)里, 当达到某种条件时即被激活的具有对计算机资源进行破坏作用的一组程序或指令集合。 与生物病毒不同的是几乎所有的计算机病毒都是人为地故意制造出来的, 有时一旦扩散出来后连编者自己也无法控制。它已经不是一个简单的纯计算机学术问题, 而是一个严重的社会问题了。 几年前,大多数类型的病毒主要地通过软盘传播,但是,因特网引入了新的病毒传送机制。随着现在电子邮件被用作一个重要的企业通信工具,病毒就比以往任何时候都要扩展得快。附着在电子邮件信息中的病毒,仅仅在几分钟内就可以侵染整个企业,让公司每年在生产损失和清除病毒开销上花费数百万美元。 今后任何时候病毒都不会很快地消失。按美国国家计算机安全协会发布的统计资料,已有超过10,000种病毒被辨认出来,而且每个月都在又产生200种新型病毒。为了安全,我们说大部分机构必须常规性地对付病毒的突然爆发。没有一个使用多台计算机的机构,可以是对病毒免疫的。 计算机病毒是在什么情况下出现的? 计算机病毒的产生是计算机技术和以计算机为核心的社会信息化进程发展到一定阶段的必然产物。它产生的背景是: (1)计算机病毒是计算机犯罪的一种新的衍化形式 计算机病毒是高技术犯罪, 具有瞬时性、动态性和随机性。不易取证, 风险小破坏大, 从而刺激了犯罪意识和犯罪活动。是某些人恶作剧和报复心态在计算机应用领域的表现。 (2)计算机软硬件产品的危弱性是根本的技术原因 计算机是电子产品。数据从输入、存储、处理、输出等环节, 易误入、篡改、丢失、作假和破坏;程序易被删除、改写;计算机软件设计的手工方式, 效率低下且生产周期长;人们至今没有办法事先了解一个程序有没有错误, 只能在运行中发现、修改错误, 并不知道还有多少错误和缺陷隐藏在其中。这些脆弱性就为病毒的侵入提供了方便。 (3)微机的普及应用是计算机病毒产生的必要环境 1983年11月3日美国计算机专家首次提出了计算机病毒的概念并进行了验证。几年前计算机病毒就迅速蔓延, 到我国才是近年来的事。而这几年正是我国微型计算机普及应用热潮。微机的广泛普及, 操作系统简单明了, 软、硬件透明度高, 基本上没有什么安全措施, 能够透彻了解它内部结构的用户日益增多, 对其存在的缺点和易攻击处也了解的越来越清楚, 不同的目的可以做出截然不同的选择。目前, 在IBM PC系统及其兼容机上广泛流行着各种病毒就很说明这个问题。 计算机病毒的来源有哪些? (1)搞计算机的人员和业余爱好者的恶作剧、寻开心制造出的病毒, 例如象圆点一类的良性病毒。 (2)软件公司及用户为保护自己的软件被非法复制而采取的报复性惩罚措施。因为他们发现对软件上锁, 不如在其中藏有病毒对非法拷贝的打击大, 这更加助长了各种病毒的传播。 (3)旨在攻击和摧毁计算机信息系统和计算机系统而制造的病毒----就是蓄意进行破坏。例如1987年底出现在以色列耶路撒冷西伯莱大学的犹太人病毒, 就是雇员在工作中受挫或被辞退时故意制造的。它针对性强, 破坏性大, 产生于内部, 防不胜防。 (4)用于研究或有益目的而设计的程序, 由于某种原因失去控制或产生了意想不到的效果。 参考资料: 还有很多: 自己看吧
219 评论(15)

zyll125230

操作系统课程设计报告  一. 简介  Linux系统是从UNIX发展来的。UNIX是世界上最流行的操作系统之一,它是一种实时操作系统,可以运行于大型和小型计算机上的多任务系统。但由于它比较庞大,而且价格昂贵,所以不适合PC机用户使用。而Linux正好弥补了这些缺点,同时还继承了UNIX大多数优点。由于它基于PC机上运行的操作系统,并且内核源代码是公开的,使得Linux成为时下最浒的操作系统。Linux是一种适用于PC机的计算机操作系统,它适合于多种平台,是目前唯一免费的非商品化操作系统。由于有结构清晰、功能强大等特点,它很快成为许多院校学生和科研机构的研究人员学习和研究的对象。在他们的热心努力下,Linux渐渐成为一个稳定可靠、功能完善的操作系统。Linux是由UNIX发展来的,它不仅继承了UNIX操作系统的特征,而且许多方面还超过了UNIX系统。另外它还有许多UNIX所不具有的优点和特征。它的源代码是开放的,可运行于许多硬件平台 ,支持多达32种文件,支持大量的外部设备等。 Linux有广泛的用处,它可用于:   个人UNIX工作站。   终端用户和应用服务器。   UNIX开发平台。   商业开发。   网络服务器。   Internet服务器。   终端服务器、传真服务器、Modem服务器。  二、Linux系统下C编程原理  1. Linux系统的主要优异性能   Linux系统是真正的爽用户。多任务、多平台操作系统。   Linux系统提供提供具有内置安全措施的分层的文件系统,支持多达32种文件系统。   Linux系统提供命令解释程序和编程语言。   Linux系统提供强大的管理功能。   Linux系统具有内枋的编程接口。   Linux系统具有图形用户接口。   Linux系统许多组成部分的源代码是开放的,任何人都能修改和重新发布它。   Linux系统不公可以运行许多自由发布的应用软件,还可以运行许多商业化的应用软件。  2. Linux系统的主要构成   存储管理  在Linux中,每一个进程都有一个比实际物理空间大得多的进程虚拟空间,每个进程还保留一张页表,用于将本进程空间中的虚地址变换成物理地址,页表还对物理页的访问权限作了规定,从而达到存储保护的目的。   进程管理  在Linux中,进程是资源分配的基本单位,所有资源都是以进程为对象进行分配的,在一个进程的生命周期中,会用到许多系统资源,Linux的设计可以准确描述进程的状态和资源的使用情况,以确保不出现某些进程过度占用系统资源而导致另一些进程无休止地等待的情况。   文件系统  Linux最重要的特征之一就是支持多种不同的文件系统。在Linux中,一个分离的文件系统不是通过设备标志来访问,而是把它合到一个单一的目录树结构中去,通过目录访问。Linux把一个新的文件系统安装到系统单一目录树的某一目录下,则该目录下的所有内容被新安装的文件系统所覆盖,当文件系统被卸下后,安装目录下的文件将会被重新恢复。   进程间通信  Linux提供多种进程间的通信机制,管道和信号是其中最基本两种,其他还有消息队列、信号灯及共享内存。为支持不同机器之间的进程通信,Linux还引入了机制。  3. gcc编译器的使用  在Linux开发环境下,gcc是进行程序开发不可或缺的编译工具,是GUN C Compile的缩写,它是在GUN系统下的标准C编译器。gcc作为Linux平台下的标准C编译器,功能强大。人们可以使用gcc编译器编译单一文件的最基本的命令,正是有了gcc编译器人们才能使用它编译C源程序。  gcc的完整格式是gcc [options] [filenames] ,编译选项指定的操作对给定的文件进行编译处理。在后面可以有多个编译选项,同时进行多个编译操作。  三、总体设计  下面介绍Linux系统中的文件以及与文件有关的操作。在C编程环境中,与文件有关的操作主要是I/O操作,即基于文件描述符的操作。此外,还将介绍其他一些与文件有关的操作。  在Linux系统中,有关的I/O操作可以分为两类。它们是基于文件描述符的I/O操作和基于流I/O的操作。它们有各自不同的特点和优势。基于文件描述符的I/O操作是通过文件描述符对一个文件执行I/O操作的。文件是一个十分重要的概念。通常保存在外存中的数据都是以文件的形式保存的。文件描述符则是用于描述被打开文件的索引值。通常情况下,都是通过文件描述符打开一个文件执行I/O操作。  文件和文件系统是重要而复杂的概念。文件是有名字的一组相关信息的集合。在Linux系统中,文件的准确定义是不包含有任何其他结构的字符流。通俗的说,就是文件中的字符与字符之间除了同属于一个文件之外,不存在任何其他的关系。文件中字符的关系,是由使用文件的应用程序来建立各解释的。每一个文件都具有特定的属性。Linux系统的文件属性比较复杂,主要包括文件类型和文件权限两个方面。  1.文件类型  Linux下的文件可以分为5种不同的类型 。它们是普通文件、目录文件、链接文件、设备文件和管道文件。  (1)、普通文件  普通文件也称正规文件,是最常见的一类文件,也是最常使用到的一类文件。其特点是不包含有文件系统的结构信息。通常所接触到的文件,包括图形文件、数据文件、文档文件、等等都属于普通文件。这种类型的文件按其内部结构又可细分为两个文件类型:文本文件和二进制文件。  (2)、目录文件  目录文件是用于存放文件名及其相关信息的文件。是内核组织文件系统的基本节点。目录文件可以包含下一级目录文件或普通文件。  (3)、链接文件  链接文件是一种特殊的文件。它实际上是指向一个真实存在的文件的链接。根据链接对象的不同,链接文件又可以细分为硬链接文件和符号链接文件。  (4)、设备文件  设备文件是Linux中最特殊的文件。正是由于它的存在,使得Linux系统可以十分方便地访问外部设备。Linux系统为外部设备提供一种标准接口,将外部设备视为一种特殊的文件。用户可以像访问普通文件一样访问外部设备。这就使Linux系统可以很方便的适应不断发展的外部设备。  (5)、管道文件  管道文件也是一种很特殊的文件。主要用于不同进程间的信息传递。当两个进程间需要进行数据或信息传递时,可以通过管道文件。一个进程将需传递的数据或信息写入管道的一端,另一进程则从管道的另一端取得所需的数据或信息。  2.进程基本介绍  在Linux环境下,进程是一个十分重要的概念。按现在通行的认识,进程是具有一定功能的程序关于一个数据集合的一次执行过程。对一个特定程序来说,它的每一个正在运行中的副本都有自己的进程。就是说,如果用户在一个进程的一次运行尚未结束时再次启动该程序,则将有两个进程在运行这一程序。多个进程可以同时运行,各个进程之间相互隔开,除非不同进程之间需要进行数据交换,否则互不影响。  一个进程的存在过程,可以分为进程的产生、进程的执行和进程的结束3个步骤。当一个程序被启动时,就产生一个新的进程。进程在系统内核的管理下得到执行。当某个进程执行完毕后,该进程就消亡了。  Linux系统支持多个进程同时进行。所谓同时,其实是Linux系统在各个进程之间调度,轮流是每个进程占用CPU 的一个时间片。由于每个时间片和宏观的时间相比很小,而每个进程可以频繁的得到时间片,于是就使用户看到了多个进程“同时”运行的情况。在每个进程属性的安全信息里都设有一个优先级,系统根据它来决定各个进程从CPU获得的时间片的大小。  用户在执行一个程序以完成一定的功能时,为了提高程序执行的效率,可以把一个程序设计成由若干个部分组成,由若干个部分组成,由若干个进程同时执行。这就是所谓并发程序的概念。此外,不同进程之间可能会需要相互合作,即进程通信和进程同步。  当然,多个进程并不需要同上时间产生并都维持到整个程序运行结束。用户可以根据需要动态地产生结束进程。也就是说,一个进程可以派生另一个进程,这就是所谓父进程和了进程的关系。  每个进程都有各自的属性,其中包括了进程的详细信息。  库的使用  代码的重用性是当代计算机编程语言中一个重要的概念,可以把编译好的目标文件模块统一放到一个库中,使得程序员可以在不同的程序中共享这些代码。  在操作系统中,最终链接生成可执行文件时,如果链接的是一般的文件,则  整个文件的内容都会被装入可执行文件中;如果链接的是库,则只是从库存中找到程序中用到的变量和数,将它们装入可执行文件中,那些放在库中但是没有被程序所引用的变量和数则不会被链接到最终的可执行文件。  所以,使用库可以节省在大量的开发时间,在写较大的程序时,最好把程序  模块放在库中。  对于任何典型的操作系统命令都由简单命令、参数、输入文件名、输出文件名、I/O重定向文件名等组成。(关于以上术语的数据字典见下表)  以命令 gcc –ggdb3 –o moon 为例:  数据字典一:  术语 说明  简单命令 一个Linux长命令可以有多个像gcc,more等这样的纯命令组成。其中每个纯命令如gcc,more就是这里说的简单命令  参数 范例命令中的-g,-o就是参数,它们是命令的扩展,可以根据用户的不用需要提供相应的不同服务  输入文件名 范例命令中的就是输入文件名,它相当于一个源文件,在文件的连接和复制的命令中也常常用到这样的文件  输出文件名 范例命令中的moon就是输出文件名,它相当与一个目标文件,在文件的连接和复制的命令中也常常用到这样的文件  I/O重定向文件名 在Linux系统中所有的设备都被看作文件进行管理,I/O文件(设备)作为输出的目标时是可以根据用户的需要进行调整的,I/O重定向文件名就是用来指定I/O文件(设备)名的  模块说明:  模块名称 功能说明  总控模块  main() 该模块调用其他模块实现命令解释功能,保证无论命令执行成功与否都在命令执行后返回命令提示符  命令初始化模块  init_command() 使用singnal函数对进程进行处理,达到初始化命令的效果  命令行输入  get_comln() 该模块接受用户键盘输入的所有字符并存入相应的字符数组,供其他模块使用  分析简单命令个数  get_simcom() 该模块对用户键盘输入的长命令进行分析并最终将长命令分割成数据字典一中的元素,存入相应的结构数组,供执行模块执行  执行指令  execute() 对各种的数据字典一中的元素进行最后的处理,完成区分前后台程序,封锁、开启键盘等功能  分析简单命令  get_simarg() 对简单命令进行分割,为执行模块提供最直接的信息  得到下一个标志符  get_word() 该过程用来记录输入文件名、输出文件名、I/O重定向并存入相应的结构数组  查看字符串是否匹配  check() 用来区分长命令中各个数据字典一中的元素的标准,为分割长命令提供参考信息  执行简单命令  run_com() 该模块与操作系统底层联系,使用系统调用完成各个简单命令的最终执行  程序初始化  init_once() 对程序中用到的所有变量和数据结构进行初始化  模块图:  四.详细设计  /*执行输入命令的文件*/  execute(int j)  {  int m,fd,fds[2]; /*fd 文件描述符号*/  if(infile[0]!=’0’)  /*如果命令指定了输入文件则打开输入文件*/  cmdlin[0]infd=open(infile,O_RDONLY);  if(outfile[0]!=’/0’)  /*如果命令指定了输出文件则打开相应的输出文件*/  if(append= =FLASE)  cmdlin[j-1]utfd=open(outfile,O_WRONLYIO_CREATIO_TRUNC,0666);  /*本句意思:一个已只读方式打开某指定文件的函数,如果该文件不存在*/  /*则创建此文件,如果该文件存在则将文件长度截至0*/  else  cmdlin[j-1]utfd=open(outfile,O_WRONLYIO_CREATIO_APPEND,0666);  /*对前台进程和后台进程进行不同的处理*/  if(background)  /*当一个进程结束时系统将产生一个SIGCHIOD信号通知其父进程*/  signal(SIGCHLD,SIG_IGN);  else  signal(SIGCHLD,SIG_DFL);  /*循环执行每个简单命令*/  for(m=0;minfd= =0&&background= =TRUE)  /* O_RDONLY 在设备文件中有一个极其特殊的文件/dev/null 所有放入这一设备*  /*的数据都将不在存在,可以将它看成是删除操作*/  ptr->infd=open(“/dev/null, O_RDONLY);  /*对输入进行重定向*/  if (ptr->infd!=0)  {  close(0);  /*dup是复制文件描述符,也就是说新得到的文件描述符和原来的文件描述符将*/  /*共同指向一个打开的文件*/  dup(ptr->infd);  }/dev/null  /*对输入进行重定向*/  if(ptr->outfd!=1)  {  close(1);  dup(ptr->outfd);  }  /*前台进程可以接受键盘输入的中断和退出信号*/  if(background= =FALSE)  {  /*信号都有自己特定的名字,都以SIG开头*/  singnal(SIGINT,SIG_DFL);  /*SIG_DFL表示调用系统定义的缺省处理*/  singnal(SIGQUIT,SIG_DFL);  }  /*关闭其他文件描述符,使得除了标准输入标准输出和错误输出两处设置的管道和I/O重定向*/  for(k=3; k>OPEN_MAX; ++k)  close(k);  /*下面代码执行一条简单命令*/  /*进程控制execvp函数可装入并运行称为子进程的其他的可执行文件称为父进程的*/  /*execvp函数调用成功时,子进程便覆盖父进程*/  execvp(ptr->av[0],ptr->av);  exit(1);  }  }  五、测试  即使是最优秀的程序员也不可避免在编程时出现一些这样那样的错误。所有的程序在写好以后,都要经过测试,在调试过程中发现并改正程序中的错误。  Gdb就是Linux下的一个功能强大的C程序的调试器,它能在程序运行时观察程序的内部结构和内存的使用情况。我们的测试就是通过gdb进行的。  测试计划:  监视程序中变量的变化  设置断点,使程序在指定的代码行上暂停执行,便于观察。  单步执行代码;  分析崩溃程序产生册core文件。  六、自我评价:  通过本次课程设计,我更加深刻的理解了大型软件(比如操作系统)结构的复杂和精巧。以及自己在软件编程中的巨大差距。在本次课程实践中我的收获有三点:  第一, 明确了大型程序在构架和整体布局上是何其严格和规整。  第二, 第二明确了多个模块在互相调用中程序的复杂程度以及算法设计的失误在实际编码中带来的巨大麻烦。  第三, 在本次编写程序的过程中深切的感受到了“团队精神”在软件开发中的重要作用,以及协调工作的重要性和高效性。  总之, 在这次课程设计中,我觉得自己得到了很大的进步,非常感谢老师为我们提供的这次机会。  你看看吧 希望你能用的上!!
338 评论(15)

解矛盾-冰

我还是建议你自己看看汉斯的(计算机科学与应用)期刊上的文献吧,别人给现成的论文估计是不大可能
321 评论(13)

253exq

这类范文在计算机科学与应用这本期刊上有很多的,你自己去找找吧
154 评论(13)

言不由衷的笑

你参照着写一下就行了计算机毕业设计(合集一)_html计算机毕业设计(合集二)_html计算机毕业设计(合集三)_html计算机毕业设计(合集四)_html计算机毕业设计(合集五)_html
171 评论(13)

相关问答