# DLL地狱

> 在电脑运算领域，DLL地狱（DLL Hell）指Microsoft Windows系统中，因为动态链接库（DLL）的版本或兼容性的问题而造成软件无法正常执行。Windows早期并没有很严谨的DLL版本管理机制，以致经常发生安装了某软件后，因为其覆盖了系统上原有的同一个DLL文件，而导致原有可运行的程序无法运行。但还原回原有的DLL文件之后，新安装的软件就无法运行。

- ID: m01327
- 分类: business
- 领域: 管理学

## 定义

指在Windows系统中，多个应用程序共享同一个动态链接库（DLL），但不同程序需要该库的不同版本，导致更新一个程序会弄坏另一个程序的现象。脚手架作用：理解共享资源的冲突。在组织中，如果多个项目组共用一个资源池（如设计团队），往往会出现“DLL地狱”：满足了A组的需求，却破坏了B组的进度。解法通常是版本隔离或资源去耦合。

## 机制

在 Windows 中多个应用共享同一动态链接库(DLL)，但不同程序需要不同版本，导致"更新一个弄坏另一个"的版本冲突。机制是**共享资源的全局耦合**：单一实例被多消费者依赖，版本演进缺乏隔离。其组织隐喻是：多团队共用一个资源池（如设计、中台）时，满足 A 会破坏 B。

## 练习

（作为问题诊断与解法，而非流程） 1. 识别组织中"被多方共享、但需求各异"的资源； 2. 判断是否出现"顾此失彼"的冲突； 3. 解法一：版本隔离（给各方独立副本 / 命名空间）； 4. 解法二：资源去耦合（接口稳定化、按需供给）； 5. 建立契约与变更通知机制。

## 脚手架用法

理解共享资源的冲突。在组织中，如果多个项目组共用一个资源池（如设计团队），往往会出现“DLL地狱”：满足了A组的需求，却破坏了B组的进度。解法通常是版本隔离或资源去耦合。

[阅读网页](https://thinkingmodels.site/entries/detail/m01327)
