FreeBSD 中文社区翻译文章存档
FreeBSD 中文社区
  • FreeBSD 网络文章集锦
  • 2025 年
    • BSD 许可证一览
    • FreeBSD 上的 ZFS 日志压缩
    • 为 FreeBSD 发声:FOSDEM 2025 参会报告
    • zfs 速查手册
    • FreeBSD 开发计划
    • 谁在使用 FreeBSD(基金会官方版本)
    • FreeBSD 特色开发项目
    • 如何将基于 Electron 的应用程序移植到 FreeBSD
    • FreeBSD:原始操作系统发行版的火炬传承者
    • 浏览 FreeBSD 新的季度和两年一次发布计划
    • FreeBSD 日专访 BSD 守护神 Beastie
  • 2024 年 11 月
    • 苹果的开源基石:macOS 和 iOS 背后的 BSD 传统
    • 在动荡的开源世界中保持稳定:FreeBSD 的持久稳定性
    • 为什么你应该使用 FreeBSD
    • FreeBSD 13.4: 新特性及其发展历程
    • Quantum Leap Research 和 FreeBSD 基金会将投资 75 万美元以改善笔记本电脑支持和用户体验
    • 主权科技基金将投资 68.64 万欧元用于 FreeBSD 基础设施现代化
  • 2024 年 7 月
    • BSD 老将:Michael J. Karels 逝世,享年 68 岁
    • 讣告——Michael "Mike" John Karels
    • 配置自己的 VPN——基于 OpenBSD、Wireguard、IPv6 和广告拦截
    • 如何在 FreeBSD 中指定 CPU 类型
    • 使用 BIOS 引导和 UEFI 引导的 GPT 分区的区别和制作方法
    • 通过替换 ZFS 镜像池中的磁盘来扩容
    • 通过将 ZFS 池构建为镜像结构,消除异常数据的影响
    • ZFS 池破坏实验
    • FreeBSD ports 开发技术研究
    • FreeBSD pkg 命令概述
    • portsnap 被淘汰了,本应由 git 代替,但结果我发现自己用的是 got
    • ccache 在构建 FreeBSD 的 buildworld 时的效率
    • 关于对 FreeBSD 发布计划和生命周期的修订
  • 2023 年 12 月
    • FreeBSD 新手?来参与社区吧
    • 介绍来 FreeBSD 的学生
    • EuroBSDCon 2023 旅行报告——Bojan Novković
    • 什么是开发播客?FreeBSD 项目的演变
    • EuroBSDCon 2023 旅行报告——Mark Johnston
    • TalkDev:探索开源的未来
    • 为什么选择 FreeBSD?Metify 展示迁移到 FreeBSD 如何对两个新产品进行增强
    • FreeBSD 基金会宣布通过 SSDF 认证
    • 2023 年全球开放大会报告
    • FreeBSD v14:恪守类 Unix 操作系统传统,提升安全性与性能
  • 2023 年 9 月
    • 认识 2023 年参与 FreeBSD 谷歌编程之夏项目的学生:Soobin Rho
    • 认识 2023 年参与 FreeBSD 谷歌编程之夏项目的学生:Aymeric Wibo
    • FreeBSD 企业工作组首次会议总结
    • 认识 2023 年 FreeBSD 谷歌编程之夏的学生:Sudhanshu Mohan Kashyap
    • 认识 2023 年夏季滑铁卢大学合作学生:Naman Sood
    • FreeBSD 基金会 2023 年暑期实习生:Jake Freeland
    • 第二次企业工作组会议回顾
    • OpenBSD 与 FreeBSD:有何不同,哪个更好?
  • 2023 年 9 月以前
    • 在 FreeBSD 的 jail 中安装 NextCloud
    • 参与宣传:2023 年 5 月的 FreeBSD 开发者峰会和 BSDCan
    • 恭喜 FreeBSD 迎来 30 周年!为什么开源项目 FreeBSD 能够持续存在
    • 庆祝 FreeBSD 成立 30 周年:许可证
    • 聚集在开放领域工作的公益和慈善基金会
    • 在 Linode 上安装 pfSense
    • 在 FreeBSD 的 jail 中安装 NextCloud
    • 将 FreeBSD 上的 Ansible 主机和客户机都安装在 Jail 中
    • FreeBSD 简介 | BSD.pw 研讨会
    • 如何在 FreeBSD 上安装 Python
    • 升级到 FreeBSD 13.2 的十大理由
    • 采访 FreeBSD 基金会执行董事 Deb Goodkin
    • 我们使用开源的 FreeBSD 作为企业操作系统的 5 个原因
    • 关于 BSD 与 Linux 的典型讨论
    • OpenBSD 太棒了
    • systemd 背后的真正动机
    • systemd 在任何地方都不安全
    • 为什么你应该将所有东西从 Linux 迁移到 BSD
    • 如何在 FreeBSD 上设置一个简单且实际工作的 WireGuard 服务器
    • 选择 FreeBSD 而非 GNU/Linux 的技术性原因
    • GPL 之殇
    • FreeBSD 与研究社区
    • 在 OpenBSD 和 FreeBSD 之间选择的区别
    • FreeBSD 是一个令人惊叹的操作系统
    • 留意日期:2023 年 11 月的自由软件组织厂商峰会
    • JENNY 日常使用的系统:FreeBSD 13.2
    • FreeBSD Ports 中的 OPTIONS 功能介绍——使用 OPTIONS_SET/OPTIONS_UNSET/NO_DIALOG 进行操作和实践
    • FreeBSD Bhyve 上的 PCI 直通
    • 2023 年 FreebBSD 谷歌编程之夏学生介绍:Raghav Sharma
    • 2023 年 7 月软件开发项目进展报道
    • 用于研究的 FreeBSD:CHERI/Morello
    • 在 FreeBSD Jail 中使用 OpenRC 启动并运行 Devuan GNU+Linux 系统
