华为通用开发

1.为什么5G相比4G需要更大的网络容量,更快的速率?

和4G相比,5G的提升是全方位的,按照3GPP的定义,5G具备高性能、低延迟与高容量特性,而这些优点主要体现在毫米波、小基站、Massive MIMO、全双工以及波束成形这五大技术上。(载波频率)

2.进程和线程

进程是表示资源分配的基本单位,又是调度运行的基本单位。每个进程都有自己独立的一块内存空间,一个进程可以有多个线程,比如在Windows系统中,一个运行的xx.exe就是一 个进程。
 线程是进程中执行运算的最小单位,亦即执行处理机调度的基本单位。如果把进程理解为在逻辑上操作系统所完成的任务,那么线程表示完成该任务的许多可能的子任务之一。
在Mac、Windows NT等采用微内核结构的操作系统中,进程的功能发生了变化:它只是资源分配的单位,而不再是调度运行的单位。在微内核系统中,真正调度运行的基本单位是线程。因此,实现并发功能的单位是线程。

3.tcp和udp

TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的,可靠的,基于字节流的传输层通信协议。当客户端和服务器交换数据前,必须先在双方之间建立可靠的TCP连接,一个TCP连接必须要经过三次“握手”才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端输到另一端。数据传输完成后,经过四次“挥手”断开连接,正是有了三次握手和四次挥手对于连接可靠性保障,才能让TCP协议端的数据交互变得可行,但是同样由于该协议的国语可靠,被有心人利用经常实施DDOS拒绝服务攻击。
UDP(User Datagram Protoco)是用户数据报协议,是一种面向无连接的传输层协议。它只是把应用程序传给IP层的数据报文发送出去,但是并不能保证他们能否到达目的地。UDP协议的主要作用是将网络数据流量压缩成数据包的形式,发送时先把数据放到报文,写到缓冲区字节数组在传送,界首市,从缓冲器数组读取,打包到报文。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。UDP适用于一次只传送少量数据、对可靠性要求不高的应用环境。

1.两者区别:

TCP:面向连接,可靠性高,传输数据量大,传输速度慢
UDP:面向无连接,会丢包,可靠性低,传输数据量小,传输速度快
TCP与UDP基本区别
1.基于连接与无连接
2.TCP要求系统资源较多,UDP较少;
3.UDP程序结构较简单
4.流模式(TCP)与数据报模式(UDP);
5.TCP保证数据正确性,UDP可能丢包
6.TCP保证数据顺序,UDP不保证

1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接
2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付
Tcp通过校验和,重传控制,序号标识,滑动窗口、确认应答实现可靠传输。如丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。
3、UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。
4.每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信
5、TCP对系统资源要求较多,UDP对系统资源要求较少。

2.为什么UDP有时比TCP更有优势?

UDP以其简单、传输快的优势,在越来越多场景下取代了TCP,如实时游戏。
(1)网速的提升给UDP的稳定性提供可靠网络保障,丢包率很低,如果使用应用层重传,能够确保传输的可靠性。
(2)TCP为了实现网络通信的可靠性,使用了复杂的拥塞控制算法,建立了繁琐的握手过程,由于TCP内置的系统协议栈中,极难对其进行改进。
采用TCP,一旦发生丢包,TCP会将后续的包缓存起来,等前面的包重传并接收到后再继续发送,延时会越来越大,基于UDP对实时性要求较为严格的情况下,采用自定义重传机制,能够把丢包产生的延迟降到最低,尽量减少网络问题对游戏性造成影响。
3、UDP和TCP编程步骤也有些不同.

4.页面置换算法

1、先进先出页面置换算法(FIFO)
总是淘汰在内存中停留时间最长的一页,,即先进入内存的一页,先被替换出
2、最近最久未使用页面置换算法(LRU)
Least Recently Used的缩写,即最近最少使用,常用于页面置换算法,是为虚拟页式存储管理服务的。选择在最近一段时间里没有被使用过的页面,将其淘汰,也就是被其他页面替换。
3、最佳置换算法(OPT)OPTimalreplacement
选择在将来不被使用,或者在最远的将来才被使用的老页面,也就是选择该页面后面较远才出现,甚至不出现的页面,将其淘汰,即被替换。

