Post Jobs

基础教程,操作系统概念

图片 6

安装win sdk 8,提示错误:管道正在被关闭。

基本用法

   
read命令主要用于从标准输入读取内容或从文件中读取内容,并把信息保存到变量中。其常用用法如下所示:

read [选项] [文件]
选项 解释
-a array 将内容读取到数值中,变量默认为数组且以空格做为分割符
-d delimiter 遇到指定的字符即停止读取
-n nchars 指定最多可以读入的字符数,即定义输入文本的长度
-r 屏蔽转义符
-p prompt 显示提示信息
-s 静默模式,在输入字符时不在终端中显示,常用于密码输入等
-t timeout 指定超时时间
-u FD 从文件描述符中读入,该FD可以由exec开启

查看安装log文件,有如下错误:

用法示例

1、从标准输入读入

[root@localhost test]# cat read.sh
#!/bin/bash
echo -n "Please input your name:"
read name
echo "Hello $name"
[root@localhost test]# bash read.sh
Please input your name:Jack
Hello Jack

2、指定显示信息从标准输入读入

[root@localhost test]# cat read.sh
#!/bin/bash
# echo -n "Please input your name:"
read -p "Please input your name:" name
# read name
echo "Hello $name"
[root@localhost test]# bash read.sh
Please input your name:Jack
Hello Jack

在以上示例中,read是一次可以接受多个参数的,如下所示:

read -p "Please input your name:" firstName secondName lastName

但需要注意的事项如下:

  • 如果输入的数据少于变量个数,则多余的变量不会获取到数据,即变量值为空
  • 如果输入的数据多于变量个数,则超出的数据将全部赋给最后一个变量
  • 如果在read命令后面没有定义任何变量,脚本在执行时,如果用户输入数据,此时数据则保存到环境变量$REPLY

3、指定超时时间

[root@localhost test]# cat read.sh
#!/bin/bash
if read -t 3 -p "Please input your name:" firstName secondName lastName
then
  echo "variable is $firstName - $secondName - $lastName"
else
   echo -e  "\ntimeout\n"
fi
[root@localhost test]# bash read.sh
Please input your name:
timeout

4、从指定文件中读取内容

[root@localhost test]# cat -n test.txt
     1  this is test text.
     2  this is second line.
     3  Hello world
     4  C# Main
     5  Python
# 使用-u选项
[root@localhost test]# cat readtest.sh
#!/bin/bash
exec 5< ~/test/test.txt
count=0
while read -u 5 var
do
 let count=$count+1
 echo "Line $count is $var"
done
echo "Total line count is $count"
exec 5<&-
[root@localhost test]# bash readtest.sh
Line 1 is this is test text.
Line 2 is this is second line.
Line 3 is Hello world
Line 4 is C# Main
Line 5 is Python
Total line count is 5
# 使用管道
[root@localhost test]# cat readtest.sh
#!/bin/bash
count=1
cat ~/test/test.txt |  while read line
do
 echo "Current line $count - $line "
 let count=$count+1
done
echo "Total line count is $count"
[root@localhost test]# bash readtest.sh
Current line 1 - this is test text.
Current line 2 - this is second line.
Current line 3 - Hello world
Current line 4 - C# Main
Current line 5 - Python
Total line count is 1
# 使用重定向
[root@localhost test]# cat readtest.sh
#!/bin/bash
count=0
while read line
do
 let count=$count+1
 echo "Current line $count - $line "
done < ~/test/test.txt
echo "Total line count is $count"
[root@localhost test]# bash readtest.sh
Current line 1 - this is test text.
Current line 2 - this is second line.
Current line 3 - Hello world
Current line 4 - C# Main
Current line 5 - Python
Total line count is 5

本文同步在微信订阅号上发布,如各位小伙伴们喜欢我的文章,也可以关注我的微信订阅号:woaitest,或扫描下面的二维码添加关注:
图片 1

 

Error 0x800700e8: Failed to write message type to pipe.
Error 0x800700e8: Failed to write send message to pipe.
Error 0x800700e8: Failed to send
BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_MSI_PACKAGE message to
per-machine process.
Error 0x800700e8: Failed to configure per-machine MSI package.

操作系统做什么

 


 

1. 计算机系统有4个组成部分:计算机硬件,操作系统,系统程序与应用程序和用户。 

 

 
操作系统的组成部分:内核为资源(特别是内存、处理器和I/O设备)提供了最低层次的抽象层。它包括(但不限于)以下组件

  CPU管理器、内存管理器、文件系统、设备管理器

 

 

             
           
  图片 2

 

2. 什么是操作系统?(不同观点)

  • 控制程序—-操作系统控制和协调不同用户的各种应用程序之间的硬件使用。(操作系统是管理计算机硬件的程序,为应用程序提供基础,充当计算机硬件和计算机用户的中介)

  • 资源管理器(资源分配器)—-操作系统管理计算机的资源,使各种应用程序和用户能够有效和公平地操作计算机系统。

  • 扩展机(虚拟机)—-操作系统抽象了计算机硬件,为用户提供了友好的界面。

  • 没有通用的可接受定义—–操作系统的存在是因为它们是解决创建可用计算系统问题的合理方法。

 

 

系统是win7 64,也有装Windows6.1-KB2670838-x64.msu 补丁。