由 GitBook 提供支持

FreeBSD 中文社区

在本页
  • 引言
  • 注意事项
  • CPUTYPE(amd64 环境及 i386 环境)

这有帮助吗?

在GitHub上编辑
导出为 PDF
  1. 2024 年 7 月

如何在 FreeBSD 中指定 CPU 类型

上一页配置自己的 VPN——基于 OpenBSD、Wireguard、IPv6 和广告拦截下一页使用 BIOS 引导和 UEFI 引导的 GPT 分区的区别和制作方法

最后更新于11天前

这有帮助吗?

  • 作者:重村法克

  • 发布于 2021 年 03 月 11 日,最后更新于 2021 年 03 月 18 日

引言

在研究如何指定 CPUTYPE 的方法时[1],我突然想起自己从没看过相关的日文文档……于是下定决心,打算留下这份研究笔记。

这个指定方式基本上是不断追加的,因此我打算针对每个操作系统版本,调查 bsd.cpu.mk[1] 的差异。为了便于参考,这里也列出我已经研究过的版本。另外,区分大小写。

如果你正在使用最新的 CPU,而表中没有列出该型号,请指定最接近的一代 CPUTYPE。因为大多数 CPU 都继承了旧架构的功能[2],所以应该不会生成报错信息。

那么,CPUTYPE 是什么呢?它是在 /etc/make.conf 中使用的变量,用于指定你当前所使用的 CPU,这样在编译时就可以生成针对该 CPU 优化的代码。对于使用软件包系统管理的人来说,这个设置基本没有关系[3]。

注意事项

  • 这里列出的内容,并不保证可以针对旧的 CPU 架构进行编译。

  • 特别是在编译器从 GCC 4 迁移到 LLVM 的过程中,可能出现原本还能用的 CPUTYPE 无法使用的情况。

  • 本文从 10.0-RELEASE 开始进行调查,更旧的版本将不予调查。

  • 其他架构方面怎么办呢……因为存在各种复杂关系和前后顺序问题[4],所以不太容易说明。

  • 比如其他架构有些已经移除(如 IA64、SPARC64),也有新增(如 AARCH64、RISC-V)等各种变化。

CPUTYPE(amd64 环境及 i386 环境)

※已调查版本:13.0、12.2、12.1、12.0、11.4、11.3、11.2、11.1、11.0、10.4、10.3、10.2、10.1、10.0

  • 尽量将较新的项目排在前面

  • 想要区分 amd64/i386 通用的 CPU 与仅支持 i386 的 CPU

  • 像“Opteron 支持 SSE3 的时候是哪代?”、“Blue Lightning 啊 Cyrix 啊 NexGen 啊,这些满满的回忆都去哪了!”……等等。

导入版本
CPUTYPE(别名)
CPU 代号(架构名称)
备注

13.0