5.分布式数据库如何保证数据一致性

本文介绍的“数据一致性”,指的是“数据在多份副本中存储时,如何保障数据的一致性”场景。
由于在大数据领域,数据的安全不再由硬件来保证,而是通过软件手段,通过同时将数据写入到多个副本中,来确保数据的安全。数据库在同时向多个副本写入记录时,如何确保每个副本数据一致,称为“数据一致性”。
1.关系型数据库如何保障数据一致性
传统的关系型数据库对于运行环境–硬件要求都比较高,例如Oracle会建议用户使用小型机+共享存储作为数据库的运行环境,DB2 DPF也同样建议用户采用更好的服务器+高端存储来搭建数据库的运行环境。所以在数据存储安全的技术要求下,传统关系型数据库更多是依赖硬件的技术来保障数据的安全性。
Raft算法重点解决三个子问题:
1)选举(Leader election) 2)日志复制(Log replication) 3)安全性(Safety)。
分布式的数据库,通过Raft算法来确保在分布式情况上数据的一致性,并且编目分区组和数据分区组对数据一致性要求又有所不同,编目分区组始终要求的是数据在多副本请情况下数据强一致性,而数据分区组则可以由用户在创建集合时来执行数据一致性的强度,强度越高,数据安全性越好,但是执行的效率就会相对较差,反之依然。

6.了解华为

华为主要业务是通信设备、基站。现在在研发和应用5G网络,部署自己的信号塔和基站。华为研究院也在开发自己的操作系统,同时华为也在开展云计算业务。
华为是全球领先的ICT(信息与通信)基础设施和智能终端提供商,致力于把数字世界带入每个人、每个家庭、每个组织,构建万物互联的智能世界

7.数据库范式:从1NF到4NF

1.1 第一范式(1NF)无重复的列
所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。
说明:在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。

1.2 第二范式(2NF)属性完全依赖于主键 [ 消除部分子函数依赖 ]
如果关系模式R为第一范式,并且R中每一个非主属性完全函数依赖于R的某个候选键, 则称为第二范式模式。
第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)。第二范式(2NF)要求数据库表中的每个实例或行必须可以被惟一地区分。为实现区分通常需要为表加上一个列,以存储各个实例的惟一标识。这个惟一属性列被称为主关键字或主键、主码。
例如员工信息表中加上了员工编号(emp_id)列,因为每个员工的员工编号是惟一的,因此每个员工可以被惟一区分。简而言之,第二范式(2NF)就是非主属性完全依赖于主关键字。

1.3 第三范式(3NF)属性不依赖于其它非主属性 [ 消除传递依赖 ]
如果关系模式R是第二范式,且每个非主属性都不传递依赖于R的候选键,则称R为第三范式模式。
满足第三范式(3NF)必须先满足第二范式(2NF)。第三范式(3NF)要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。
例如,存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。那么在的员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。如果不存在部门信息表,则根据第三范式(3NF)也应该构建它,否则就会有大量的数据冗余。 第三范式(3NF):在第二范式的基础上,数据表中如果不存在非关键字段对任一候选关键字段的传递函数依赖则符合第三范式。简而言之,第三范式就是属性不依赖于其它非主属性。

1.4 鲍依斯-科得范式(BCNF是3NF的改进形式)
若关系模式R是第一范式,且每个属性都不传递依赖于R的候选键。这种关系模式就是BCNF模式。即在第三范式的基础上,数据库表中如果不存在任何字段对任一候选关键字段的传递函数依赖则符合鲍依斯-科得范式。

8.TCP/IP协议

