• 计算机操作系统及网络通信


    计算机操作系统及网络通信

    1.为何要有操作系统

    程序员无法把所有的硬件操作细节都了解到,管理这些硬件并且加以优化使用是非常繁琐的工作,这个繁琐的工作就是操作系统来干的,有了他,程序员就从这些繁琐的工作中解脱了出来,只需要考虑自己的应用软件的编写就可以了,应用软件直接使用操作系统提供的功能来间接使用硬件。

    2.操作系统的位置

    操作系统位于计算机硬件与应用软件之间,本质也是一个软件。操作系统由操作系统的内核(运行于内核态,管理硬件资源)以及系统调用(运行于用户态,为应用程序员写的应用程序提供系统调用接口)两部分组成,所以,单纯的说操作系统是运行于内核态的,是不准确的。

    3.操作系统的功能

    一:隐藏了丑陋的硬件调用接口,为应用程序员提供调用硬件资源的更好,更简单,更清晰的模型(系统调用接口)。应用程序员有了这些接口后,就不用再考虑操作硬件的细节,专心开发自己的应用程序即可

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

    4.操作系统的发展

    一:第一代计算机(1940~1955):真空管和穿孔卡片。没有操作系统的概念,所有的程序设计都是由纯粹的机器语言编写的

    二:第二代计算机(1955~1965):晶体管和批处理系统。有了操作系统的概念,下图就是最早期的操作系统:是人力与计算机结合的系统,需要人参与。

    有了程序设计语言:FORTRAN语言或汇编语言,写到纸上,然后穿孔打成卡片,再讲卡片盒带到输入室,交给操作员,然后喝着咖啡等待输出接口

    三:第三代计算机(1965~1980):集成电路芯片和多道程序设计。操作系统有了多种解决第二代计算机问题的技术:SPOOLING,多道技术,分时操作系统

    四:第四代计算机(1980~至今):个人计算机 略

    5.多道技术

    多道技术有两种实现方式

    一:时间上的复用

    当一个资源在时间上复用时,不同的程序或用户轮流使用它,第一个程序获取该资源使用结束后,在轮到第二个。。。第三个。。。

    二:空间上的复用

    每个客户都获取了一个大的资源中的一小部分资源,从而减少了排队等待资源的时间

    6.什么是互联网协议

    英语成为世界上所有人通信的统一标准,如果把计算机看成分布于世界各地的人,那么连接两台计算机之间的internet实际上就是

    一系列统一的标准,这些标准称之为互联网协议,互联网的本质就是一系列的协议,总称为‘互联网协议’(Internet Protocol Suite).

    7.为何要有互联网协议

    定义计算机如何接入internet,以及接入internet的计算机通信的标准。

    8.osi五层模型

    我们将应用层,表示层,会话层并作应用层,从tcp/ip五层协议的角度来阐述每层的由来与功能,搞清楚了每层的主要协议

    就理解了整个互联网通信的原理。

    首先,用户感知到的只是最上面一层应用层,自上而下每层都依赖于下一层,所以我们从最下一层开始切入,比较好理解

    每层都运行特定的协议,越往上越靠近用户,越往下越靠近硬件

    物理层功能:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0

    数据链路层的功能:定义了电信号的分组方式

    网络层功能:引入一套新的地址用来区分不同的广播域/子网,这套地址即网络地址

    传输层功能:建立端口到端口的通信

    应用层功能:规定应用程序的数据格式。

    9.用户上网流程

    打开浏览器,想要访问百度,在地址栏输入了网址:www.baidu.com

    经过多个网关的转发,百度的服务器收到了这四个以太网数据包。

    根据IP标头的序号,百度将四个包拼起来,取出完整的TCP数据包,然后读出里面的”HTTP请求”,接着做出”HTTP响应”,再用TCP协议发回来。

    本机收到HTTP响应以后,就可以将网页显示出来,完成一次网络通信。

  • 相关阅读:
    个人阅读作业1
    个人项目-词频统计
    Android中BroadcastReceiver的两种注册方式(静态和动态)详解
    JAVA装饰者模式(从现实生活角度理解代码原理)
    博客维护停止,需要的伙伴们移步http://blog.csdn.net/panhouye
    Android中EditText设置输入条件
    Andriod中自定义Dialog样式的Activity点击空白处隐藏软件盘(Dialog不消失)
    Android中调用文件管理器并返回选中文件的路径
    java中打印实心菱形以及空心菱形的方法
    Android中使用findViewByMe提升组件查找效率
  • 原文地址:https://www.cnblogs.com/zhangsunan/p/6543918.html
Copyright © 2020-2023  润新知