您当前的位置:首页 > 电脑百科 > 程序开发 > 开源程序 > 源码

深入浅出 OkHttp 源码解析及应用实践

时间:2023-05-18 14:26:49  来源:今日头条  作者:雪竹频道

一、MBR分区

MBR是Master Boot Record的缩写,是一种旧的分区表格式,用于在硬盘上标识和管理分区。MBR分区表可以标识最多4个主分区或3个主分区和1个扩展分区。

2TB的限制是指,使用MBR分区表格式的硬盘最大只能分区到2TB,因为MBR使用32位的LBA(Logical Block Addressing)寻址方式,最大地址只能表示2^32个扇区,每个扇区大小为512字节,因此最大支持的硬盘大小为2TB。

为了支持更大的硬盘容量,硬盘制造商和操作系统开发商引入了GPT(GUID Partition Table)分区表格式。GPT使用64位LBA寻址方式,可以支持最大容量为9.4ZB(1 ZB = 1024^7字节)的硬盘。因此,如果您需要分区大于2TB的硬盘,建议使用GPT分区表格式。

二、GPT分区

GPT(GUID Partition Table)分区表是一种新的分区表格式,用于在硬盘上标识和管理分区。与旧的MBR分区表不同,GPT使用GUID(Globally Unique Identifier)标识分区,支持更大的硬盘容量和更多的分区。

GPT分区表一般由以下几个部分组成:

  • Protective MBR:保护性的MBR分区表,用于兼容旧的BIOS系统,防止旧系统误认为硬盘没有分区。
  • Primary GPT Header:GPT分区表的头部信息,包括分区表大小、分区表的位置、分区项大小、分区项的数量等。
  • Partition Entries:分区项,每个分区项包含分区的GUID、开始和结束的LBA、分区类型等信息。
  •  Backup GPT Header:备份的GPT分区表头部信息。
  • Unused Space:未使用的空间。

GPT分区表中的每个分区项都有一个唯一的GUID,这个GUID可以用于标识分区,而不像MBR使用固定的分区类型来标识分区。GPT支持最多128个分区,其中一部分分区类型是保留的,例如EFI系统分区、Microsoft基本数据分区等。

三、如何创建一个大于2TB的分区

MBR 与 GPT,都是分区格式,其中MBR最大分区小于等于2TB,而GPT分区没有2TB的限制,理论最大分区18 EB!

现在我们知道了要创建一个大于2TB的分区,就不能使用MBR 格式的分区表了,而要使用GPT格式的分区表,我们最常用的fdisk 分区工具就爱莫能助了,需要使用linux 下的Parted分区工具!

下面演示一下,创建4TB分区的过程。

1、在使用parted 分区之前,我们先用fdisk -l 来查看下硬盘信息!

2、 现在使用parted 命令对/dev/sdb 4.6TB进行分区,具体如下图所示。

3、进入parted 后,执行2,3,4,5,6,7,8,9,10,10,11步骤,指令下边有解释!

4、分区完成后使用print 可以看到刚才分区的信息!大小 4684GB

5、quit 用于退出parted环境,信息提示更新/etx/fstab!

6、再用fdisk -l 来查看下 sdb硬盘,现在已经有sdb1 分区了

7、parted 到这里就完成了!

8、格式化/dev/sdb1 文件系统为EXT4。

mkfs.ext4 /dev/sdb1

9、编辑/etc/fstab,设置开机自动挂载。

四、linux环境如何转换MBR TO GPT

在Linux环境下,您可以使用gdisk命令将MBR分区转换为GPT分区。以下是转换MBR分区为GPT分区的步骤:

请注意,在执行下面的步骤之前,请先备份您的数据,因为转换分区表格式可能会导致数据丢失。

1、打开终端:在Linux操作系统中,打开终端。

2、安装gdisk:如果您的系统没有安装gdisk,请使用以下命令安装:

yum  install gdisk

3. 打开磁盘:使用以下命令打开您要转换的磁盘:

sudo gdisk /dev/sdX

