写点什么

Apple 静悄悄地升级了数百万 iOS 设备的文件系统

  • 2017-03-31
  • 本文字数:1003 字

    阅读完需:约 3 分钟

随着 iOS 10.3 的正式发布,数百万设备即将升级为使用Apple 的全新文件系统 APFS 。然而根据多方评论,这是一次大胆,同时暗藏一定风险的举措。

APFS 亮相于去年 WWDC,InfoQ 也对其进行了报道,该文件系统将取代最初伴随Mac OS 8.1问世,沿用将近20 年的老旧HFS+ 文件系统。APFS 增加了与 ZFS HAMMER 类似的大量新功能,包括对加密、写入时复制、灵活的分区、快照、原子化保存等功能提供了更好的支持。

与曾经安装过 iOS 10.3 测试版的开发者类似,在自己设备上安装 10.3 正式版的用户也会面临一个极为漫长的升级过程,似乎是因为要对文件系统进行转换,截至撰写本文时尚未听说这一过程出现过什么重大已知问题。

有趣的是,这是APFS 首次正式登场,之前该文件系统仅通过开发者预览的形式出现在macOS Sierra 中,并且包含诸多局限,例如无法将APFS 格式的磁盘用作启动磁盘。因此Apple 决定通过推送文件系统转换操作让上千万设备同时使用该文件系统,这一决定让人有些吃惊,毕竟这会导致任何潜在的问题被无限放大。正如Ars Technica 的Andrew Cunningham所说,考虑到Apple 实际上控制着整个iOS 平台,对于该平台所用硬件和分区架构的所有细节了然于胸,这一举措似乎显得很合理。此外iOS 设备封闭的本质也使得未越狱用户基本不可能破坏掉设备的存储系统,这也让转换的效果更为可控。

然而这并不意味着升级到APFS 的所有用户都不会遇到任何非预期的后果。macOS 和iOS 开发者Michael Tsai 在他的博客中写到,一些因素导致APFS 与HFS+ 之间存在一些固有的冲突,例如APFS 并不会对Unicode 文件名进行标准化,并且APFS 允许同一个目录下使用多个同名文件,而仅名称字符的大小写有所差异。InfoQ 也将密切关注此类问题,如果有任何有趣的发现将在第一时间报道。

尽管技术上可以做到使用对用户来说完全透明的方式升级文件系统,但Reddit 用户 applishish 介绍说,迁移工作实际上并未实际移动数据,而是直接将 APFS 元数据写入 HFS+ 的可用空间。这种方法的优势在于,如果转换过程中出现任何错误,用户依然具备一个可用的 HFS+ 分区。在同一个帖子中,Reddit 用户 1337Gandalf 称,Apple 的此番举措让人回想起 Microsoft 在推广 Windows XP 时应对 FAT32 卷升级未 NTFS 文件系统时的做法,不过当时用户可以自行选择是否要在升级系统的过程中同时升级到NTFS 文件系统。

阅读英文原文 Apple Quietly Upgrades the File System of Millions of iOS Devices

2017-03-31 19:004971
用户头像

发布了 283 篇内容, 共 109.6 次阅读, 收获喜欢 62 次。

关注

评论

发布
暂无评论
发现更多内容

处理 Exception 的几种实践,很优雅,被很多团队采纳!

xcbeyond

Java 异常处理 28天写作

使用 Tye 辅助开发 k8s 应用竟如此简单(五)

newbe36524

微服务 netcore 全链路追踪 dotnet dapr

圈子创业

张老蔫

28天写作

悟透前端 | javascript数组之includes、reduce

devpoint

ES6 includes reduce

产品经理训练营-第五周学习总结

月亮 😝

程序员的职业生涯与赛道选择

刘旭东

职业规划 码农 职业生涯

极客大学·产品经理训练营·第四章作业(第五周)

二大爷

极客大学产品经理训练营

gRPC库C++构建及示例

长不胖的Garfield

c++ gRPC

深度集成 Flink: Apache Iceberg 0.11.0 最新功能解读

DataFunTalk

2021金三银四必备:Java后端开发面试总结【25个技术专题】

比伯

Java 编程 架构 面试 计算机

AI数学基础之:奇异值和奇异值分解

程序那些事

人工智能 机器学习 程序那些事 矩阵运算

【计算机内功修炼】九:程序员应如何理解协程

码农的荒岛求生

线程 操作系统 进程 协程

框架效应如何影响人的决策?「Day 4」

道伟

心理 决策 28天写作

翻译:《实用的Python编程》02_04_Sequences

codists

Python 人工智能 面试 数据结构与算法 序列

保持前进

Nydia

【编程小白福利】办公自动化--从VBA到Python

IT蜗壳-Tango

七日更 28天写作 2月春节不断更 办公自动化 IT蜗壳

流程图

王一凡

产品经理训练营 - 第五次作业

Jophie

产品经理训练营

Linux c 开发 - 内存管理器ptmalloc

赖猫

Linux 后台开发 内存管理

28天瞎写的第二百四十二天:正念冥想,我要想什么?

树上

冥想 28天写作 正念

第十三周命题作业

cc

Elasticsearch Validate API

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 二月春节不断更

第十三周学习心得

cc

改变认知,到写作方式的改变

数列科技杨德华

28天写作

产品经理训练营-第五周作业

月亮 😝

「产品经理训练营」第五周 作业记录

周玲

面试中经常问到的动态代理到底是什么

废材姑娘

Java

将上周写的用例画成流程图-第四章,第三讲

mas

作业5

瑾瑾呀

一名青少年创客导师

厌倦你

编程

地表建筑物识别 Dayo2

IT蜗壳-Tango

七日更 28天写作 2月春节不断更

Apple静悄悄地升级了数百万iOS设备的文件系统_移动_Sergio De Simone_InfoQ精选文章