Bài viết

VNLFVNLF Social
?
Đăng nhậpĐể dùng đầy đủ tính năng
Bảng tinKhám pháTin nhắnVoiceHỗ trợ CaramOS
VNLF trên các mạng xã hội khác
Cài đặtTrợ giúpĐăng nhập
Giao diện
Bảng tinKhám pháTin nhắnVoice
Article19 phút đọc

ReiserFS Và Bi Kịch Của Hans Reiser: Khi Thiên Tài Hệ Thống Tệp Tự Xóa Sổ Chính Mình

ReiserFS Và Bi Kịch Của Hans Reiser: Khi Thiên Tài Hệ Thống Tệp Tự Xóa Sổ Chính Mình Vào ngày 21 tháng 11 năm 2024, cha đẻ của Linux là Linus Torvalds đã chính thức gộp bản vá xóa bỏ hoàn toàn ReiserFS khỏi nhánh phát tr

random usericon firefox cổ@anhdeface

ReiserFS Và Bi Kịch Của Hans Reiser: Khi Thiên Tài Hệ Thống Tệp Tự Xóa Sổ Chính Mình

Vào ngày 21 tháng 11 năm 2024, cha đẻ của Linux là Linus Torvalds đã chính thức gộp bản vá xóa bỏ hoàn toàn ReiserFS khỏi nhánh phát triển Linux Kernel 6.13, nhẹ nhàng cắt bỏ 32.800 dòng mã nguồn từng làm thay đổi lịch sử hệ điều hành mã nguồn mở. Sự kiện này khép lại hành trình 23 năm của hệ thống tệp ghi nhật ký (journaling filesystem) đầu tiên từng được đưa vào nhân Linux chuẩn, đồng thời đặt dấu chấm hết cho di sản công nghệ của Hans Reiser — một thiên tài lập trình đang thụ án chung thân tại California vì tội ác sát hại chính người vợ của mình.

Câu chuyện về ReiserFS không chỉ là một biên niên sử kỹ thuật về cấu trúc cây B+ (B+ tree), thuật toán đóng gói đuôi tệp (tail packing) hay những cuộc tranh luận nảy lửa trên danh sách thư của nhân Linux (LKML). Đó là bi kịch có thật về ranh giới mong manh giữa sự xuất chúng cực đoan và sự hủy diệt nhân tính, để lại một chữ "Giá như" đầy ám ảnh trong lịch sử phần mềm tự do.


ReiserFS Giải Quyết Triệt Để Cơn Ác Mộng Phân Mảnh Và Mất Điện Của Thập Niên 1990

Để hiểu vì sao sự xuất hiện của ReiserFS vào năm 2001 lại tạo nên một cơn địa chấn, chúng ta cần quay ngược về bối cảnh Linux cuối thập niên 1990. Thời điểm đó, hệ thống tệp tiêu chuẩn của Linux là ext2 bộc lộ hai điểm yếu chí mạng khi quy mô dữ liệu bắt đầu bùng nổ:

  1. Thời gian kiểm tra ổ đĩa (fsck) kéo dài hàng giờ sau mỗi sự cố mất điện: Hệ thống ext2 không có cơ chế ghi nhật ký giao dịch (journaling). Khi máy chủ bị sập nguồn đột ngột giữa lúc đang ghi tệp, siêu dữ liệu (metadata) rơi vào trạng thái bất nhất. Khi khởi động lại, trình kiểm tra fsck buộc phải quét toàn bộ cấu trúc đĩa từ đầu đến cuối — một quá trình có thể ngốn hàng giờ đồng hồ hoặc cả ngày trời trên các ổ cứng dung lượng lớn, theo phân tích từ CoRecursive Podcast.

  2. Sự suy giảm hiệu năng nghiêm trọng trên các thư mục lớn: Các hệ thống tệp lấy cảm hứng từ Berkeley FFS như ext2 sử dụng công thức cố định để tính toán vị trí inode và lưu trữ danh mục thư mục dưới dạng danh sách liên kết tuyến tính (linear linked list). Khi một thư mục chứa hàng chục nghìn tệp nhỏ, mọi thao tác tìm kiếm hay cập nhật đều tốn thời gian tuyến tính $O(n)$, khiến hệ thống gần như đóng băng.

