《操作系统》、《数据结构》、《计算机网络》这三门专业课在计算机专业学习中的作用
摘要:计算机系统是由硬件和软件两部分组成,如果硬件是计算机的经济基础,那么软件自然就是计算机的上层建筑。《计算机组成原理》讲述的是计算机的硬件组成原理,《操作系统》讲述的是配置在计算机硬件上的第一层软件,而《计算机组成原理》和《操作系统》就组成了一台PC机,而《计算机网络》则是实现了一台台独立的PC机之间的联系,实现了PC机之间的数据共享,而计算机的最终任务就是数据的处理,而处理的这些数据有不同的《数据结构与算法》,不同的《数据结构与算法》决定了计算机处理数据的效率,从而提高硬件利用率。他们就组成了计算机技术中最核心最基础的知识。本文论述计算机软件系统部分,并谈谈《操作系统》、《数据结构》、《计算机网络》这三门专业课在计算机专业学习中的作用。
关键词:软件 操作系统 计算机网络 数据结构
正文:
一 《操作系统》在计算机专业学习中的作用
为什么要学习操作系统
从用户,也就是大多数的手机和电脑的使用者的角度来说,如果你对操作系统感兴趣,学习它不仅会给你带来乐趣,而且当你遇到一些计算机故障问题的时候,也许你就会知道究竟是那里出了问题,我该如何去解决。这岂不是一件很棒的事情吗!当然如果你不感兴趣,了解操作系统,会帮助更好的使用你的操作系统。就比如:为啥新的电脑系统要先安装好各种驱动后,才能正常使用?为啥内存不足就无法安装我想用的软件?等等这些问题都会随着你对操作系统的了解而迎刃而解。
操作系统特别有用。倘若没有操作系统,不仅对我们日常生活会有极大影响,对于学习计算机的我们恐怕也是一个巨大的挑战。想想屏幕上除了命令行就是黑乎乎的,打开一个软件还得敲一大串代码, 这是多么麻烦的一件事呀。因此倘若我们学好了操作系统,也许我们就能对我们当前使用的操作系统进行优化,满足我们更多的需求,或者自己写出一个操作系统来,这都是有可能的。
操作系统很有挑战。操作系统的实现尤为复杂,光是Windows XP就足有4500万行代码。而且操作系统里面的关系也是错综复杂的,也就是说它有点像一个未知的小世界,倘若你能了解这个世界的组成,也许你就能成为这个世界的主宰,虽然这个过程极具挑战,但是也正因如此,才给它带来了无限的魅力。
操作系统很酷。其实我一直觉的计算机的出现就是一件很酷的事。想想一堆堆冷冰冰的零件,竟然能组成这样一个既能显示,计算,甚至智能的东西来,是一件多么令人惊奇的事情。而计算机操作系统则是这里面硬件和软件连接的重要组成,它赋予这些硬件以“生命”,让它们如活物一般运行,这是多么酷的事情呀!
什么是操作系统
操作系统(Operating System,简称OS)是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。
操作系统的目标
在计算机系统上配置的操作系统,其主要目的是:方便性、有效性、可扩充性和开放性。
1.方便性
未配置操作系统的计算机系统难以直接使用,因为此时对计算机系统的操作需要使用机器语言来完成;通过操作系统提供的各种命令来操作计算机极大方便了用户,似的计算机系统易学易用。
2.有效性
操作系统的有效性有两层含义:
第一层含义是提高系统资源的利用率。在未配置操作系统的计算机系统中,处理机和IO设备经常处于空闲状态,系统资源利用率地下。
第二层含义是提高系统的吞吐量。操作系统通过合理组织计算机的工作流程,加速程序的运行,缩短程序的运行周期以实现系统吞吐量的提高。
可以说,提高系统资源的利用率是推动OS发展的最重要动力。
方便性和有效性是设计OS时最重要的两个目标。由于以前计算机系统比较昂贵,有效性显得更为重要;现在随着硬件的高速发展,方便性越来越突出,比如微机操作系统中的图形用户界面以及为程序员提供的大量系统调用接口方便了计算机系统的使用者和开发者。
3.可扩充性
为了适应计算机硬件、计算机体系结构以及应用程序的发展,操作系统需要有很好的可扩充性。而可扩充性主要受操作系统结构的影响,因此提高操作系统的可扩充性在一定程度上促进了OS结构的不断发展:从早期的无结构到发展成模块化结构进而发展到层次化结构,现在OS广泛采用微内核结构。
微内核结构可以方便地添加、修改相应的功能和模块,具有良好的可扩充性。
4.开放性
计算机应用的日益普及,使得计算机软、硬件的兼容变得重要起来;随着操作系统的应用环境由单机环境转向网络环境,其开放性变得尤为重要。
所谓的开放性是指,系统遵守世界标准规范,特别是开放系统互联OSI国际标准,遵守国际标准开发软、硬件都可以彼此兼用,方便实现互联。
开放性是20世纪90年代后计算机技术的一个核心问题,也是衡量一个新系统能否被广泛应用的关键。
操作系统的作用
计算的操作系统对于计算机可以说是十分重要的,从使用者角度来说,操作系统可以对计算机系统的各项资源板块开展调度工作,其中包括软硬件设备、数据信息等,运用计算机操作系统可以减少人工资源分配的工作强度,使用者对于计算的操作干预程度减少,计算机的智能化工作效率就可以得到很大的提升。其次在资源管理方面,如果由多个用户共同来管理一个计算机系统,那么可能就会有冲突矛盾存在于两个使用者的信息共享当中。为了更加合理的分配计算机的各个资源板块,协调计算机系统的各个组成部分,就需要充分发挥计算机操作系统的职能,对各个资源板块的使用效率和使用程度进行一个最优的调整,使得各个用户的需求都能够得到满足。最后,操作系统在计算机程序的辅助下,可以抽象处理计算系统资源提供的各项基础职能,以可视化的手段来向使用者展示操作系统功能,减低计算机的使用难度。
二 《计算机网络》在计算机专业学习中的作用
为什么要学习计算机网络
21世纪的一些重要特征就是数字化、网络化和信息化,它是一个以网络为核心的信息时代。要实现信息化就必须依靠完善的网络,因为网络可以非常迅速地传递信息。因此,网络现在已经成为信息社会的命脉和发展知识经济的重要基础。
网络指“三网”即电信网络、有线电视网络和计算机网络。电信网络可向用户提供各种电视节目、电报及传真等服务。有线电视网络可向用户提供各种电视节目。计算机网络则可使用户能够迅速传送数据文件,以及从网络上查找并获取各种有用的资料,包括图像和视频文件。这三种网络在信息化过程中都起到了十分重要的作用,但其中发展最快的并起到核心作用的是计算机网络。另外,对于计算机网络的研究,对于其他网络有借鉴意义。(最主要的是使用了IP协议,这个协议是计算机能够发展这么快的核心)。
随着技术的发展,电信网络和有线电视网络都逐步融入了现代计算机网络的技术,这就产生了“网络融合”的概念。
自从上个世纪90年代以后,以因特网为代表的计算机网络得到了飞速的发展,已从最初的教育科研网络逐步发展成为商业网络,并已成为仅次于全球电话网的世界第二大网络。
计算机网络其实与电信网络和有线电视网络一样,都是一种通信基础设施,但与这两个网络最大的不同在于计算机网络的端设备是功能强大且具有智能的计算机。
什么是计算机网络
计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
计算机网络的作用
计算机网络向用户提供的最重要的功能有两个:(1)连通性 (2)共享
连通性就是计算机网络使上网用户之间都可以交换信息,好像这些用户的计算机都可以彼此直接连通一样,用户之间的距离也似乎越来越近。
共享就是指资源共享。
计算机网络也是向广大用户提供休闲娱乐的场所。当然,计算机网络也给人们带来了一些负面影响。即使如此,计算机网络的负面影响还是次要的。计算机网络给社会带来的积极作用仍然是主要的。
三 《数据结构》在计算机专业学习中的作用
为什么要学习数据结构
数据结构是计算机科学与技术专业、计算机信息管理与应用专业,电子商务等专业的基础课,是十分重要的核心课程。所有的计算机系统软件和应用软件都要用到各种类型的数据结构。因此,要想更好地运用计算机来解决实际问题,仅掌握几种计算机程序设计语言是难以应付当前众多复杂的课题。要想有效地使用计算机、充分发挥计算机的性能,还必须学习和掌握好数据结构的有关知识。打好“数据结构”这门课程的扎实基础,对于学习计算机专业的其他课程,如操作系统、数据库管理系统、软件工程、编译原理、人工智能、图视学等都是十分有益的。对这门课程知识点的掌握、应用和拓展,对编程能力的发展有着直接的影响。
《数据结构》课程是计算机专业中的一门专业基础必修课,但凡设置计算机专业的学校都开设此课程。该课程主要介绍和研究数据在计算机中的存储和处理方法,旨在培养学生分析数据、组织数据的能力,告诉学生如何编写效率高、结构好的程序。数据结构的研究不仅涉及到计算机硬件(特别是编码理论、存储装置和存取方法等)的研究范围,而且和计算机软件的研究有着更密切的关系,无论是编译程序还是操作系统,都涉及到数据元素在存储器中的分配问题。在研究信息检索时也必须考虑如何组织数据,以便查找和存取数据元素更为方便。因此,可以认为《数据结构》是介于数学、计算机硬件和计算机软件三者之间的一门核心课程,在计算机科学中,数据结构不仅是一般程序设计(特别是非数值计算的程序设计)的基础,而且是设计和实现编译程序、操作系统、数据系统及其他系统程序和大型应用程序的重要基础。《数据结构》课程的前导课程有:计算机基础、高等数学、一门程序设计语言(如C语言、PASCAL语言、C++语言、JAVA语言等)、微型计算机原理等,后续课程有操作系统、计算机网络技术、组网工程、JAVA程序设计、单片机原理与应用等。
《数据结构》课程在其他课程中的地位该课程中常见的数据结构已渗透于计算机专业的各门课程中。诸如:《操作系统》课程中涉及到“队列”和“树”数据结构的使用。即在进程管理中,进程调度的原则是从就绪队列中按照某种原则选取一个进程处于执行状态,其中有一种方法就是将各准备就绪的进程按先后顺序排成一个队列,然后按照先后顺序进行进程调度,这个原则中就是将各就绪进程按照“队列”这种数据结构进行组织并进行运算处理的。在文件管理中,文件的结构就是“树”型结构,对文件进行存储处理时,都将按照“树”这种结构进行。
《组网工程》课程中涉及到“栈”数据结构的使用。即计算机网络体系结构中的开放系统互连OSI参考模型有七层协议,这七层协议组成了协议栈。协议栈是指网络中各层协议的总和,其形象地反映了一个网络中文件传输的过程:由上层协议到底层协议,再由底层协议到上层协议。这个过程正是利用可“栈”先进后出的特点。
《单片机原理与应用》课程中也涉及到“栈”的应用。
在51单片机的存储器中开辟了一片堆栈区,用于子程序调用和中断操作。堆栈使用方法:1.调用子程序或中断时,返回地址(断点)自动进栈。程序返回时,断点再自动弹回PC。2.使用专用的堆栈操作指令进行进出栈操作。保护现场(push);恢复现场(pop)。
《数据结构》课程已渗透于计算机专业领域中的许多课程中,算法已不仅是程序设计的基础,而更多的是操作系统、编译原理、数据库管理系统、软件工程、人工智能等课程的基础。
程序=数据结构+算法
什么是数据结构
数据结构就是用来描述计算机里存储数据的一种数学模型,因为计算机里要存储很多乱七八糟的数据,所以也需要不同的数据结构来描述。
数据结构的作用
数据结构无处不在。
1.数据库,数据库就是使用了大量的数据结构。
2.操作系统,在制作操作系统过程中使用了很多数据结构,比如快速在多任务间切换就使用了栈、堆。
3.文件压缩,文件压缩就采用了树结构哈夫曼树。
4.游戏,游戏也是采用了大量的算法,大量的算法,都需要以数据结构为基石,就最简单的功能寻路,鼠标从A点到B点,这个角色就需要寻找一条从A点到B点的路,这条路还需要绕过所有的障碍物,甚至还需要找出最短的路径,这就是最经典的图论算法,那么在图论算法种就使用了大量的数据结构。
算法在我们的平时生活中到处用到,比如简单插入排序就和打扑克牌一样。