操作系统及网络基础

操作系统

    现代计算机系统是一个复杂的系统,程序员无法把所有的硬件操作细节都了解到,因此计算机安装了一层系统软件,为用户程序提供一个更好、更简洁、更清晰的计算机模型,并管理复杂的计算机硬件,这个系统软件就是操作系统。

    操作系统本质是一个软件,位于计算机硬件与应用软件。操作系统由操作系统内核(运行于内核态,管理硬件资源)以及系统调用(运行于用户态,为应用程序提供系统调用接口)两部分组成。

操作系统细分为两部分功能

1.隐藏了丑陋的硬件调用接口,为程序员提供更简洁清晰的系统调用接口。

2.将应用程序对硬件资源的竞态请求变得有序化

操作系统的发展

1.真空管和穿孔卡片阶段。

没有操作系统概念,所有的程序设计都是由机器语言编写

优点:程序员在某个时间段可以独享整个资源,即使调适自己的程序,即时处理bug

缺点:资源浪费

计算的过程是顺序计算

2.晶体管和批处理系统

设计人员、生产人员、操作人员、程序人员和维护人员直接有了明确的分工,计算机被锁在专用空调房间中,由专业操作人员运行,这便是‘大型机’。

有了操作系统的概念,人力与计算机结合的系统,需要人参与。

有了程序设计语言:FORTRAN语言或汇编语言。

优点:批处理,节省时间

缺点:整个流程需要人控制

计算的过程仍然是顺序计算

程序员不再独享一段时间的计算机,无法及时处理出现的bug

3.集成电路芯片和多道程序设计

利用分时操作系统解决了程序员不能及时调试自己的程序的问题,但仍然是批处理

4个人计算机

多道技术

时间上的复用加上空间上的复用结合起来就是多道技术,即可以同时处理多个程序发起的多个共享资源的请求。

网络基础

一台计算机不可能掌握全世界的标准,于是有了统一的通信标准。互联网协议本质就是一系列统一的标准,定义计算机如何接入internet,以及接入internet的标准。

Osi五层模型

从上到下分为应用层,传播层,网络层,数据链路层,物理层。

1.物理层:在局部局域网上传送帧,它负责管理电脑通信设备和网络媒体之间的互通。包括了针脚、电压、线缆规范、集线器、中继器、网卡、主机适配器等

2.数据链路层:负责网络寻址、错误侦测和改错。当表头和表尾被加至数据包时,会形成了帧。数据链表头(DLH)是包含了物理地址和错误侦测及改错的方法。数据链表尾(DLT)是一串指示数据包末端的字符串。例如以太网、无线局域网(Wi-Fi)和通用分组无线服务(GPRS)等。

    以太网协议:早期的时候各个公司都有自己的分组方式,后来形成了统一的标准,即以太网协议ethernet。通过ethernet协议将电信号分组。

    mac地址:每块网卡出厂时都被烧制上一个世界唯一的mac地址,长度为48位2进制,通常由12位16进制数表示(前六位是厂商编号,后六位是流水线号)

广播:有了mac地址,同一网络内的两台主机就可以通信了(一台主机通过arp协议获取另外一台主机的mac地址)

3.网络层:决定数据的路径选择和转寄,将网络表头(NH)加至数据包,以形成分组。网络表头包含了网络数据。例如:互联网协议(IP)等。

IP协议:规定网络地址的协议叫IP协议。IP地址分为网络部分和主机部分。

子网掩码:表示子网络特征的一个参数,知道子网掩码就能判断任意两个IP地址是否处于同一子网络。

ARP协议:广播的方式发送数据包,获取主机的mac地址

4.传输层:把传输表头(TH)加至数据以形成数据包。传输表头包含了所使用的协议等发送信息。例如:传输控制协议义(TCP)等。

传输层功能:建立端口与端口之间的通信,端口范围0-65535,0-1023为系统占用

tcp协议: TCP数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包不必再分割。

5.应用层:提供为应用软件而设的界面,以设置与另一应用软件之间的通信。例如: HTTP,HTTPS,FTP,TELNET,SSH,SMTP,POP3等。

网络通信流程

1.获取本机IP地址 子网掩码 网关的IP地址 DNS的IP地址

    2.打开浏览器,想要访问Alphabet,在地址栏输入abc.xyz

    3.DNS解析,将网址转换为IP地址

    4.http部分内容被嵌在TCP协议中发送给接收方,TCP数据包标头长度为20字节,加上嵌入的HTTP的数据包,总长度为4980字节

    5.TCP数据包再嵌入IP数据包,包含接收双方的IP地址,IP地址标头为20字节,加上嵌入的TCP数据包,总长度为5000字节

    6.IP数据包嵌入以太网数据包,包含双方MAC地址。以太网数据包的数据部分,最大长度为1500字节,而现在的IP数据包长度为5000字节。因此,IP数据包必须分割成四个包。因为每个包都有自己的IP标头(20字节),所以四个包的IP数据包的长度分别为1500、1500、1500、560。

    7.对方收到四个以太网数据包,取出完整的TCP数据包,独处HTTP请求,做出响应,再用TCP协议发回来

    8本机收到HTTP响应,显示网页,完成一次网络通信。

posted @ 2017-03-13 19:20  yunkaijiang  阅读(106)  评论(0)    收藏  举报