请将/dev/sdX替换为您要转换的磁盘名称。

4. 转换分区表格式:在gdisk命令行中,输入“r”以进入恢复和转换菜单,然后输入“g”以将分区表转换为GPT格式。输入“w”以保存更改并退出gdisk。

5. 创建新的分区:转换完成后,您可以使用fdisk或其他磁盘管理工具创建新的GPT分区并将数据恢复到这些分区中。

请注意,转换分区表格式会删除所有现有的分区和数据,因此在执行此操作之前,请务必备份所有数据。另外,转换MBR分区表到GPT分区表可能会影响系统启动,因此请确保您在进行此操作之前熟悉系统启动的基本知识。



Tags:OkHttp   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
Kubernetes使用OkHttp客户端进行网络负载均衡
在一次内部Java服务审计中,我们发现一些请求没有在Kubernetes(K8s)网络上正确地实现负载均衡。导致我们深入研究的问题是HTTP 5xx错误率的急剧上升,由于CPU使用率非常高,垃圾收集...【详细内容】
2023-10-30  Search: OkHttp  点击:(261)  评论:(0)  加入收藏
深入浅出 OkHttp 源码解析及应用实践
一、MBR分区MBR是Master Boot Record的缩写,是一种旧的分区表格式,用于在硬盘上标识和管理分区。MBR分区表可以标识最多4个主分区或3个主分区和1个扩展分区。2TB的限制是指,使...【详细内容】
2023-05-18  Search: OkHttp  点击:(339)  评论:(0)  加入收藏
OkHttp完美封装,用一行代码搞定外部请求,使用起来很方便
OKHttpUtil在Java的世界中,Http客户端之前一直是Apache家的HttpClient占据主导,但是由于此包较为庞大,API又比较难用,因此并不使用很多场景。而新兴的OkHttp、Jodd-http固然好用...【详细内容】
2022-11-16  Search: OkHttp  点击:(426)  评论:(0)  加入收藏
「Harmony OS」「JAVA UI」鸿蒙应用如何集成OKHttp网络三方库
准备资料接口准备准备get请求接 Post接口 如何集成在项目级别的build.gradle添加如下代码<pre class="prettyprint hljs nginx" style="padding: 0.5em; font-family: Menlo...【详细内容】
2022-08-05  Search: OkHttp  点击:(259)  评论:(0)  加入收藏
Springboot使用OkHttp实现微信支付API-V3签名、证书的管理和使用
微信支付API-V3和V2的区别微信支付API-V3和之前V2版本最大的区别,应该就是加密方式的改变了。新版的支付接口,全部使用是SSL双向加密。就是指微信服务器端、商户端各自都有一...【详细内容】
2021-12-29  Search: OkHttp  点击:(931)  评论:(0)  加入收藏
从网络请求过程看OkHttp拦截器
之前我们结合设计模式简单说了下 OkHttp 的大体流程,今天就继续说说它的核心部分—— 拦截器 。 因为拦截器组成的链其实是完成了网络通信的整个流程,所以我们今天就从这个角度说说各拦截器的功能。...【详细内容】
2021-04-07  Search: OkHttp  点击:(435)  评论:(0)  加入收藏
架构分析高效HTTP客户端OkHttp的核心
在OkHttp3中,其灵活性很大程度上体现在,可以拦截其任意一个环节,而这个优势便是okhttp3整个请求响应架构体系的精髓所在: Okhttp请求流程 在OkHttp3中,每一个请求任务都封装为...【详细内容】
2020-03-31  Search: OkHttp  点击:(662)  评论:(0)  加入收藏
▌简易百科推荐
全网疯传的前端量子纠缠效果,源码来了!
昨天,很多群里都在疯传一个视频,视频演示了纯前端实现的“量子纠缠”效果,不少前端er表示:“前端白学了”。视频作者昨晚开源一个简化版的实现源码(截止发文,该项目在 Github 上已...【详细内容】
2023-11-24  前端充电宝  微信公众号  Tags:源码   点击:(420)  评论:(0)  加入收藏
深入浅出 OkHttp 源码解析及应用实践
一、MBR分区MBR是Master Boot Record的缩写,是一种旧的分区表格式,用于在硬盘上标识和管理分区。MBR分区表可以标识最多4个主分区或3个主分区和1个扩展分区。2TB的限制是指,使...【详细内容】
2023-05-18  雪竹频道  今日头条  Tags:OkHttp   点击:(339)  评论:(0)  加入收藏
用它就够了!开源的驾驶辅助系统
openpilot介绍openpilot是一个开源的驾驶辅助系统。目前,openpilot 执行自适应巡航控制 (ACC)、自动车道居中 (ALC)、前方碰撞警告 (FCW) 和车道偏离警告 (LDW) 的功能,适用...【详细内容】
2022-11-07  GitHub精选  今日头条  Tags:驾驶辅助   点击:(583)  评论:(0)  加入收藏
七爪源码:使用 NodeJs 观看文件系统
监视文件系统意味着监视特定目录或文件的更改。 有时您可能需要持续观察特定文件或目录的更改。出于这个原因,我们使用像 chokidar 这样的文件系统 Watcher 或内置的 NodeJs...【详细内容】
2022-09-17  庄志炎  今日头条  Tags:NodeJs   点击:(478)  评论:(0)  加入收藏
推荐 5 个开源的 yyds 效率神器
01 Wox:效率神器每次重装系统后,都会重新装一些常用的软件,Wox 这个国产开源免费的软件快捷启动工具是首装的效率工具。在 GitHub 上已经获得了 22k 的 Star。Wox 是一个高效的...【详细内容】
2022-09-16  互联网资讯看板  51CTO  Tags:开源   点击:(414)  评论:(0)  加入收藏
「开源精品」 C# im 聊天通讯架构 FreeIM 支持集群、职责分明、高性能
FreeIM 是什么?FreeIM 使用 websocket 协议实现简易、高性能(单机支持5万+连接)、集群即时通讯组件,支持点对点通讯、群聊通讯、上线下线事件消息等众多实用性功能。 ImCore 已...【详细内容】
2022-09-02  IT狂人日记  今日头条  Tags:FreeIM   点击:(510)  评论:(0)  加入收藏
两款「工作流引擎」快速开发框架源码
推荐两款开源的工作流引擎快速开发框架,该工作流平台轻量简洁、美观快速、可扩展,易学习,能够快速上手进行二次开发。有需要的朋友可以去下载看看。(源码地址在文末)▶ 1:开发环境...【详细内容】
2022-08-23   互联网资讯看板  网易  Tags:框架   点击:(367)  评论:(0)  加入收藏
开源:一款开源的一站式SQL审核查询平台 - Archery
Archey介绍Archery是archer的分支项目,定位于SQL审核查询平台,旨在提升DBA的工作效率,支持多数据库的SQL上线和查询,同时支持丰富的MySQL运维功能,所有功能都兼容手机端操作. 功...【详细内容】
2022-08-10  IT搬砖人    Tags:Archery   点击:(771)  评论:(0)  加入收藏
spring源码解析-IOC容器的基本实现
大纲 容器的基本用法 spring启动过程分析(spring生命周期) bean 的生命周期 IOC核心类总结 常用扩展点容器的基本用法spring 是企业级开发框架, 主要功能有 IOC,AOP,Web,ORM...【详细内容】
2022-08-04  javabus    Tags:IOC容器   点击:(371)  评论:(0)  加入收藏
超低成本!自制linux开发板,全开源
这是一款低成本linux开发板&mdash;&mdash;高性能异构边缘AI视觉开发板。作者参考树莓派A版型,将部分硬件替换。它的成本比树莓派低很多!却不一点比树莓派差!具体介绍如下!我还会...【详细内容】
2022-08-03  嘉立创EDA    Tags:开源   点击:(1081)  评论:(0)  加入收藏
站内最新
站内热门
站内头条