tigerlake

Intel Tiger Lake

13.0

cooperlake

Intel Cooper Lake

13.0

cascadelake

Intel Cascade Lake

11.3 / 12.1

icelake-server

Intel Ice Lake-SP

11.3 / 12.1

icelake-client

Intel Ice Lake

11.2 / 12.1

cannonlake

Intel Cannon Lake

11.3 / 12.1

skylake-avx512(skx)

Intel Skylake

11.2

skylake-avx512

Intel Skylake

11.0

skylake

Intel Skylake

11.0

broadwell

Intel Broadwell

11.0

haswell(core-avx2)

Intel Haswell

11.0

ivybridge(core-avx-i)

Intel IvyBridge

11.0

sandybridge(corei7-avx)

Intel SandyBridge

10.0

core-avx-i

Intel IvyBridge

10.0

corei7-avx

Intel SandyBridge

13.0

znver2

AMD Zen2

11.2

znver1

AMD Zen

11.0

bdver4

AMD Excavator

10.1

bdver3

AMD Steamroller

10.0

bdver2

AMD Piledriver

10.0

bdver1

AMD Bulldozer

13.0

btver2

AMD Jaguar

10.0

btver1

AMD Bobcat

11.3 / 12.1

tremont

Intel Tremont

11.3 / 12.1

goldmont-plus

Intel Goldmont+

11.2

goldmont

Intel Goldmont

11.0

silvermont(slm)

Intel Silvermont

10.1

slm

Intel Silvermont

11.0

bonnell(atom)

Intel Bonnell

10.0

atom

Intel Bonnell

11.2 / 12.1

knm

Intel Knights Mill

11.0

knl

Intel Knights Landing

10.0

penryn

Intel Penryn

10.0

core2

Intel Core2

10.0

westmere

Intel Westmere

10.0

nehalem(corei7)

Intel Nehalem

10.0

yonah

Intel Yonah

10.0

prescott(core)

Intel Prescott

10.0

nocona(prescott)

Intel Nocona

在 amd64 环境中,prescott 被视为 nocona

10.0

pentium4(p4)

Intel Pentium 4

10.0

pentium4m(p4m)

Intel Pentium 4M

10.0

pentium3(p3)

Intel Pentium 3

10.0

pentium3m(p3m)

Intel Pentium 3M

10.0

pentium-m(p-m)

Intel Pentium M

10.0

pentium2(p2)

Intel Pentium 2

10.0

pentiumpro(i686)

Intel Pentium Pro

FreeBSD 13/i386 的最低要求

10.0

pentium-mmx(i586/mmx)

Intel Pentium MMX

10.0

pentium(i586)

Intel Pentium

10.0

i486

Intel i80486

10.0

i386

Intel i80386

10.0

opteron-sse3

AMD Opteron

10.0

athlon64-sse3

AMD Athlon64

10.0

k8-sse3

AMD K8

10.0

opteron

AMD Opteron

10.0

amdfam10(barcelona)

AMD K10

10.0

athlon64

AMD Athlon64

10.0

athlon-fx

AMD Athlon FX

10.0

athlon-mp

AMD Athlon MP

10.0

athlon-xp

AMD Athlon XP

10.0

athlon-4

AMD Athlon 4

10.0

x86-64

AMD Opteron

FreeBSD/amd64 的最低要求

10.0

k8

AMD K8

11.0

athlon(k7)

AMD Athlon

10.0

athlon

AMD Athlon

10.0

athlon-tbird

AMD Athlon Thunderbird

10.0

k7

AMD K7

10.0

k6

AMD K6

10.0

k6-2

AMD K6-2

10.0

k6-3

AMD K6-3

10.0

geode

NSC Geode

10.0

k5

AMD K5

与 pentium 处理类似(不确定是否为别名)

10.0

crusoe

Transmeta Crusoe

10.0

c7

VIA C7

与 c3-m 处理类似

10.0

c3-2

VIA C3-2

10.0

c3

VIA C3

10.0

winchip2

Centaur WinChip 2

10.0

winchip2-c6

Centaur WinChip C6

  1. /usr/share/mk/bsd.cpu.mk

  2. 有些架构会偶尔回归到原点。

  3. 因为它们会根据包构建系统中指定的 CPUTYPE 进行编译。

  4. 向上兼容和向下兼容的关系。

FreeBSDでのCPUTYPEの指定方法