FreeBSD

FreeBSD src/ r240000

(最后修改: Development #FreeBSD #SVN #Version Control

Alan L. Cox 今天 commit 了 r240000。我记得刚换 svn 的那会才18到19万 revision 的样子。。。

FreeBSD 的 svn 代码库包括了从 1993 年 6 月 12 日到现在的全部 revision。与之前的 “n"cvs 不同(由于诉讼原因,FreeBSD 在 1994 年以 4.4-Lite 为基础重建了新的 cvs 代码库,也就是 2.x 和后来版本的 ncvs;早期代码库仍然可以在一些光盘出版物上找到),这套代码库包括了 FreeBSD 从一开始到现在的全部修订历史(不过,FreeBSD 2.0 之前的 tag 并未保留)。

参与评论

Asus笔记本安装 FreeBSD 笔记

(最后修改: Hardware #Asus #laptop #FreeBSD

祸不单行。继 老婆 笔记本坏掉之后,我的也在周一突然坏掉了。因为已经过保,找来 Dell 的维修手册做了初步诊断之后认为是主板问题,简单尝试了下没有修好,所以找老板商量,暂时买了一台 Asus G75VW 来用。

阅读全文… ( 本文约 584 字,阅读大致需要 2 分钟 )

GNU libtool 和 FreeBSD 10

(最后修改: Development #GNU libtool #FreeBSD #compiler

FreeBSD 开始用 10 以上的版本号有一段时间了。这个变动立刻导致了大量 ports 无法编译,多数情况下是因为开发者采用了较早版本的 libtool 导致的,具体来说,是类似下面的代码:

阅读全文… ( 本文约 198 字,阅读大致需要 1 分钟 )

FreeBSD 的 strlen(3)

(最后修改: Kernel #FreeBSD #strlen #C programming

之前只有一篇关于较早版本的 strlen(3) 实现的笔记,这里补上我在 2010 年做的新增改进。

与 Pascal 等语言不同,C 的字符串并不保存串的长度,而是在字符串末尾以 nul 字符(’\0’)来表示字符串结束。这个设计决策是上世纪 60 年代作出的,有都市传说是为了省几个字节的空间,不过我个人认为也可能是因为汇编里面到处都是判断是否碰到了 0 的操作。不管怎么说,这个设计令 strlen 变成了一个 O(n) 的操作。

阅读全文… ( 本文约 1364 字,阅读大致需要 3 分钟 )

远程升级 FreeBSD 系统备忘

(最后修改: Cheatsheets #FreeBSD #Upgrade #remote administration

📜 历史文件已不具备现实意义

目前(2020)的最佳实践是使用 etcupdate 和 package。本文内容已过时。

最近两次失败记录的教训。

首先是联编 world 和 kernel (make buildworld buildkernel),这个没啥可说的。假定 / 是 UFS(即,可使用 nextboot),且配置了 watchdog,则操作步骤为:

阅读全文… ( 本文约 355 字,阅读大致需要 1 分钟 )

全盘加密

(最后修改: Security #Cryptography #FDE #GEOM_ELI

最近在琢磨一个产品里实现全盘加密的问题,简单来说就是加入存储卷的硬盘存储的是完全加密的数据。对于保存机密数据(例如患者数据)的存储设备来说,这一点十分重要,举例来说,如果硬盘出现故障,OP可以直接把硬盘拆下送回厂商,而不是必须做抹除数据的动作。

阅读全文… ( 本文约 264 字,阅读大致需要 1 分钟 )

delphijfork 9.0

(最后修改: Kernel #FreeBSD #kernel #customization

可以在 这里 下载。

和过去一样,风险自担 USE AT YOUR OWN RISK!

和 FreeBSD 9.0-RELEASE 相比的改动:

  • 修正了一组 tmpfs 的 bug;
  • 针对 nullfs、 devfs 的可靠性改进;
  • “skeljail”;
  • top(1) 默认显示每个CPU的占用比例;
  • 针对 powerd 的多处理器支持;
  • 对 IPv4 流量分 IP 进行统计【注意,由于上锁开销,此改动会略微降低IPv4性能】;
  • 重启时设置 watchdog;
  • 改善 csh 可用性配置;
  • 预设将共享内存绑在主存内;
  • Winbond watchdog 驱动;
  • 对虚拟化环境默认不测试内存;
  • 修正 NEW_PCIB 导致某些硬件问题的bug;
  • 一系列 ZFS 相关改进;
  • 减少 AHCI 上下文切换开销,高负载状态可达 3.8%;
  • 一组 VM 性能改进,提高了异步操作以及 msync 情形的性能;
  • 改善了 NFS 服务器预取的顺序读性能;
  • 等等。
参与评论