Kiến Trúc Cây B+ Hợp Nhất (Single Combined B+ Tree) Tối Ưu Hóa Bộ Nhớ Đệm

Khác với thiết kế tách rời bảng inode và dữ liệu thư mục truyền thống, ReiserFS gom toàn bộ siêu dữ liệu tệp (stat items), các mục thư mục (directory items), danh sách con trỏ khối dữ liệu (indirect items), và cả nội dung của các tệp nhỏ (direct items) vào một cấu trúc Cây B+ (B+ Tree) hợp nhất duy nhất, được định danh thông qua một khóa đối tượng toàn cục (universal object ID).

Trong bài báo kỹ thuật xuất bản trên Linux Journal (tháng 5/2003), Hans Reiser đã giải thích nền tảng toán học đằng sau quyết định chọn Cây B+ (B+ Tree) thay vì Cây B (B-Tree) truyền thống thông qua khái niệm "Nhiệt độ bộ nhớ đệm" (Cache Temperature):

"Nếu hai loại dữ liệu có nhiệt độ truy cập trung bình khác nhau, việc tách biệt chúng vào các nút (nodes) riêng biệt sẽ làm tăng hiệu quả sử dụng bộ nhớ đệm (RAM). Các con trỏ dẫn tới nút thường được truy cập nhiều hơn khoảng hai bậc độ lớn (gấp 100 lần) trên mỗi byte dung lượng so với bản thân dữ liệu tệp."

Bằng cách chỉ lưu trữ các khóa phân giới (delimiting keys) và con trỏ nút (node pointers) ở các nút nội bộ (formatted internal blocks) và đẩy toàn bộ dữ liệu thực tế xuống nút lá (formatted leaf blocks), ReiserFS tối đa hóa tỷ lệ phân nhánh (fanout) của cây. Nhờ số lượng nút nội bộ cực nhỏ, hệ điều hành có thể giữ gần như toàn bộ phần khung điều hướng của cây B+ nằm thường trực trong bộ nhớ RAM, biến các thao tác tra cứu thư mục khổng lồ thành phép tìm kiếm logarit $O(\log n)$ cực nhanh mà hầu như không tốn thêm lượt đọc đĩa cơ học (disk seek).

Kỹ Thuật Tail Packing Và Journaling Thay Đổi Cuộc Chơi Lưu Trữ Tệp Nhỏ

Bên cạnh cấu trúc cây B+, ReiserFS mang đến hai vũ khí kỹ thuật vượt thời đại khi chính thức bước vào nhân Linux 2.4.1 vào tháng 1 năm 2001:

  • Hệ thống tệp Journaling đầu tiên trong Mainline Linux: Trước khi thực hiện các thay đổi cấu trúc lên cây B+ chính, ReiserFS ghi lại ý định giao dịch siêu dữ liệu vào một vùng nhật ký tuần tự (journal). Nếu mất điện xảy ra, hệ thống chỉ cần phát lại (replay) các giao dịch trong journal chỉ trong vài giây thay vì phải quét lại toàn bộ ổ đĩa.

  • Đóng gói phần đuôi tệp (Tail Packing / Block Suballocation): Hầu hết hệ thống tệp chia ổ đĩa thành các khối cố định (thường là 4 KiB). Nếu bạn lưu một tệp cấu hình hoặc email chỉ nặng 100 bytes, hệ thống tệp truyền thống vẫn phải cấp phát nguyên một khối 4 KiB, gây lãng phí hơn 97% dung lượng (hiện tượng phân mảnh nội bộ — internal fragmentation). ReiserFS giải quyết triệt để bài toán này bằng cách gom các tệp nhỏ hoặc phần dư cuối cùng ("đuôi" — tails) của nhiều tệp lớn vào chung một nút lá (formatted leaf block), xếp nối tiếp nhau (packed end-to-end). Khi xử lý các tác vụ chứa hàng triệu tệp dưới 4 KiB (như máy chủ thư điện tử, bộ đệm web hoặc kho mã nguồn), ReiserFS không chỉ tiết kiệm hàng gigabyte dung lượng đĩa mà còn đạt tốc độ vượt trội so với ext2 và ext3.