TCP/IP分层通信
每个分层中,都会对要发送的数据增加一个首部,在这个首部包含了盖层的必要信息。
邮件发送解释
应用层:当我们在发送邮件的时候,应用层程序负责将信息进行编码,比如将右键采用UTF-8格式进行编码
传输层:TCP根据程序的指示,进行建立连接,发送数据以及断开连接。
网络层:IP将TCP传输过来的数据进行再次封装,在TCP首部的头添加IP首部,IP首部包含接收数据的地址以源地址
物理层:添加以太网首部进行发送处理,然后开始进行发送
邮件接收解释
邮件接收时,则是开始从物理层逐层网上对数据包进行拆分,然后到应用层,从而我们可以在应用中看到数据。

9.HTTP访问网站的时候干了什么:

URL解析,DNS请求,TCP连接,路由转发现在假设如果我们在客户端(客户端)浏览器中输入http://www.baidu.com,而baidu.com为要访问的服务器(服务器),下面详细分析客户端为了访问服务器而执行的一系列关于协议的操作:

1, 在应用层,客户端浏览器通过域名解析协议(DNS)将网址解析为Ip地址220.181.27.48,(通过这个ip地址来寻找客户端到服务端的路径),客户端浏览器发起一个HTTP会话,交给传输层处理。
2, 在运输层,客户端的传输层将http会话请求分成tcp报文段,添加源端口和目的端口,交给网络层。
3, 在网络层,客户端网络层不关心传输层和应用层,只是向上提供简单的,无连接的,尽最大努力交付的数据报服务,主要工作是通过查找路由表确定如何到达服务器。具体点到点的通信交给数据链路层。
4, 在数据链路层,包通过链路层发送到路由器,通过邻居协议查找给定IP地址的MAC地址,然后发送ARP请求查找目的地址,如果得到回应后就可以使用ARP的请求应答交换的IP数据包现在就可以传输了,然后发送IP数据包到达服务器的地址。
5, 在物理层被封装成比特流传送。

10.分段和分页

分页 虚拟内存采用的是分页技术,也就是将地址空间划分成固定大小的页,每一页再与内存进行映射。 优点:对程序员透明,没有外部碎片,因此可以更有效的使用内存。 缺点:页框中有内部碎片

分段 将地址空间分成大小不等的段,每个段构成一个独立的地址空间。 优点:没有内部碎片。可以针对不同的段采取不同的保护,也可以以段为单位来进行共享。 缺点:有外部碎片。
段页式 用户的地址空间被分成许多段,每个段又划分成大小相同的页。 优点:同时拥有分页和分段的优点。 缺点:需要配备特殊的处理器硬件和操作系统软件来同时支持两者,开销会增加。

在段式存储管理中,将程序的地址空间划分为若干段(segment),如代码段,数据段,堆栈段;这样每个进程有一个二维地址空间,相互独立,互不干扰。段式管理的优点是:没有内碎片(因为段大小可变,改变段大小来消除内碎片)。但段换入换出时,会产生外碎片(比如4k的段换5k的段,会产生1k的外碎片)
在页式存储管理中,将程序的逻辑地址划分为固定大小的页(page),而物理内存划分为同样大小的页框,程序加载时,可以将任意一页放入内存中任意一个页框,这些页框不必连续,从而实现了离散分离。页式存储管理的优点是:没有外碎片(因为页的大小固定),但会产生内碎片(一个页可能填充不满)

打个比方,比如说你去听课,带了一个纸质笔记本做笔记。笔记本有100张纸,课程有语文、数学、英语三门,对于这个笔记本的使用,为了便于以后复习方便,你可以有两种选择。
第一种是,你从本子的第一张纸开始用,并且事先在本子上做划分:第2张到第30张纸记语文笔记,第31到60张纸记数学笔记,第61到100张纸记英语笔记,最后在第一张纸做个列表,记录着三门笔记各自的范围。这就是分段管理,第一张纸叫段表。
第二种是,你从第二张纸开始做笔记,各种课的笔记是连在一起的:第2张纸是数学,第3张是语文,第4张英语……最后呢,你在第一张纸做了一个目录,记录着语文笔记在第3、7、14、15张纸……,数学笔记在第2、6、8、9、11……,英语笔记在第4、5、12……。这就是分页管理,第一张纸叫页表。你要复习哪一门课,就到页表里查寻相关的纸的编号,然后翻到那一页去复习

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值