为什么 Windows 有%systemroot%/system32/drivers/etc/hosts
,而不是更“Windows 化”的东西?感觉就像是 BSD 衍生产品 Windows 的遗物,它来自很久以前。这纯粹是兼容性问题吗?
答案1
是的,它是随着微软采用基于 BSD 套接字 API 的 TCP/IP 而来的,该 API 是根据 WinSock 规范实现的。
Winsock 遵循 Windows 开放系统架构 (WOSA) 模型;它在应用程序编程接口 (API) 及其导出函数和协议堆栈之间定义了一个标准服务提供程序接口 (SPI)。它使用由 Berkeley Software Distribution (BSD) UNIX 首次推广的套接字范例。后来,它在 Windows Sockets 1.1 中被改编为适用于 Windows
http://msdn.microsoft.com/en-us/library/windows/desktop/ms740673(v=vs.85).aspx
兼容
与 4.3 Berkeley Software Distribution (BSD) UNIX \etc\hosts 文件格式相同的本地文本文件。
http://technet.microsoft.com/en-us/library/bb727005.aspx
这个故事的一个版本是这里