N74080-李辉-第一周

1. 一个完整计算系统的简要介绍。

计算机系统包括计算机硬件系统和计算机软件系统两大部分

 

计算机系统
硬件系统 运算器(AU) 加法器(Adder)
寄存器(Register)
控制器(CU) 程序计数器(PC)
指令寄存器(IR)
指令编译器(ID)
操作控制器(OC)
存储器 RAM
ROM
输入设备 键盘
鼠标
其它输入设备
输出设备 显示器
打印机
其它输出设备
软件系统 系统软件 操作系统(OS)
语言处理系统(LDS)
数据库管理系统(DBMS)
系统辅助处理程序
应用软件 办公软件
多媒体处理软件
internet工具软件

运算器:主要功能是对二进制数码进行算术运算或逻辑运算,又称算术逻辑部件,如:加法器,寄存器

控制器:根据指令计数器中指定的地址从内存取出一条指令,对指令进行译码,再由操作控制部件有序地控制各部件完成操作码规定的功能,如:程序计数器、指令寄存器等

存储器:是用来存储数据和程序的记忆装置,相当于存放资料的仓库。计算机中的全部信息,包括数据、程序、指令以及运算的中间数据和最后的结果都要存放在存储器中

输入设备:用来向计算机输入数据和信息,其主要作用是把人们可读的信息(命令、程序、数据、文本、图形、图像、音频和视频等)转换为计算机能识别的二进制代码输入计算机,工计算机处理,是人与计算机系统之间进行信息交换的主要装置之一。常用的输入设备有键盘、鼠标、摄像头、扫描仪装置等。

输出设备:将计算机结果数据或信息以数字、字符、图像、声音等形式表示出来。常用的输出设备包括显示器、打印机、绘图仪、影响输出、语音输出等。

系统软件:用来支持应用软件的开发和运行的,主要是操作系统软件,如:Windows、Linux等;

应用软件:为用户提供服务的软件,如:办公软件、多媒体处理软件等。

2. 学会进制的转换,并简单举例完成转换。

2^0=1=1b

2^1=2=10b

2^3=8=1000b
2^4=16=10000b
2^5=32=100000b

2^6=64=1000000b

2^7=128=10000000b

2^8=256=100000000b

2^9=512=1000000000b

2^10=1024=10000000000b

2^11=2048=100000000000b

2^12=4096=1000000000000b

eg:十进制数转为二进制数

[root@ghsy wordpress]# echo 'obase=2;1024'|bc
10000000000

二进制数转为十进制数

[root@ghsy wordpress]# echo 'obase=10;ibase=2;11111110'|bc
254

3. 制作一个教程,说明vmware软件如何下载安装。

VMware下载地址:

链接:https://pan.baidu.com/s/1Hs9ayxjq6Vmq9jb-wBNa-w
提取码:h3nh

a)打开安装包>【鼠标双击安装包】可打开,打开安装包后点击【下一步】>勾选【许可协议】后再点击【下一步】

 

 

b)如需更改安装路径的可点击【更改】>路径更改后【确定】>然后将【增强型键盘驱动程序】此项勾选上,再点击【下一步】

 

 

 

c)再点下一步

 

 

 d)下一步

 

 

 e)下一步

 

 

 f)点击安装

g)点击许可证

 

 

h)输入密钥

 

 

 i)安装完成

 

 

 4. 说明GPL和MIT开源协议的区别。

a)GNU通用公共许可协议,强制代码开源和免费使用,特点是开源的传染性
b)MIT是相对宽松的软件许可协议,它允许任意的使用、复制、修改原MIT代码库,唯一需要遵循的原则就是在软件中声明使用的是MIT协议
5. 制作2个安装教程,安装rocky 8.5, ubuntu 22.04,并结合xshell说明如何通过虚拟IP登入系统。

6. 说明tab键补全命令以及补全路径的原理。

默认情况下,在 Linux 中提供下列补全功能:

  • 变量补全
  • 用户名补全
  • 可执行命令补全
  • 文件名和目录补全
  • 主机名补全

在Bash中的自动补全是通过内置命令complete实现的,Linux系统默认会安装一个 bash-completion 包,这里面包含了常用命令的大部分自动补齐脚本,在编写脚本时可以直接参考这个包里的内容;

[root@Rocky9 /]# complete --help
complete: complete [-abcdefgjksuv] [-pr] [-DEI] [-o option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [name ...]
    Specify how arguments are to be completed by Readline.
    
    For each NAME, specify how arguments are to be completed.  If no options
    are supplied, existing completion specifications are printed in a way that
    allows them to be reused as input.
    
    Options:
      -p    print existing completion specifications in a reusable format
      -r    remove a completion specification for each NAME, or, if no
            NAMEs are supplied, all completion specifications
      -D    apply the completions and actions as the default for commands
            without any specific completion defined
      -E    apply the completions and actions to "empty" commands --
            completion attempted on a blank line
      -I    apply the completions and actions to the initial (usually the
            command) word
    
    When completion is attempted, the actions are applied in the order the
    uppercase-letter options are listed above. If multiple options are supplied,
    the -D option takes precedence over -E, and both take precedence over -I.
    
    Exit Status:
    Returns success unless an invalid option is supplied or an error occurs.

7. 说明内部命令和外部命令的区别,以及他们如何获取帮助的?

a)内部命令:内部命令实际上是shell程序的一部分,其中包含的是一些比较简单的linux系统命令,这些命令由shell程序识别并在shell程序内部完成运行,内部命令在系统启动时就调入内存,是常驻内存的,所以执行效率高。通常在linux系统加载运行时shell就被加载并驻留在系统内存中。内部命令是写在bashy源码里面的,其执行速度比外部命令快,因为解析内部命令shell不需要创建子进程。比如:exit,history,cd,echo等。
b)外部命令:外部命令是linux系统中的实用程序部分,用户需要时才从硬盘中读入内存,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。通常外部命令的实体并不包含在shell中,但是其命令执行过程是由shell程序控制的。shell程序管理外部命令执行的路径查找、加载存放,并控制命令的执行。外部命令是在bash之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/sbin......等等。可通过“echo$PATH”命令查看外部命令的存储路径,比如:ls、vi等。
c)type命令可用来判断一个命令是否为内置命令
man 可以查看命令使用手册
enable既可以查看内部命令,同时也可以判断是否为内部命令
d)帮助:
内部命令查看帮助的格式是
help COMMAND
man bash  man 后面直接跟命令
外部命令
command  --help 或者 man command   man 后面直接跟命令

8. 说明命令行快捷键如何完成,1)快速跳转到行首?2)快速跳转到行尾?3)快速删除当前光标到行尾,4)快速删除光标到行首,5)如何快速取消执行命令。

1)光标快速跳转到行首 :ctrl + a
2)光标快速跳转到行尾 : ctrl + e
3)光标快速删除当前光标到行尾 : ctrl + k
4)光标快速删除光标到行首 : ctrl + u
5)如何快速取消执行命令 : ctrl + c

9. 总结Linux目录结构说明每个目录主要的用途。

 

 

 

[root@Rocky9 /]# ls
afs  bin  boot  data  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

以下是对这些目录的解释:

  • /bin:bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。
  • /boot:这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。
  • /dev :dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。
  • /etc:etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。
  • /home:用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。
  • /lib:lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。
  • /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
  • /media:linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
  • /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。
  • /opt:opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
  • /proc:proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
  • 这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
  • /root:该目录为系统管理员,也称作超级权限者的用户主目录。
  • /sbin:s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。
  • /selinux: 这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
  • /srv:该目录存放一些服务启动之后需要提取的数据。
  • /sys:这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。
  • sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
  • /tmp:tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。
  • /usr: usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
  • /usr/bin:系统用户使用的应用程序。
  • /usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
  • /usr/src:内核源代码默认的放置目录。
  • /var:var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
  • /run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。

10. 总结文件通配 *, ?, [a-z], [0-9], ~,{a..z},
[:alnum:] [:alpha:] [:blank:]
[:digit:] [:graph:] [:lower:]
[:punct:] [:space:] [:upper:]等常用通配符。

*    表示匹配任何字符,包括null
?   表示匹配任意字符,但是不包括null
[:alnum:]	字母和数字
[:alpha:]	代表任何英文大小写字符,即A-Z,a-z
[:blank:]	空白字符(空格和制表符)
[:digit:]	十进制数字
[:graph:]	可打印的非空白字符
[:lower:]	小写字母
[:punct:]	标点符号
[:upper:]	大写字母
[:space:]	包括空格、制表符(水平和垂直)、换行符、回车符等各种类型的空白,比[:blank:]包含范围更广
[:cntrl:]	不可打印的控制字符(退格、警铃、删除)
[:xdigit:]	十六进制数字
[:print:]	可打印字符

  

 

posted @ 2023-03-05 23:45  Motivator  阅读(18)  评论(0)    收藏  举报