3.操作系统的目标

  • 执行用户程序,更容易地解决用户问题。

  • 使计算机系统让用户使用方便。

  • 有效地使用计算机硬件。

 

4.定义操作系统

  • 一个比较公认的定义是:
    操作系统是一直运行在计算机上的程序(通常称为内核),其他程序则为系统程序和应用程序。

 


 

按网上提示的修改注册表方式也没有效果:

计算机系统组织


 

 

  1. 计算机系统的操作
  • 现代通用计算机系统由一个或多个CPU和若干设备控制器通过共同的总线相连而成。

 

                                                                       
           
 图片 3

 

引导程序:通常位于ROM或者EEPROM,称为计算机硬件中的固件。用来初始化系统的所有部分(CPU寄存器,设备控制器和内存)。

 

 中断:硬件可随时通过系统总线向CPU发出信号,出发中断。软件通过系统调用(或者其他特别操作)触发中断。

                                                                       
         
 图片 4

 

中断处理程序:发出中断请求的那个程序。

 

指针表:通常位于低地址内存(前100左右的位置),包含各种设备的中断处理子程序的地址。这种地址的数组或中断向量可通过唯一设备号来索引,以提供设备的中断处理子程序的地址。

中断处理程序需要修改处理器状态,如修改寄存器的值,以明确保存当前状态并在返回之前恢复状态。处理中断之后,保存的返回地址被装入程序计数器,中断程序重新开始。

 

  1. 存储结构
  • 内存是处理器可以直接访问的唯一的大容量存储区域。它通常被称为动态随机访问内存

 

一个典型指令执行周期如下:

 

                                         
     
 图片 5

 

 

  • 主存:只有CPU可以直接访问的大型存储介质。

  • 辅存:非易失性大存储容量的主存储器的扩展——磁盘(绝大多数程序(比如:QQ、浏览器)都保存在磁盘上,直到运行程序时、才装入内存)

  • 磁盘:最常用的辅存。磁盘表面逻辑上划分为磁道,再细分为扇区。磁盘控制器决定设备和计算机之间的逻辑交互。

 

7.I/O结构

  • 设备控制器连接一个或多个设备和CPU。例如SCSI(small
    computer system
    interface)可以连接7个或更多的设备。设备控制器维护一定量的本地缓冲存储和一组特定用途的寄存器,负责在其所控制的外部设备和本地缓冲存储之间进行数据传递。通常操作系统为每个设备控制器提供一个设备驱动,用来理解设备控制器,并提供一个设备与其余操作系统的统一接口。

 

I/O操作如下所示:

                         
               
 图片 6

 

 
 如果是读操作,返回的可能是数据或者数据的指针,如果是其他操作,返回的可能是状态信息。

  • 除此,还有DMA(direct
    memory
    access)的I/O设备,在DMA中设置好缓冲、指针和计数器后,设备控制器能在本地缓冲和内存之间传送整块数据,无需CPU干涉。

  • 每块只产生一个中断,告知设备驱动程序操作已完成(低速设备每个字节产生一个中断。

 


 

 计算机系统体系结构


 

 

 

 8. 单处理系统:由一个主CPU执行一个通用指令集,包括来自于用户进程的指令;绝大多数系统还包括其他特定目的的处理器,可能以专用设备处理器的形式出现,也可能以通用处理器的形式出现。 
所有专用处理器运行一个受限的指令集,不运行用户进程,有时由操作系统管理,操作系统将任务信息发送给这些处理器。

 

9.多处理器系统,也成为并行系统(parallel
system)或紧耦合系统(tightly coupled
system),这类系统含有多个通信CPU,共享计算机总线。其优点如下:

  • 增加吞吐量:通过增加处理器的数量,但同时会多出管理多个CPU的开销。

  • 规模经济:通过共享外设,存储和电源来节省资金。

  • 增加可靠性:
    单个处理器失灵不会导致整个系统停止。

 

10.  多处理器系统主要有两种类型:非对称多处理(asymmetric
multiprocessing)和对称多处理(symmetric multiprocessing,SMP)。

  • 非对称多处理(asymmetric
    multiprocessing):每个处理器都有各自特定的任务,一个主处理器控制系统,其他处理器或者从主处理器要任务,或者做预先定义的任务。这种称为主-从关系。

  • 对称多处理(symmetric
    multiprocessing,SMP):每个处理器都要完成操作系统中的所有任务,所有处理器对等,处理器之间没有主-从关系。好处是N个CPU可以同时运行,并且不影响效率。

 

11. 集群系统

  •  
     定义:与多处理器系统一样,集群系统将多个CPU集中起来完成计算任务。然而,集群系统与多处理器系统不同,它是由两个或多个独立的系统耦合起来的。常用的方式是共享存储并通过局域网连接。也分对称和非对称两种。通常用来提供高可用性服务。

 

  • 非对称集群:一台机器处于热备份模式,一台运行应用程序,热备份主机监视现役服务器,如果该服务器失效,那么切换

  • 对称集群:多台主机都运行应用程序,互相监视,

  • 并行集群:允许多个主机访问共享存储上的相同数据

 


 操作系统结构


 

 

 

 12.
操作系统最重要的一点是要有多道程序处理能力。多道程序设计通过组织作业(编码或数据)使CPU总有一个作业在执行,从而提高了CPU的利用率。

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图