-
操作系统入门(三)进程概念、组成、特征、组织方式和状态转换
发布时间:2022-02-02 16:29- 多道程序设计和进程的引出 早期计算机运行程序时只能一次运行一个程序,而且所有的系统资源(如CPU、内存和IO设备等)都由该程序单独使用,在该程序运行完之前其他程序无法运行,这就是单道程序设计
-
操作系统入门(二)操作系统的功能和特征
发布时间:2022-02-01 13:11- 操作系统的功能操作系统是控制和管理计算机硬件和软件资源、组织程序调度、向用户(和用户程序)提供请求底层服务的方便接口和操作界面的一种系统软件。操作系统的主要功能是存储管理、作业和进程管理、设备管理
-
操作系统入门(一)计算机的组成简介
发布时间:2022-02-01 11:22- 计算机构成 CPU、存储器和输入输出设备,通过总线连接和通信。 - 处理器 CPU的职责 CPU的工作是从内存(RAM)提取指令、译
-
浏览器输入一个网址发生了什么(六) 服务器接收和处理网络请求
发布时间:2021-08-01 22:27上节我们介绍了网络包在互联网中的传递,本节将介绍网络包到达服务端的局域网,并且到达服务器后如何被接收和处理。1.网络包到达服务端防火墙一般而言,web服务器会放在服务器运营商的数据中心,该数据中心与运
-
浏览器输入一个网址发生了什么(五) 网络包在互联网中传输
发布时间:2021-08-01 11:08上节我们介绍了网络包在局域网内的传输,本节将介绍网络包如何进入互联网以及在互联网中如何传输。我们知道互联网是由众多设备如路由器,交换机和计算机通过通信线路(如网线,光纤等)连接组成。而这些设备按区域划
-
浏览器输入一个网址发生了什么(四) 网络包在局域网中传输
发布时间:2021-07-31 21:49接下来我们将介绍数据从客户端主机传输出去后,在局域网内经历了什么。 网络包从客户端主机发出后,要经过集线器、交换机和路由器最终进入到互联网。在我们实际生活中,家里的路由器已经
-
浏览器输入一个网址发生了什么(三) IP模块封装和网卡
发布时间:2021-07-25 16:12上一节探索了网络消息在协议栈内是如何封装、发送和接收。本节将补充协议栈中的IP模块对报文的封装,以及网络包是如何通过网卡发送出去计算机。 1. IP模块封装IP头部 当
-
浏览器输入一个网址发生了什么(二) TCP模块封装和传输机制
发布时间:2021-07-23 10:03上节简单的介绍了http报文封装和dns请求获取目标IP 本节将介绍http报文在协议栈中如何进一步处理并发送到网络中。这里说的协议栈是指TCP/IP协议栈。 &nbs
-
浏览器输入一个网址发生了什么(一) 封装http消息和dns请求
发布时间:2021-07-21 12:43本系列文章围绕着“往浏览器输入网址后发生了什么”介绍计算机网络的相关基础知识。本文将介绍往浏览器中输入一个网址后客户端如何封装http消息和发送dns请求查询目标主机的ip。
-
从IO模型到协程(四) 用python实现一个多路复用程序
发布时间:2020-11-10 23:27我们将以socket编程模拟http请求和多路复用io模型逐步引入协程首先,使用socket通信模拟http请求,下面是客户端的请求代码:# coding=utf-8 import socket
-
从IO模型到协程(三) 多路复用之select、poll和epoll
发布时间:2020-11-05 11:35什么是IO多路复用 IO多路复用本质是操作系统的一系列系统调用(select(), poll() 和 epoll()),它可以监视多个套接字,一旦某个套接字就绪(一般是读就绪或者写就绪),内核就
-
从IO模型到协程(二) BIO模型和NIO模型
发布时间:2020-11-05 10:18BIO:同步阻塞I/O模式 以下面的代码为例: 先是服务端代码: # coding=utf-8 from threading import Thread, currentThr
-
从IO模型到协程(一) 什么是IO,用户进程与内核
发布时间:2020-11-05 01:07什么是io? 在计算机系统中I/O就是输入(Input)和输出(Output)的意思,针对不同的操作对象,可以划分为磁盘I/O模型,网络I/O模型,内存映射I/O, Direct I/O、数据库I/
-
深入Redis之 redis常见面试题(十四)
发布时间:2020-10-10 22:561.Redis有哪些数据结构 字符串String、字典Hash、列表List、集合Set、有序集合Zset。 除此之外还有: HyperLogLog,Pub/Sub发布订阅,布隆过滤器,Bi
-
深入Redis之 redis中的内存管理(十三)
发布时间:2020-10-10 22:50一、redis的内存消耗在哪里如何查看redis的内存消耗情况info memory 命令每一项的具体意思可以看博客的图片,标红的要重点关注。在我们的印象中,我们都会认为redis占用的内存
-
深入Redis之 redis中的事务、乐观锁、分布式锁、缓存的雪崩、穿透和击穿(十二)
发布时间:2020-10-10 22:47一、redis缓存的雪崩、穿透和击穿 以电商的缓存数据为例,目前电商首页以及热点数据都会去做缓存 ,一般缓存都是定时任务去刷新,或者是查不到之后去更新的,定时任务刷新就有一个问题。 1.缓
-
深入Redis之 redis布隆过滤器(十一)
发布时间:2020-10-08 20:05一、引出布隆过滤器 现在有一个问题: 现在有50亿过个电话号码,有10万个电话号码,要快速准确判断10万个电话号码是否存在。 1.如果通过数据库查询:不能快速查询。 2.如果是将数据放入r
-
工具篇:git常用命令和使用
发布时间:2020-10-08 11:271. 创建一个git仓库(仓库又叫做版本库): 仓库有两种:普通仓库和裸仓库 git init 仓库名 如git init a 此时会创建一个a目录,里面有
-
深入Redis之 redis cluster常见问题 (十)
发布时间:2020-10-07 10:29redis集群的故障转移 A. 故障发现 redis集群通过ping/pong消息实现故障发现(redis集群本身自己带有故障转移功能,不需要sentinel),分为主观下线和客观下线。
-
浅谈操作系统原理(九) 传输层(TCP/UDP)和应用层(HTTP)
发布时间:2020-04-04 19:15传输层 UDP协议详解 UDP —— 用户数据报协议 这里的数据报是指应用层直接传过来的数据报,UDP协议不会对其进行任何处理,不拆分也不合并