2.计算机架构与Linux操作系统分析
在计算机上,我们知道有内存、cpu、硬盘、键盘、鼠标、显示器等等。那他们是怎么连接起来的呢?
如果说每个外设都和直接cpu连接,那么cpu就要有非常多的引脚了,但是我们知道,现在计算机是有种类多且数量的也多的硬件连接而成,要实现cpu跟每个硬件都有直接相连的线路是不现实的。
其实,在现实当中CPU是通过总线和外部各硬件间接相连的,其中总线有地址总线、数据总线、控制总线这几种。
地址总线是用来查找有存储能力的存储单元的;
控制总线是用来连接各硬件控制器的,提供其发送控制信号;
数据总线是用来传输数据;
计算机在工作时,如果有其他的硬件发来请求,那CPU是如何知道硬件发来了请求信息呢?一会查看一下是否有请求,过一会又去查看,如果有请求则去处理,如果在处理过程中又有其他硬件发来了请求,则CPU又如何操纵呢?如果是发生了重大错误,那是不是要CPU先去处理更重要的是再来处理刚才没处理完的事情。
在CPU处理事情时,有另外重要请求来了打断此处的操作,我们称之为中断。中断是有两种有软中断和硬中断。有硬件发出的打断正在处理的工作我们称为硬中断,有软件发出的打断了正在处理的工作我们称之为软中断。
我们装的操作系统它是可以做很多工作的,操作系统我们装了很多程序,多个程序要正常有序运行,运行当中要读取和写数据,如果程序需要外部网络提供数据,则要访问网络,程序要运行且要实现对应的功能就会操作硬件,还有需要网络通信进行交流且保证数据的安全性。操作系统要实现的如下功能:
进程调度管理
文件系统管理
网络协议栈控制
内存管理
驱动程序管理
安全功能
以上这些是操作系统必须得提供,我们装好Linux系统后给我们提供了一个登陆界面,那么我们就需要用用户来登录,Linux是多用户多任务的操作系统能够,每个用户都有自己的数据,显然不同用户都要有不同的权限的。Linux下我们把用户为分:
管理员用户(拥有所有的权限的)
普通用户(通过管理员授权各普通用户,不同的用户权限都是不同的)
管理员下命令提示符是: # [root@linux_basic ~]#
普通用户下的命令提示符: $ [cactiuser@linux_basic ~]$
命令提示符是什么组成的呢?
可以通过PS1变量来查看,去变量的之要加$PS1,用echo命令来显示
[root@linux_basic ~]# echo $PS1
[\u@\h \W]\$
\u the username of the current user 当前用户用户名
\h the hostname up to the first ‘.’显示‘.‘前面的主机名,主机名无‘.‘则直接主机名
\W the basename of the current working directory, with $HOME abbreviated with a tilde
当前工作目录基名
\w 当前工作目录的绝对路径
\$ if the effective([‘fktv] 有效的,起作用的;) UID is 0, a #, otherwise a $
如果有效UID是0则为#,其他是#
\n newline 新行
\j the number of jobs currently managed by the shell
这里UID是用户的标识。每个用户都有UID,管理员的UID是0,其他用户UID是$
要想查看更多说明信息可以用 man sh,会使用的就可以找到,此处不讲解
Linux下给变量赋值,是使用 变量名=值 如果说值有字符的话,我们都是用引号引起来的
‘‘ 单引号 "" 双引号 ``反引号 Esc键下面的那个键
[root@linux_basic /etc/init.d]#echo $HOME
/root
我们可以改变PS1变量的值
[root@linux_basic ~]# PS1=‘[\u@\j \W]\$‘
[root@0 ~]#PS1=‘[\u@\h \W]\$‘
[root@linux_basic ~]#
Linux下是严格区分大小写的
[root@linux_basic ~]#PS1=‘[\u@\h \w]\$‘
[root@linux_basic ~]#cd /etc/init.d/
[root@linux_basic /etc/init.d]#
Linux的目录结构是一个倒置的树,就是它有且仅有一个根(/),绝对路径是指从根开始到所在目录的完整路径;相对路径是指不以根为开始,是一当前目录为起点来进行指定。cd是一个实现目录跳转的命令。pwd是用绝对路径的方式显示当前所在位置
[root@linux_basic init.d]#pwd
/etc/init.d
[root@linux_basic init.d]#cd /boot/grub/
调到/boot/目录下的efi目录下,使用相对路径
[root@linux_basic grub]#cd ../efi/
[root@linux_basic efi]#pwd
/boot/efi
有错误欢迎大家来修正,希望可以做到更好!
本文出自 “快乐就好” 博客,请务必保留此出处http://6625958.blog.51cto.com/6615958/1591853
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。