Thunk is programming that converts 16-bit memory address space into 32-bit memory address space and vice versa. There are two thunks: flat thunk and universal thunk. Universal thunk, enabled by Win32s, is used by 16-bit applications running under Windows 3.x and Windows for Workgroups that need to call 32-bit DLL files. Flat thunk is used by Windows 95 and up and allows 32-bit applications to use 16-bit DLL files. Thunking became necessary when newer 32-bit microprocessors and applications began to replace the older 16-bit microprocessors and applications.