1984 saw the rise of networked filesystems like NFS, which offered performance comparable to local filesystems, and the introduction of the Andrew File System (AFS), designed for large-scale distributed environments with client-side caching and whole-file serving. Research focused on improving performance and reliability, with log-structured filesystems like LFS emerging to optimize write operations. Additionally, the standardization of file systems continued, with work on the ISO 9660 standard for CD-ROMs solidifying the format's widespread adoption. This year highlighted the increasing importance of networking and the evolving demands placed upon file systems for both performance and portability.
LWN.net's "The early days of Linux (2023)" revisits Linux's origins through the lens of newly rediscovered email archives from 1992. These emails reveal the collaborative, yet sometimes contentious, environment surrounding the project's infancy. They highlight Linus Torvalds's central role, the rapid evolution of the kernel, and early discussions about licensing, portability, and features. The article underscores how open collaboration, despite its challenges, fueled Linux's early growth and laid the groundwork for its future success. The rediscovered archive offers valuable historical insight into the project's formative period and provides a more complete understanding of its development.
HN commenters discuss Linus Torvalds' early approach to Linux development, contrasting it with the more structured, corporate-driven development of today. Several highlight his initial dismissal of formal specifications, preferring a "code first, ask questions later" method guided by user feedback and rapid iteration. This organic approach, some argue, fostered innovation and rapid growth in Linux's early stages, while others note its limitations as the project matured. The discussion also touches on Torvalds' personality, described as both brilliant and abrasive, and how his strong opinions shaped the project's direction. A few comments express nostalgia for the simpler times of early open-source development, contrasting it with the complexities of modern software engineering.
Andrew Tanenbaum, creator of MINIX, argued in 1992 that Linux, being a monolithic kernel, represented an outdated design compared to the microkernel approach of MINIX. He believed that microkernels, with their modularity and message-passing architecture, offered superior portability, maintainability, and reliability, especially as technology moved towards distributed systems and multicore processors. Tanenbaum predicted that Linux, tied to the aging Intel 386 architecture, would soon become obsolete and fade away as more advanced hardware and software paradigms emerged. He emphasized the conceptual superiority of MINIX's design, portraying Linux as a step backwards in operating system development.
HN commenters largely dismiss the linked 1992 post arguing for Minix over Linux. Many point out that the author's predictions about Linux's limitations due to its monolithic kernel and lack of microkernel structure were inaccurate, given Linux's widespread success and ongoing development. Some acknowledge that microkernels have certain advantages, but suggest that Linux's approach has proven more practical and adaptable. A few commenters find the historical perspective interesting, noting how the computing landscape has changed significantly since 1992, rendering the arguments largely irrelevant in the modern context. One commenter sarcastically celebrates Tanenbaum's foresight.
Summary of Comments ( 7 )
https://news.ycombinator.com/item?id=43283498
The Hacker News comments discuss the blog post's focus on the early days of networked filesystems, particularly NFS. Several commenters share their own experiences with early NFS, highlighting its initial slow performance and eventual improvements. Some discuss the influence of Sun Microsystems and the rise of distributed systems. Others delve into technical details like caching, consistency models, and the challenges of implementing distributed locks. A few comments compare NFS to other contemporary filesystems and contemplate the enduring relevance of some of the challenges faced in the 1980s. There's a general appreciation for the historical perspective offered by the blog post.
The Hacker News post titled "50 Years in Filesystems: 1984" has generated several comments discussing various aspects of historical filesystem design and the author's experiences.
Several commenters focused on the challenges and limitations of early filesystem technology. One commenter highlighted the difficulty of managing disk space efficiently with limited resources, noting the painstaking process of optimizing file placement to minimize wasted space. Another recounted the complexities of dealing with bad sectors on floppy disks and the creative solutions employed to work around them. The discussion also touched upon the evolution of error handling and data recovery techniques, with one user recalling the prevalence of data loss due to hardware failures and the lack of robust recovery mechanisms.
The conversation also delved into the specific filesystems mentioned in the original blog post, such as RT-11 and VMS. Commenters shared their personal experiences with these systems, offering insights into their strengths and weaknesses. One user praised the elegance and simplicity of RT-11, while another pointed out the limitations of its flat file structure. VMS, on the other hand, was lauded for its advanced features, such as journaling and access control lists, but also criticized for its complexity.
Some comments explored the broader context of computing in the 1980s, including the limitations of hardware and the challenges of software development. One commenter reflected on the scarcity of memory and processing power, which forced developers to be extremely resourceful and optimize their code for performance. Another discussed the difficulties of debugging software in an era with limited tools and resources.
A few comments also provided additional historical context, such as the origins of certain filesystem concepts and the influence of earlier operating systems. One user mentioned the influence of Multics on later systems like Unix and VMS, highlighting the lineage of filesystem design.
The comments collectively paint a picture of a time when filesystem design was a complex and challenging undertaking, constrained by limited hardware resources and evolving software development practices. The discussion offers valuable insights into the history of computing and the evolution of filesystem technology.