1kxj
1、计算机简介
  • 计算机诞生目的取代人力。就是人类奴隶。

  • 程序员是就是计算机硬件灵魂,硬件以外是软件。

  • 软件可以分为两大类::

    • 操作系统:就是协调、管理、控制计算机硬件资源与高级应用软件资源得一个控制程序
    • 应用软件:app、网页
  • 操作流程图:

2、项目开发流程

PM(产品经理伪需求)——UE (页面交互)——UI(画页面)——FE前端(展示页面)——RD后端(数据)——QA(测试人员)——OP(运维人员系统架构)

3、计算机分类
  • 个人 PC :
    • 台式机
    • 笔记本:断电有电池续命
  • 服务器:最好一直开机运行,不要宕机
    • 分类:
      • 尺寸: 1u 2u 4u
      • 外型:机架式 刀片 塔式 云主机 小型机=>高端定制
      • 品牌:dell 惠普 IBM
4、计算机组成
  • cpu (控制器 + 运算器)
    • 2核4线程 物理层面2核,每核2线,假的4核 真4核>2核4线>纯2核
  • 存储器:
    • 内存:
      • 内存条:存储数据快,断电数据丢失
    • 外存:
      • 机械磁盘:存储速度慢,断电数据不丢失
  • 输入设备
  • 输出设备
  • 三大核心硬件:cpu 内存 硬盘
  • 内核态与用户态:
    • 内核态—>操作系统正在控制硬件(系统返回消息)
    • 用户态—>应用程序正在运行(用户发送消息)
5、计算机启动过程
  1. 计算机加电
  2. 启动 BIOS (计算机启动一定会先启动 bios系统) 扫描启动设备,从某一个启动设备中找到操作系统
  3. 读取启动设备的第一个扇区的大小(称之为主引导记录 mbr)
  4. grub 程序负责将操作系统内核装入内存,启动操作系统
  5. 操作系统会让 bios 去检测驱动程序
6、操作系统

前言: 操作系统核心就是进程

进程:指的就是一个程序运行过程中,具体来说是指操作系统控制硬件来运行程序的过程,资源单位

线程:执行单位,cpu 执行的线程,进程内代码的运行

1、2代计算机 批处理系统:
  • 一次只把一道程序读入内存,运行完毕后,在执行下个程序,没有并发,称之为串行
  • 优点:充分利用计算机资源
  • 缺点:
    1. 整个过程需要人参与
    2. 让程序员明显感觉到等待
    3. 程序运行串行
2. 三代计算机
  • 串行:多个任务是一个运行完毕在运行下一个

  • 并发:多个任务看起来同时运行

  • 并行:真正意义上的同时运行,只有多个 cpu 才能实现

    6个核只能并行6个任务,但可以并发 n 任务

  • 多道技术=>并发

    1. 空间上的复用,多道技术在运行前必须加载到内存中

    2. 时间上的复用,多个任务复用 cpu 时间片,通俗讲就是 cpu 在多个程序间来回切换

      什么时候切换:

      1. 当一个任务遇到 IO 肯定要切换=>提升效率
      2. 一个任务没有遇到 IO 但是占用 cpu 时间过长,也要切换=> 降低效率

    ps: 多个进程的内存空间是相互隔离的,而且是物理隔离

  • 分时操作系统 多用户多任务

    应用多道技术来实现多个任务并发运行

  • windows系统 : 单用户多任务 linux系统 : 多用户多任务

  • linux 发展历程:multics => unix => minix => linux(redhat/centos)

7、一个任务运行的三种状态
  • 运行:拿到 cpu 正在运行
  • 就绪:等待被分配 cpu ,一旦拿到 cpu 就可以立即执行
  • 阻塞态:拿到 cpu 也无法执行,必须等待 io 结束,进入就绪状态,然后。。。
8、计算机网络
  • 什么是网络?

    网络 = 物理连接介质 + 互联网通信协议

  • 为何要有网络?

    为了方便数据传输/通信,打破地域限制,信息高速公路

1、 以太网
  1. 以太网的数据称之为数据帧,分为head+data两部分,其中head长度固定
  2. 规定但凡是接入互联网的主机必须有一块网卡,网卡上有一个 mac 地址,全世界唯一
  3. 以太网协议的通信采用广播通信方式=>计算机通信靠吼
    ps: 局域网通信通过以太网协议,mac 地址
  • ip 协议
    1. ip 地址+ mac 地址 => 全世界范围内唯一一台计算机
2、 OSI 七层网络协议
  1. 应用层 http, ftp , 可以自定义协议

  2. 表示层

  3. 会话层

  4. 传输层

    • tcb/udp
    • head+data:head 放的源端口 目标端口
    • 端口在本机唯一即可
  5. 网络层

    • ip 协议:
      分为head+data两部分,head 放 ip 地址
  6. 数据链路层

    • ethernet 以太网协议
  7. 物理层

    • 转换成电信号 01010101,然后发送
3、 ARP 协议
  1. arp 协议---->获取目标 mac ,怎么获取
    把自己mak地址和对象mak地址和需要发送数据封装包,发给局域网所有机器,机器匹配对应的mac地址
    前提:在一个局域网 LAN 内,靠的是目标 mac 地址找到对方在哪里,即目标地址是谁,文件就传给谁

  2. ARP会将 ip 地址转换成 mac 地址,(要么是局域网mac地址,要么是网关mac地址,不肯能是公网mac地址)

4、tcp 与 udp 协议
  • tcp 通信之前必须建立双向通道,可靠协议
  • udp 协议=> 不可靠协议
  1. dhcp
    想实现网络通信,每台计算机必须具备四要素:
    1. 本机 ip 地址
    2. 子网掩码
    3. 网关 ip 地址
    4. DNS 的 ip 地址
      • 获取以上地址,有2种方式:
        • 手动配置=> 静态获取
        • 动态获取=> dhcp
  2. DNS
    • 什么是dns: domain name server 域名解析服务,负责把域名解析成 ip 地址
    • dns的查询方式:
      递归查询
      迭代查询
      浏览器缓存=>操作系统缓存=>本地hosts文件=>本地dns服务=>递归or迭代查询

分类:

技术点:

相关文章: