![为什么 Windows 有 Unix 风格的 etc/hosts?](https://linux22.com/image/1294854/%E4%B8%BA%E4%BB%80%E4%B9%88%20Windows%20%E6%9C%89%20Unix%20%E9%A3%8E%E6%A0%BC%E7%9A%84%20etc%2Fhosts%EF%BC%9F.png)
为什么 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
这个故事的一个版本是这里