Những Khiếm Khuyết Kỹ Thuật Chí Mạng Và Tham Vọng Dang Dở Mang Tên Reiser4

Dù rực rỡ ở thời kỳ đầu, thiết kế của ReiserFS v3 (3.6) bắt đầu bộc lộ những vết nứt nghiêm trọng khi phần cứng máy chủ chuyển mình sang kỷ nguyên đa nhân và dung lượng lớn:

  • Sự phụ thuộc vào Khóa nhân toàn cục (Big Kernel Lock - BKL): Cho đến tận trước phiên bản Linux 2.6.33, mã nguồn ReiserFS dựa dẫm nặng nề vào BKL — một cơ chế khóa toàn cục chỉ cho phép duy nhất một nhân CPU thực thi các đoạn mã крити (critical sections) tại một thời điểm. Khi máy chủ nhiều nhân (multi-core SMP) trở thành tiêu chuẩn, ReiserFS lập tức trở thành nút cổ chai hiệu năng.

  • Nguy cơ mất dữ liệu với các thao tác thư mục bất đồng bộ: Một số lệnh hệ thống tác động lên thư mục như unlink(2) trong ReiserFS không được thực thi đồng bộ hoàn toàn, dẫn đến nguy cơ hỏng dữ liệu (corruption) trên các hệ thống chuyển tiếp thư điện tử (MTA) phụ thuộc vào khóa tệp như Postfix và qmail nếu máy chủ sập nguồn trước khi kịp đồng bộ đĩa.

  • Thảm họa thiết kế của trình cứu hộ reiserfsck --rebuild-tree: Đây là một trong những lỗi kiến trúc kỳ lạ nhất lịch sử hệ thống tệp. Khi cây B+ bị hỏng nặng, công cụ fsck của ReiserFS v3 có khả năng quét toàn bộ ổ đĩa để tìm các khối mang dấu hiệu định dạng của ReiserFS rồi dựng lại cây từ đầu. Tuy nhiên, vì ReiserFS không gắn định danh phân vùng duy nhất (FSID) vào từng khối siêu dữ liệu, nếu người dùng lưu một tệp ảnh đĩa (disk image) hoặc bản sao lưu định dạng ReiserFS nằm bên trong phân vùng ReiserFS thật, trình rebuild-tree sẽ đọc xuyên vào bên trong tệp ảnh đó, nhầm lẫn các nút cây của máy ảo với nút cây của máy chủ thật và trộn lẫn chúng lại với nhau — phá hủy hoàn toàn cấu trúc thư mục gốc.

Bước Nhảy Vọt Sang Reiser4: Cây Nhảy Múa (Dancing Trees) Và Nhật Ký Du Mục (Wandering Logs)

Thay vì kiên nhẫn vá lỗi kiến trúc cho phiên bản v3, Hans Reiser cùng công ty Namesys (với sự tài trợ từ cơ quan quốc phòng DARPA và Linspire) đã quyết định đập đi xây lại từ con số không để tạo ra Reiser4 vào năm 2004.

Trong Reiser4, Hans giới thiệu hai khái niệm cực kỳ táo bạo:

  • Dancing Trees (Cây nhảy múa): Trong các cơ sở dữ liệu dùng cây B+ truyền thống, mỗi khi thêm hoặc xóa một mục dữ liệu làm nút bị đầy hoặc quá thưa, hệ thống lập tức tách hoặc gộp nút để giữ cân bằng không gian — gây ra lượng thao tác ghi đĩa (I/O) dư thừa khổng lồ. Với Dancing Trees, Reiser4 cho phép các nút trong bộ nhớ RAM ở trạng thái "chưa tối ưu" và chỉ thực hiện việc gộp/cân bằng cây một lần duy nhất khi có áp lực bộ nhớ hoặc khi xả giao dịch xuống đĩa (allocate-on-flush).

  • EOTTL (Extents on the Twig Level): Như Hans phân tích trên Linux Journal, ReiserFS v3 lưu các con trỏ khối của tệp lớn (BLOBs) ở tầng nút lá (level 1), vô tình biến các khối dữ liệu thực tế thành một "tầng hầm" bất đối xứng và làm loãng bộ nhớ đệm. Reiser4 khắc phục triệt để bằng cách đưa các con trỏ vùng dữ liệu liên tục (extents) lên tầng cành (twig level — ngay trên nút lá). Kết quả thực nghiệm cho thấy để lưu trữ toàn bộ 188 MB cây mã nguồn Linux 2.4.1, số lượng nút nội bộ cần thiết giảm từ 1.629 nút trên ReiserFS v3 xuống chỉ còn 164 nút trên Reiser4.


Từ Đỉnh Cao Hoàng Kim Trên SUSE Linux Đến Cuộc Chiến Chính Trị Nảy Lửa Trong Cộng Đồng Kernel

Con đường sự nghiệp của Hans Reiser luôn mang màu sắc của một kẻ dị biệt chống lại hệ thống. Sinh năm 1963 tại Oakland, California, Hans bỏ học cấp hai từ năm 13 tuổi vì khinh thường hệ thống giáo dục trường lớp cứng nhắc, sau đó được nhận vào Đại học California, Berkeley (UC Berkeley) khi mới 15 tuổi. Tại đây, ông theo đuổi chuyên ngành tự thiết kế mang tên "Systematizing" (Hệ thống hóa) và mất hơn một thập kỷ ngắt quãng mới lấy bằng cử nhân Khoa học Máy tính vào năm 1992 ở tuổi 28.

Năm 1993, ngay sau khi Liên Xô tan rã, Hans đọc được thông tin về việc nhiều nhà toán học và lập trình viên kiệt xuất tại Nga đang phải làm việc với mức lương rẻ mạt. Ông lập tức bay sang Moscow với chiếc mũ cao bồi đặc trưng trên đầu, tuyển dụng một đội ngũ kỹ sư tinh nhuệ người Nga và thành lập công ty Namesys.

Giai đoạn 2000–2005 là đỉnh cao danh vọng của Hans Reiser:

  • Năm 2000, bản phân phối doanh nghiệp danh tiếng SUSE Linux (từ phiên bản 6.4) đã chọn ReiserFS làm hệ thống tệp mặc định, đặt cược uy tín thương mại của mình vào công nghệ của Namesys.

  • Tháng 1 năm 2001, ReiserFS đánh bại các đối thủ nặng ký như XFS (của SGI) và JFS (của IBM) để trở thành hệ thống tệp Journaling đầu tiên được tích hợp chính thức vào nhân Linux 2.4.1.

Thế nhưng, chính tính cách ngạo mạn và sự thiếu hụt kỹ năng hợp tác đã đẩy Hans vào thế đối đầu trực diện với cộng đồng phát triển nhân Linux khi ông cố gắng đưa Reiser4 vào mainline giai đoạn 2004–2006. Hans muốn biến Reiser4 thành một "hệ sinh thái plugin" thu nhỏ ngay bên trong hệ thống tệp để hợp nhất mọi không gian tên (namespaces). Tuy nhiên, Linus Torvalds và các kỹ sư trụ cột của Linux kịch liệt phản đối vì kiến trúc plugin của Reiser4 đi ngược lại lớp trừu tượng VFS (Virtual File System) chuẩn của nhân và mã nguồn quá phức tạp để cộng đồng cùng bảo trì.

Khi bị yêu cầu chỉnh sửa mã nguồn theo chuẩn chung, Hans đã đáp trả bằng sự khinh miệt công khai trên danh sách thư LKML, được trích dẫn lại trên CoRecursive:

"Điều gì khiến các người nghĩ rằng các nhà phát triển kernel có sự thấu hiểu sâu sắc về giá trị của tính kết nối trong hệ điều hành? Họ không hề có. Một nhà phát triển kernel trung bình không lấy gì làm thông minh cho lắm."

Sự bất hợp tác của Hans đối với việc sửa lỗi trên ReiserFS v3 (vì ông chỉ muốn ép mọi người chuyển sang Reiser4) đã làm cạn kiệt sự kiên nhẫn của đồng minh lớn nhất. Ngày 14 tháng 9 năm 2006, kỹ sư Jeff Mahoney của SUSE đăng đề xuất chuyển hệ thống tệp mặc định của SUSE Linux Enterprise 10.2 và openSUSE 11 từ ReiserFS sang ext3 với lý do vấn đề khả năng mở rộng, lỗi hiệu năng với ACL/Extended Attributes và cộng đồng phát triển ngày càng thu hẹp. Trớ trêu thay, thời điểm SUSE tuyên bố rời bỏ ReiserFS cũng chính là lúc bi kịch đẫm máu ngoài đời thực của Hans Reiser vừa diễn ra được đúng 11 ngày.


Cái Kết Tàn Nhẫn Của Một Thiên Tài: Vụ Án Mạng Đồi Oakland Và Bản Án Chung Thân

Năm 1998, trong một chuyến công tác tại Saint Petersburg (Nga), Hans Reiser thuê một nữ bác sĩ sản phụ khoa trẻ tuổi tên là Nina Sharanova làm phiên dịch viên để gặp một cô gái trong danh mục cô dâu qua thư, nhưng cuối cùng Hans lại phải lòng chính người phiên dịch của mình và kết hôn với Nina chỉ sau 5 tháng, theo hồ sơ về Hans Reiser. Họ có với nhau hai người con là Rory và Nio.

Tuy nhiên, cuộc hôn nhân nhanh chóng trượt dài vào bi kịch. Trong khi Hans triền miên ở Nga để theo đuổi giấc mơ thống trị thế giới hệ thống tệp, Nina phải một mình xoay xở nơi đất khách quê người và khao khát ôn thi lấy chứng chỉ hành nghề bác sĩ tại Mỹ — điều mà Hans kịch liệt cấm đoán vì muốn vợ ở nhà sinh sáu đứa con. Tháng 5 năm 2004, hai người ly thân và Nina đệ đơn ly hôn, kéo theo một cuộc chiến giành quyền nuôi con và tranh chấp tài chính vô cùng căng thẳng.

Ngày 3 Tháng 9 Năm 2006: Sự Biến Mất Bí Ẩn Và Những Hành Vi Tự Tố Cáo

Chiều Chủ nhật ngày 3 tháng 9 năm 2006, Nina Reiser (lúc này 31 tuổi) lái chiếc Honda Odyssey đến căn nhà của mẹ Hans trên đường Exeter Drive thuộc vùng đồi Montclair, Oakland để giao hai con cho chồng cũ. Sau cánh cửa ngôi nhà đó, không ai còn nhìn thấy Nina bước ra nữa.

Một cuộc tranh cãi dữ dội đã nổ ra ngay trong khi hai đứa trẻ đang ở tầng dưới, và Hans Reiser đã dùng tay siết cổ Nina đến chết. Những gì diễn ra trong các ngày tiếp theo cho thấy một nghịch lý rùng rợn: một bộ óc từng thiết kế những thuật toán khôi phục dữ liệu tinh vi nhất thế giới lại xử lý hiện trường vụ án bằng sự vụng về và ngạo mạn đến khó tin:

  • Hàng xóm nhìn thấy Hans đứng xịt vòi nước rửa đường lái xe trước nhà suốt nửa tiếng đồng hồ ngay sau khi Nina mất tích.

  • Hans tháo toàn bộ ghế hành khách phía trước của chiếc xe Honda CRX (nơi phát hiện vết máu mang ADN của Nina), dùng nước xịt rửa sàn xe làm ngập ướt cả nội thất, đồng thời tháo cất ổ cứng máy tính và rút hàng nghìn đô la tiền mặt.

  • Khi cảnh sát Oakland tiến hành khám xét và bắt giữ Hans vào ngày 10 tháng 10 năm 2006, họ phát hiện trong xe ông có túi rác đen cỡ lớn, băng keo, găng tay, cùng hai cuốn sách viết về điều tra hiện trường các vụ án giết người.

Phiên Tòa 6 Tháng Và Lời Chỉ Điểm Lạnh Sống Lưng Tại Công Viên Redwood

Phiên tòa xét xử Hans Reiser bắt đầu vào tháng 11 năm 2007 tại Oakland và kéo dài suốt 6 tháng, thu hút sự chú ý của toàn bộ giới công nghệ. Theo tường thuật của phóng viên Henry K. Lee trên tờ SFGate (San Francisco Chronicle), bước ngoặt định mệnh của phiên tòa chính là 11 ngày Hans Reiser tự bước lên bục nhân chứng để bào chữa cho mình.

Thay vì thể hiện sự ăn năn hay đưa ra bằng chứng hợp lý, Hans liên tục vòng vo, ngắt lời luật sư của chính mình, công kích nhân cách người vợ đã khuất và tranh cãi tay đôi với công tố viên về từng câu chữ. Sự kiêu ngạo của Hans tại tòa đỉnh điểm đến mức Thẩm phán Larry Goodman của Tòa Thượng thẩm Quận Alameda phải thẳng thừng quát mắng ngay trước bồi thẩm đoàn:

"Anh thật thô lỗ. Anh thật ngạo mạn. Không có đủ từ ngữ trong tiếng Anh để mô tả con người anh. Anh đang cố biến phiên tòa này thành một trò hề."

Chỉ sau 3 ngày nghị án, vào ngày 28 tháng 4 năm 2008, bồi thẩm đoàn đã tuyên bố Hans Reiser phạm tội giết người cấp độ 1 (First-degree murder) với mức án đối mặt từ 25 năm tù đến chung thân — bất chấp việc cảnh sát vẫn chưa tìm thấy thi thể của Nina.

Đến lúc này, đứng trước bản án nặng nhất, Hans Reiser mới tung ra "con bài mặc cả" cuối cùng. Ông đề nghị một thỏa thuận nhận tội với văn phòng công tố: đổi lại việc được giảm án xuống giết người cấp độ 2 (Second-degree murder) với khung hình phạt 15 năm đến chung thân (không có quyền kháng cáo), Hans sẽ dẫn cảnh sát đến nơi chôn xác vợ.

Chiều ngày 7 tháng 7 năm 2008, trong vòng vây của đội đặc nhiệm SWAT vũ trang, Hans Reiser bị còng tay dẫn bộ dọc theo một lối mòn hẹp dành cho hươu nai tại Công viên Khu vực Redwood (Redwood Regional Park) trên đồi Oakland, cách nhà ông chưa đầy một dặm. Dừng lại giữa rừng thông và bạch đàn, Hans lạnh lùng chỉ tay xuống đất và nói câu nói đã đi vào lịch sử tội phạm học nước Mỹ, được ghi lại trên CoRecursive:

"Nếu các ông đào sâu xuống hai bộ (khoảng 60 cm), các ông sẽ chạm vào ngón chân của Nina."

Hài cốt của Nina Reiser được tìm thấy ngay tại vị trí đó. Ngày 29 tháng 8 năm 2008, Hans Reiser chính thức lĩnh án 15 năm đến chung thân. Tháng 7 năm 2012, trong một vụ kiện dân sự mà Hans tự làm luật sư đại diện cho chính mình và cố biện minh rằng ông giết vợ để "bảo vệ các con", bồi thẩm đoàn đã tuyên buộc Hans phải bồi thường 60 triệu USD cho hai người con của mình. Tính đến năm 2026, Hans Reiser (tù nhân số G31008) vẫn đang bị giam giữ tại cơ sở y tế trại giam California sau khi bị từ chối ân xá vào năm 2025, với phiên xét ân xá tiếp theo vào tháng 10 năm 2028.


Chữ "Giá Như" Đắt Giá Nhất Lịch Sử Mã Nguồn Mở Và Lời Thỉnh Cầu Cuối Cùng Từ Sau Song Sắt

Sự sụp đổ của Hans Reiser đã kéo sập toàn bộ đế chế Namesys vào đầu năm 2008 khi ông phải rao bán công ty để trả phí luật sư. Dù cựu kỹ sư của Namesys là Edward Shishkin vẫn kiên trì một mình duy trì các bản vá Reiser4 (và công bố nhánh thử nghiệm Reiser5 vào cuối năm 2019), không một tập đoàn lớn hay bản phân phối Linux nào còn muốn chạm vào một hệ thống tệp mang tên của một kẻ sát nhân và thiếu vắng sự hậu thuẫn doanh nghiệp. Khoảng trống mà ReiserFS để lại nhanh chóng được lấp đầy bởi sự trỗi dậy của ext4, XFS, và đặc biệt là Btrfs — một hệ thống tệp B-tree hiện đại được phát triển dựa trên tinh thần hợp tác mở.

