📌  相关文章
📜  AKTU 1年级第二学期解题纸2014-15 | COMP。系统和C编程|秒

📅  最后修改于: 2021-05-20 05:43:51             🧑  作者: Mango

论文下载链接:论文|第二学期| 2014-15

时间: 3小时
总分数:100

注意:-

  • 尝试所有问题。每个问题都带有标记。
  • 必要时假定合适的数据。

    1.尝试任意四个零件:(5 * 4 = 20)

  1. 绘制计算机系统的内存层次结构。简要说明每个存储单元。

    此内存层次结构设计分为两种主要类型:

    1. 外部存储器或辅助存储器–
      包括磁盘,光盘,磁带,即处理器可以通过I / O模块访问的外围存储设备。
    2. 内部存储器或主存储器–
      包括主内存,高速缓存内存和CPU寄存器。处理器可以直接访问。
  2. 什么是操作系统?描述操作系统的功能。计算机系统的基本目标是执行用户程序并简化任务。各种应用程序以及硬件系统均用于执行此工作。操作系统是一种软件,可以管理和控制整个资源集并有效利用计算机的每个部分。

    该图显示了OS如何充当硬件单元和应用程序之间的媒介。

    操作系统功能

    操作系统具有多种要执行的功能。操作系统的一些重要功能可以概括为:

    • 处理器管理:这涉及中央处理器(CPU)的管理。操作系统负责将CPU时间分配给不同的进程。当在指定的时间段内执行完某个进程后,该进程完成其CPU处理时,这称为调度。
    • 设备管理:
      操作系统与硬件和连接的设备进行通信,并在它们与CPU之间保持平衡。这一点更加重要,因为CPU处理速度远高于CPU处理速度。
      I / O设备。为了优化CPU时间,操作系统采用了两种技术-缓冲和假脱机。
    • 缓冲:
      在这种技术中,输入和输出数据被临时存储在输入缓冲区和输出缓冲区中。一旦用于输入或输出的信号分别发送到CPU或从CPU发送,操作系统将通过设备控制器将数据从输入设备移至输入缓冲区,并从输出设备移至输出缓冲区。在输入的情况下,如果缓冲区已满,则操作系统将信号发送到程序,该程序处理缓冲区中存储的数据。当缓冲区变空时,程序通知操作系统重新加载缓冲区,然后输入操作继续。
    • 假脱机(在线同时外围设备操作):
      这是一种用于在同一输入/输出设备上处理不同任务的设备管理技术。当网络上有多个用户共享同一资源时,可能有多个用户在同一时间向其发出命令。因此,操作系统将每个用户的数据临时存储在资源附加到的计算机的硬盘上。单个用户无需等待执行过程完成。而是操作系统将数据从硬盘一一发送到资源。
      示例:打印机
    • 内存管理:
      在计算机中,CPU和I / O设备都与内存交互。当需要执行程序时,它将程序加载到主存储器中,直到执行完成为止。此后,该存储空间将被释放并可用于其他程序。操作系统使用的常见内存管理技术是分区和虚拟内存。
    • 分区:
      总内存分为相同大小或不同大小的各种分区。这有助于容纳存储器中的程序数量。该分区可以是固定的,即对于内存中的所有程序都保持不变,也可以是可变的,即,当程序加载到内存时分配内存。后面的方法会减少内存浪费,但是在适当的时间段内,它可能会变得碎片化。
    • 虚拟内存:
      这是操作系统使用的一种技术,它允许用户加载大于计算机主内存的程序。在这种技术中,即使无法将完整程序加载到主存储器中,也会导致程序执行,从而提高了内存利用率。
    • 文件管理:
      操作系统管理计算机上的文件,文件夹和目录系统。计算机上的任何数据均以文件形式存储,并且操作系统使用文件分配表(FAT)保留所有数据的信息。 FAT存储有关文件的一般信息,例如文件名,类型(文本或二进制),大小,起始地址和访问模式(顺序/索引顺序/直接/相对)。操作系统的文件管理器有助于创建,编辑,复制,分配内存到文件,还可以更新FAT。操作系统还注意以适当的访问权限打开文件以读取或编辑它们。
  3. 描述编译器,解释器,汇编器?编写在C编程中使用的编译器的名称。语言处理器可以是以下三种类型中的任何一种:
    1. 编译器–
      一口气读取全部以高级语言编写的完整源程序并将其翻译成机器语言的等效程序的语言处理器称为编译器。
      示例: C,C++,C#, Java

      在编译器中,如果没有错误,则源代码将成功转换为目标代码。当源代码中有任何错误时,编译器会在编译结束时用行号指定错误。必须清除这些错误,然后编译器才能再次成功重新编译源代码。

    2. 汇编器–
      汇编程序用于将以汇编语言编写的程序转换为机器代码。源程序是包含汇编语言指令的汇编程序的输入。汇编器生成的输出是计算机可以理解的目标代码或机器代码。

    3. 口译员–
      将源程序的单条语句转换为机器代码是由语言处理器完成的,并在继续进行下一行之前立即执行它,这称为解释器。如果语句中有错误,解释器将在该语句中终止其翻译过程并显示错误消息。解释器仅在消除错误后才继续执行下一行。解释器直接执行以编程或脚本语言编写的指令,而无需事先将其转换为目标代码或机器代码。
      示例: Perl, Python和Matlab。

    C语言编译器的名称:

    • Microsoft Visual Studio社区
    • Xcode
    • Tiny C编译器(TCC)
    • GNU C编译器
  4. 您所说的算法是什么意思?解释算法的属性。算法”一词的意思是“在计算或其他解决问题的操作中要遵循的一个过程或一组规则”。因此,算法指的是一组规则/指令,它们逐步定义了如何执行工作才能获得预期的结果。

    算法的性质

    • 清晰明确:算法应清晰明确。它的每个步骤在所有方面都应该明确,并且只能导致一种含义。
    • 定义明确的输入:如果算法说要接受输入,则它应该是定义明确的输入。
    • 定义明确的输出:该算法必须明确定义将要产生的输出,并且也应定义明确。
    • 有限度:算法必须是有限的,即它不应以无限循环或类似形式结束。
    • 可行:该算法必须简单,通用且实用,以便可以根据可用资源执行该算法。它不得包含任何未来的技术或任何东西。
    • 与语言无关设计的算法必须与语言无关,即它必须只是可以用任何语言实现的简单指令,但输出将与预期的一样。
  5. 区分高级和机器级语言。高级语言几乎是人类语言。换句话说,这些是用比人类更容易理解的语言编写代码的语言。

    低级语言或机器级语言几乎是机器语言。换句话说,这些语言是用机器比人类更能理解的语言编写代码的。

  6. 什么是伪代码?通过示例区分流程图和算法。伪码:这是可用于表示程序算法的方法之一。它没有像任何编程语言一样的特定语法,因此无法在计算机上执行。有几种格式可用于编写伪代码,并且大多数格式都采用了诸如C,Lisp,FORTRAN等语言的结构