前言 前不久.我们详细分析了TLB基本原理,本节我们通过一个简单的示例再次叙述TLB的算法和原理,希望借此示例能加深我们对TLB(又称之为快表,深入理解计算机系统(第三版)又称之为翻译后备缓冲区)的理解. 使用分页作为支持虚拟内存的核心机制可能会导致高性能开销,通过将地址空间划分成固定大小的小单元(即页面),分页需要映射大量信息,由于该映射信息通常存储在物理内存中,因此在逻辑上分页需要针对程序生成的每个虚拟地址进行额外的内存查找,在每条指令获取或显式加载或存储之前进入内存获取翻译信息的速度会非常…
前言 本节内容计划是讲解TLB与高速缓存的关系,但是在涉及高速缓的前提是我们必须要了解操作系统缓存原理,所以提前先详细了解下缓存原理,我们依然是采取循序渐进的方式来解答缓存原理,若有叙述不当之处,还请批评指正. 缓存原理 高速缓存被划分为多个块,其大小可能不同,缓存中的块数通常为2的幂.如下为一个具有八个块的高速缓存,每个块包含一个字节. 通过本节对缓存原理的学习我们能够学习到四点: [1]当我们将数据块从主存储器复制到缓存,我们到底应该放在哪里? [2]如何判断一个字是否已经在缓存中,或者它是…
前言 前面我们讲到通过TLB缓存页表加快地址翻译,通过上一节缓存原理的讲解为本节做铺垫引入TLB和缓存的关系,同时我们来完整梳理下从CPU产生虚拟地址最终映射为物理地址获取数据的整个过程是怎样的,若有错误之处,还请批评指正. TLB和缓存串行访问(Serial TLB & Cache Access) 这里会跳过前面对虚拟页号.虚拟页偏移量.TLB索引和标记等的详细分析和计算,不清楚的童鞋请先查看前面文章再来看本文.假设我们有14位的虚拟地址.12位的物理地址,每页大小为64字节,如下: 同时假设…
String作为Java中最常用的引用类型,相对来说基本上都比较熟悉,无论在平时的编码过程中还是在笔试面试中,String都很受到青睐,然而,在使用String过程中,又有较多需要注意的细节之处. String的连接 @Testpublic void contact () { //1连接方式 String s1 = "a"; String s2 = "a"; String s3 = "a" + s2; String s4 = "a&qu…
前言 为进行基础回炉,接下来一段时间我将持续更新汇编和操作系统相关知识,希望通过屏蔽底层细节能让大家明白每节所阐述内容.当我们写下如下C代码时背后究竟发生了什么呢? #include <stdio.h> int main() { , b = ; int func(int a, int b); int c = func(a, b); printf("%d\n%d\n%d\n",a, b, c); } int func(int a, int b) { ; return a +…
前言 上一节内容我们对在32位操作系统下堆栈帧进行了详细的分析,本节我们继续来看看在64位操作系统下对于过程调用在处理机制上是否会有所不同呢? 堆栈帧 我们给出如下示例代码方便对照汇编代码看,和上一节有所不同的是函数调用多了几个参数. #include <stdio.h> int main() { ,b = , c = , d = , e = ,f = , g = ,h = ; int func(int a, int b,int c,int d,int e,int f ,int g,int h…
HTTPS(全称: Hypertext Transfer Protocol Secure,超文本传输安全协议),是以安全为目标的HTTP通道,简单讲是HTTP的安全版.本文,就来深入介绍下其原理. 1.为什么需要https 使用https的原因其实很简单,就是因为http的不安全.   当我们往服务器发送比较隐私的数据(比如说你的银行卡,身份证)时,如果使用http进行通信.那么安全性将得不到保障. 首先数据在传输的过程中,数据可能被中间人抓包拿到,那么数据就会被中间人窃取. 其次数据被中间人拿…
http://blog.itpub.net/31542119/viewspace-2199549/ XGBoost是boosting算法的其中一种.Boosting算法的思想是将许多弱分类器集成在一起形成一个强分类器.因为XGBoost是一种提升树模型,所以它是将许多树模型集成在一起,形成一个很强的分类器.而所用到的树模型则是CART回归树模型.讲解其原理前,先讲解一下CART回归树. 一.CART回归树 CART回归树是假设树为二叉树,通过不断将特征进行分裂.比如当前树结点是基于第j个特征值进…
HTTPS(Hypertext Transfer Protocol Secure,超文本传输安全协议),是以安全为目标的HTTP通道,简单讲是HTTP的安全版.这篇文章深入介绍了它的原理. 当我们适用浏览器发送比较隐私的数据时,如果适用http进行通信,则安全性将得不到保障.在数据传输过程中,数据可能会被中间人抓包拿到,那么数据就会被中间人窃取.数据被中间人拿到之后,可能会对数据进行篡改,然后再发往服务器,造成严重后果.在这种情况下,服务器收到数据之后,也无法确定数据有没有被修改或者替换,无法判…
前言 superedge是腾讯推出的Kubernetes-native边缘计算管理框架.相比openyurt以及kubeedge,superedge除了具备Kubernetes零侵入以及边缘自治特性,还支持独有的分布式健康检查以及边缘服务访问控制等高级特性,极大地消减了云边网络不稳定对服务的影响,同时也很大程度上方便了边缘集群服务的发布与治理 特性 Kubernetes-native:superedge在原生Kubernetes基础上进行了扩展,增加了边缘计算的某干组件,对Kubernetes完…