Nhìn lại toàn bộ bi kịch của ReiserFS, giới công nghệ không khỏi day dứt trước ba chữ "Giá như":

  1. Giá như sự xuất chúng kỹ thuật không đi kèm với cái tôi độc tài: Trong bức thư dài 6.500 từ gửi qua trung gian tới danh sách thư LKML từ trong tù vào đầu năm 2024 (được trích dẫn trên CoRecursive và Phoronix), chính Hans Reiser ở tuổi ngoài 60 đã thừa nhận sai lầm lớn nhất đời làm nghề của mình:

    "Vấn đề của Reiser4 là nó không sử dụng lại những đoạn mã đã được viết bởi những người khác trong cộng đồng kernel, và con người ta không thích việc mã nguồn của họ bị gạt bỏ. Mọi người đều muốn cảm thấy mình được tôn trọng và thuộc về tập thể. Còn tôi lúc đó đã đáp lại nhu cầu xã hội của họ bằng cách phá hỏng tất cả."

  2. Giá như Reiser4 được phát triển bằng sự lắng nghe và chuẩn hóa: Những ý tưởng cốt lõi của Hans từ năm 2003 — từ Dancing Trees, trì hoãn cấp phát (allocate-on-flush), nén minh bạch cho đến việc biến hệ thống tệp thành một tầng lưu trữ bán cấu trúc có khả năng truy vấn — đều đi trước thời đại cả thập kỷ. Nếu Hans biết lùi một bước để tích hợp Reiser4 vào khuôn khổ VFS chuẩn của Linux thay vì miệt thị đồng nghiệp, lịch sử lưu trữ trên Linux có lẽ đã rẽ sang một hướng hoàn toàn khác.

  3. Giá như lòng thấu cảm chiến thắng sự ám ảnh kiểm soát: Đối với Hans Reiser, thế giới dữ liệu trên ổ đĩa là nơi ông có quyền kiểm soát tuyệt đối từng byte thông qua các nút cây B+, nhưng gia đình và con người ngoài đời thực thì không vận hành như một thuật toán. Nếu Hans biết buông bỏ sự kiểm soát độc단 trong cuộc hôn nhân của mình, Nina Reiser — một nữ bác sĩ tài năng và người mẹ tận tụy — đã không phải nằm lại dưới lòng đất lạnh lẽo ở tuổi 31, và hai đứa trẻ Rory cùng Nio đã không phải lớn lên trong bi kịch mất mẹ bởi chính bàn tay của cha mình.

Tháng 5 năm 2024, chỉ vài tháng trước khi ReiserFS bị xóa vĩnh viễn ở Linux 6.13, nhà bảo trì Jan Kara của SUSE đã chấp thuận thực hiện tâm nguyện cuối cùng của Hans Reiser trên nhân Linux 6.10. Trong thư gửi từ nhà tù, Hans viết:

"Giả định rằng quyết định cuối cùng là xóa bỏ ReiserFS V3 khỏi kernel, tôi chỉ có duy nhất một lời thỉnh cầu: trong một bản phát hành cuối cùng trước khi xóa, xin hãy chỉnh sửa tệp README để bổ sung tên của Mikhail Gilula, Konstantin Shvachko và Anatoly Pinchuk vào danh sách ghi công, đồng thời xóa bỏ mọi lời lẽ cay nghiệt tôi từng viết trong đó về lý do họ không được ghi nhận. Đã đến lúc phải buông bỏ rồi."

Bản vá cập nhật tệp README được thông qua ở Linux 6.10, trả lại công bằng cho những kỹ sư người Nga thầm lặng sau hơn hai thập kỷ, trước khi toàn bộ thư mục fs/reiserfs chính thức bị xóa sổ ở Linux 6.13. Di sản của ReiserFS khép lại như một bài học đắt giá nhất trong lịch sử kỹ thuật phần mềm: Mã nguồn dù có tối ưu đến đâu cũng sẽ chết nếu người tạo ra nó đánh mất khả năng kết nối và nhân tính giữa đời thực.

3

Thảo luận

0 bình luận

Đang tải bình luận…

?