- 博客(27)
- 收藏
- 关注
原创 【传输层】
端口号:传输层为了明确区分每一个端口,给不同套接字绑定编号,称之为端口号传输层协议为运行在不同主机上的进程提供了一种逻辑通信机制端系统运行传输层协议:发送方:将应用递交的消息分成一个或多个的Segment,并向下传给网络层接收方:将接收到的报文段(segment)组装成消息,并向上交给应用层传输层可以为应用提供多种协议:TCP,UDP网络层:提供主机之间的逻辑通讯机制传输层:提供应用进程之间的逻辑通讯机制位于网络层之上,依赖网络层服务对网络层服务进行(可能的)增强。
2023-05-19 22:08:04
225
原创 【P2P应用】
节点加入torrent:没有chunk,但是会逐渐积累,向tracker注册以获得节点清单,与某些节点(“邻居”)建立连接。Peer-to-peer:没有服务器,任意端系统之间直接通信,节点阶段性接入Internet,节点可能更换IP地址。完全分布式架构:没有服务器和特殊的节点,每个节点对他自己共享的文件进行索引,且只对他共享的文件进行索引。除了节点之外,有一个中央目录服务器,任何节点加入时,都要通知中央服务器他的IP地址和共享内容。一个节点获得完整的文件,他可能(自私的)离开或(无私地)留下。
2023-05-15 19:40:06
229
原创 【Email应用】
课程笔记邮件客户端(user agent)邮件服务器SMTP协议(Simple Mail Transfer Protocol)读、写Email消息与服务器交互,收,发Email消息Web客户端邮箱:存储发给该用户的Email消息队列(message queue):存储等待发送的Email邮件服务器之间传递消息所使用的协议客户端:发送消息的服务器服务器:接收消息的服务器。
2023-05-13 21:45:08
258
原创 【Cookie技术】
HTTP协议无状态,很多应用需要掌握客户端的状态,比如购物车Cookie技术:某些网站为了辨别用户身份、进行session跟踪而存储在用户本地终端上的数据(通常经过加密),RFC6265HTTP响应消息的cookie头部行HTTP请求消息的cookie头部行保存在客户端主机上的cookie文件,由浏览器管理Web服务器端的后台数据库一、Cookie的原理第一次访问:服务端创建一个新ID 1678并返回增加到cookie文件中再访问,在常规的HTTP请求消息基础上,增加coolie1678。
2023-05-13 15:04:35
99
原创 【Web应用】
采用超文本传输协议:HyperText Transfer Protocol客户——Browser:请求、接收、展示Web对象服务器——Web Server:响应客户的请求,发送对象HTTP版本:1.0 RFC1945 , 1.1 RFC2068使用TCP传输协议:服务器在80端口等待客户的请求浏览器发起到服务器的TCP连接(创建套接字Socket)服务器接受来自浏览器的TCP连接浏览器(HTTP客户端)与Web服务器(HTTP服务器)交换HTTP消息关闭TCP连接。
2023-05-13 14:52:52
155
原创 【计算机网络-网络应用】
某些应用只有在带宽达到最低要求时才“有效”:网络视频,某些应用能够适应任何带宽——弹性应用:email。发送方依赖(门外的)传输基础设施将消息传到接收方所在主机,并送到接收方的门外。IP地址:仅仅有IP地址不足以定位进程(同一台主机上可能有多个进程需要通信)端口号/Port number:为主机上每个需要通信的进程分配一个端口号。每个文件向中央服务器登记自己的内容。消息中有哪些字段(field),每个字段如何描述。进程何时发送/响应消息、进程如何发送/响应消息。不同主机间的进程通信,那么每个进程必须拥有。
2023-05-08 22:00:05
202
原创 【计算机网络与Internet发展历史】
1967:ARPA(Advanced Research Projects Agency)提出ARPAnet构想。1991:NSF接触NSFnet的商业应用限制(1995年退役),由私营企业经营。电子商务、大学、企业等开始在“云”中运行自己的服务(如Amazon EC2)私有网络体系结构:DECnet,SNA,XNA。服务提供商(如Google,Microsoft)创建其自己的。新型国家级网络:CSnet,BITnet,1969:第一个ARPAnet结点运行。1979:ARPAnet拥有200结点。
2023-05-07 19:37:38
113
原创 【计算机网络体系结构】
计算机网络是一个非常复杂的系统,涉及很多组成部分:主机(hosts)、路由器(routers)、’各种链路(links)、应用(applications)、协议(protocols)、硬件、软件。
2023-05-07 16:22:31
141
原创 【switch语句】
作用:执行多条件分支语句。结构switch(表达式)case 结果1:执行语句;break;case 结果2:执行语句;break;...default:执行语句;break;
2023-05-07 08:53:43
56
原创 【分组交换与报文交换】
bits的分组(packets)在传输速率为R的链路上传输分组。每个分组传输时延为L/R秒。每次传输报文需要M/R秒。接收应用报文(消息)报文长度为Mbits。保温杯拆分为多个分组。分组长度为Lbits。
2023-05-07 08:52:49
165
原创 【用户级线程】
目录Yileld函数 核心级线程核心级线程编辑多核必须是核心级线程与用户级线程区别用户栈和内核栈 例子: 内核中的切换:switch_to内核级线程switch_to的五段论 用户级线程‘核心级线程的对比进程=资源+指令执行序列线程:保留了并发的优点,避免了进程切换代价(映射表上资源不切换) 在线程之间切换切换的PC在栈中 jmp 204;应当去掉Yield是用户程序Schedule 并行:同时出发,同时执行,一套资源并发:同时出发,交替执行,只有一套资源一个栈到两个栈;一套栈到两套栈用户栈执行IN
2023-05-07 08:51:14
110
原创 【计算机网络性能】
速率即数据率(data rate)或称数据传输速率或比特率(bit rate)单位时间(秒)传输信息(比特)量计算机网络中最重要的一个性能指标单位:b/s(或bps)、kb/s、Mb/s、Gb/s速率往往指额定速率或标称速率。
2023-05-06 21:16:55
112
原创 【多 进 程】
设置初始为50,需要切换到另一个程序时,OS修改PC=200.(需要记录切出去的时候程序执行到的样子)(运行的程序和静态程序不一样了,静态程序不用记录)(类似读书,读过和没读的,下次再读,读的时候大脑所处的状态不同,一个读取以前读到的位置开始读,一个不需要读取)shell再启动其他进程(一个命令启动一个进程,返回shell再启动其他进程)操作系统感知进程靠PCB,多个进程的PCB放在不同地方。多进程的地址空间分离:内存管理的主要内容(通过映射表)进程需要记录ax,bx,......,程序不用。
2023-05-01 18:49:35
296
1
原创 【链 表】
链表是数据结构中线性表的一种,其中每个元素实际上是一个单独的结构体对象,而所有对象都通过每个元素中的指针链接在一起。如果第一个结点不用于存储数据,只用于代表链表的起始点,则这个结点称为链表的头结点。第二种方式他不会释放头结点所以不可取。链表中每个结构体对象叫做结点。指针域:保存下一个结点的地址。最后一个指针域指向NULL。
2023-04-29 18:40:36
84
原创 【操 作 系 统 基 础】
1.在计算机硬件之上包了一层软件,让我们使用计算机更加方便,这就是操作系统。是计算机硬件和应用之间的一层软件。作用:(1).方便我们使用硬件,如使用显存(2)高效地使用硬件,如开多个终端(窗口)2.管理的硬件:CPU管理、内存管理、终端管理、磁盘管理、文件管理、网络管理、电源管理、多核管理。
2023-04-28 16:52:16
85
原创 【操 作 系 统 历 史】
核心没变过,多进程结构没变过多进程结构是操作系统基本图谱掌握操作系统的多进程图谱并实现它。核心思想依然是多进程,仍然是程序执行、多进程、程序执行带动其他设备使用的基本结构掌握、实现操作系统的多进程图谱;掌握、实现操作系统的文件操作视图。
2023-04-28 16:52:02
516
原创 【指 针 进 阶】
int (*p)[4] //定义了一个整形数组指针p,用于指向列数为4的整型二维数组p=arr;指针常量:就是指针的指向不能够改变的指针,也就是指针类型的常量,指针中存储的地址不可被改变(指针数组:本质上是一个数组,数组中的每一个元素都是指针类型的,都可以指向对应数据类型地址。常量指针:就是指向常量的指针,也就是指针指向的地址内的值不可被改变,又被称为只读指针(数组指针:本质上是一个指针,是一个用于指向地址的指针。指向的地址上的值可以改变。如:int* p[4]
2023-04-12 00:14:44
108
原创 【动态内存】
realloc函数:realloc(void* p,unsigned int size)例如:int* p=(int*)calloc(10,sizeof(int));calloc函数:calloc(unsigned n,int size)用于分配n个大小为size的连续内存区域,可以为一维数组开辟动态内存空间。例如:char* p=(char*)malloc(100)例如:realloc(p,50*sizeof(int))malloc函数:malloc(int size)例如:free(p);
2023-04-09 21:37:05
71
原创 【基 础 指 针】
/指针变量的定义格式:数据类型 * 指针变量名//数据类型:保存的地址上的数据类型,基类型//指针变量:保存地址//指针变量的类型:基类型int main()int a = 10;p = &a;//拿第一个编号来作为地址 &取地址运算符//解引用 得到地址上的数据 解引用运算符 *//p1=&c,而不是*p1=&creturn 0;
2023-04-07 22:14:38
347
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人