zoukankan      html  css  js  c++  java
  • 20155207第十章课下测试补交

    1、( 单选题 | 1 分)
    假设下面代码中的foobar.txt中有6个ASCII字母,程序的输出是()

    A .
    c = f

    B .
    c = o

    C .
    c = b

    D .
    c = 随机数

    正确答案: A

    p635 
    

    2、( 多选题 | 1 分)
    下面说法正确的是()

    A .
    Linux内核使用的file table 所有的进程共享的。

    B .
    不同进程打开同一个文件的文件描述符必须一样。

    C .
    使用dup2 把标准输入重定向到描述符7 dup2(7,0)

    D .
    使用dup2 把标准输入重定向到描述符7 dup2(0,7)

    E .
    ls > foo.txt 是输出重定向

    F .
    类型为FILE的流是对文件描述符和流缓冲区的抽象。

    正确答案: A C E F p637 p638

    dup2函数复制描述符表表项oldfd到描述符表表项newfd,覆盖描述符表表项newfd以前的内容。
    

    3、( 多选题 | 1 分)
    Linux内核用()表示打开的文件()

    A .
    描述符集

    B .
    文件表

    C .
    i-node表

    D .
    v-node表

    正确答案: A B D

    p634 内核用三个相关的数据结构来表示打开的文件:
    - 描述符表
    - 文件表
    - v-node表
    

    4、( 单选题 | 1 分)
    struct stat的()标识文件的类型。

    A .
    st_size

    B .
    st_type

    C .
    st_mode

    D .
    st_rdev

    正确答案: C

    st_mode第一位 p632
    

    5、( 单选题 | 1 分)
    struct stat的()与chmod相关

    A .
    st_nlink

    B .
    st_mode

    C .
    st_size

    D .
    st_uid

    正确答案: B

    我参考了这篇[部落格](http://blog.csdn.net/h002399/article/details/49783595)
    

    6、( 单选题 | 1 分)
    下面代码的输出是()

    A .
    fd2 = 0

    B .
    fd2 = 1

    C .
    fd2 = 2

    D .
    fd2 = 3

    E .
    fd2 = 4

    F .
    不确定

    正确答案: D

    最低可用文件描述符原则(Lowst-Available-fd, LAf),打开文件时,为此文件安排的文件描述符总是最低可用的位置的索引
    

    7、( 多选题 | 1 分)
    read(fd, buf, 30)执行成功,返回可能不是30的是()

    A .
    读时遇到EOF

    B .
    从终端读文本

    C .
    读磁盘文件,但没遇到EOF

    D .
    读Socket

    正确答案: A B D

    p626 read函数从描述符为fd的当前文件位置2复制自多n个字节到内存位置buf。返回值为-1表示一个错误,而返回值0表示EOF。否在,返回值表示的是实际传送字节数量。
    

    8、( 多选题 | 1 分)
    write(2)的第一个参数fd可能来自()

    A .
    open(2)

    B .
    create(2)

    C .
    creat(2)

    D .
    close(2)

    正确答案: A C

    没有create(2)
    

    9、( 多选题 | 1 分)
    Unix/Linux中,对于代码fd=open("foo",O_WRONLY,0766),umask=022,下面说法正确的是()

    A .
    进程对foo是只写的

    B .
    同组成员能写foo

    C .
    使用者可以执行foo

    D .
    任何人都可以写foo

    正确答案: A C

    p624,p625 九个权限可以用0777表示,07(使用者)7(同组成员)7(其他人)
    7(111)(读:写:执行),文件实际权限是mode&~mask
    

    10、( 多选题 | 1 分)
    关于open(2),下面说法正确的是( )

    A .
    flag 参数中O_RDONLY,O_WRONLY,O_RDWR至少要有一个

    B .
    O_RDONLY|O_WRONLY == O_RDWR

    C .
    fd=open("foo.txt",O_WRONLY|O_APPEND,0),调用write(fd,buff,n)写入foo.txt的数据不会破坏已有数据。

    D .
    fd=open("foo.txt",O_WRONLY|O_APPEND,0644),必将导致其他人不能写foo.txt

    正确答案: A C

    熟悉umask命令, open第三个参数实际是mode & ~umask
    

    11、( 多选题 | 1 分)
    有关Linux系统的目录,下面说法正确的是()

    A .
    目录是一种文件

    B .
    Linux将所有文件组织成目录层次结构

    C .
    home/rocedu/work/who1.c使用的是绝对路径

    D .
    ./a.out使用的是相对路径

    E .
    .. 表示当前工作目录

    F .
    pwd命令可以查看当前工作目录的绝对路径

    正确答案: A B D F

    p623 p624
    A:p623 目录是包含一组链接为文件
    B:p623 linux内核将所有文件都组织成一个目录层次结构,由名为/的根目录确定。
    C:绝对路径名以一个斜杠开始,表示从根节点开始的路径
    D:相对路径名以文件名开始,表示从当前工作目录开始的路径 
    E:.表示当前当前工作目录,..表示上一级工作目录。
    

    12、( 单选题 | 1 分)
    下面()命令可以修改当前工作目录?

    A .
    mkdir

    B .
    cd

    C .
    pwd

    D .
    ls
    正确答案: B

    p624 
    A:使用权限:于目前目录有适当权限的所有使用者命令格式:mkdir [-p] DirName说明:建立一个子目录.
    B:cd命令用来切换工作目录至dirname。 其中dirName表示法可为绝对路径或相对路径。
    C:在Linux层次结构中,想要知道当前所处的目录,可以用pwd命令,该命令显示整个路径名。
    D:ls命令用来显示目标列表。
    

    13、( 多选题 | 1 分)
    Linux中下列概念中可以用Unix I/O处理的是()

    A .
    普通文件

    B .
    设备文件

    C .
    目录

    D .
    套接字

    正确答案: A B C D

    p623 所有的I/O设备都被模型化为文件,每个Linux文件都有一个类型来表明他在系统中的角色:
    - 普通文件
    - 目录
    - 套接字
    - 字符和块设备
    - 命名通道
    - 符号链接
    

    14、( 单选题 | 1 分)
    相对内核而言,文件分为文本文件和二进制文件。其中文本文件只含有ASCII或Unicode字符。

    A .
    正确

    B .
    错误

    C .
    不确定

    正确答案: B

    p623 应用程序常常要区分文本文件和二进制文件,文本文件是只含有ASCII或Unicode字符的普通文件
    

    15、( 多选题 | 1 分)
    通过以下系统调用()可以获得文件描述符。

    A .
    fopen

    B .
    open

    C .
    creat

    D .
    close

    正确答案: B C

    man 2 open
    

    16、( 多选题 | 1 分)
    Linux shell创建的每个进程开始都默认打开的文件有()

    A .
    标准输入(fd=0)

    B .
    标准输出(fd=1)

    C.
    标准错误(fd=2)

    D .
    显示器和键盘

    正确答案: A B C

    p622 Linux shell创建的每个进程开始时都有三个打开的文件:标准输入(描述符为0)、标准输出(描述符为1)和标准错误(描述符为2).
    

    17、( 单选题 | 1 分)
    Unix I/O中标识文件的是()

    A .
    文件名

    B .
    文件指针FILE *

    C .
    文件描述符fd

    D .
    文件目录

    正确答案: C

    p622 
    

    18、( 单选题 | 1 分)
    Unix/Linux中,
    所有的I/O设备都被模型化为文件,而所有的输入输出都被当做对相应文件的读和写来执行。

    A .
    正确

    B .
    错误

    C .
    不确定

    正确答案: A

    p623
    

    19、( 单选题 | 1 分)
    输入输出是针对()来讲的?

    A .
    CPU

    B .
    主存

    .	
    

    I/O设备

    D .
    计算机

    正确答案: B

    p623
    

    20、( 单选题 | 1 分)

    下面哪个操作系统概念可以对I/O设备进行抽象()?

    A .
    进程

    B .
    虚存

    C .
    文件

    D .
    虚拟机

    正确答案: C

  • 相关阅读:
    IDEA实用教程(十一)—— 使用Maven创建JavaSE项目
    IDEA实用教程(十)—— 配置Maven的全局设置
    IDEA实用教程(九)—— 创建Servlet
    IDEA实用教程(八)—— 创建JavaWeb项目
    搭建视频解析的接口
    IDEA实用教程(七)—— IDEA的断点调试
    Elasticsearch 常用配置参数总结
    C# web api返回类型设置为json的两种方法
    asp.net MVC 中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别
    CountDownLatch的使用和原理解析
  • 原文地址:https://www.cnblogs.com/lnaswxc/p/8007104.html
Copyright © 2011-2022 走看看