<p>Is there a good, up-to-date listing anywhere that maps User-Agent HTTP Header strings --> operating systems?</p>

Here's a quick list... let me know if I missed one you are interested in.
http://www.geekpedia.com/code47_Detect-operating-system-from-user-agent-string.html
:
// Match user agent string with operating systems
Windows 3.11 =>
  Win16,
Windows 95 => (Windows 95)|(Win95)|(Windows_95),
Windows 98 => (Windows 98)|(Win98),
Windows 2000 => (Windows NT
  5.0)|(Windows 2000),
Windows XP => (Windows NT 5.1)|(Windows
  XP),
Windows Server 2003 => (Windows NT 5.2),
Windows Vista =>
  (Windows NT 6.0),
Windows 7 => (Windows NT 6.1),
Windows 8 => (Windows NT 6.2),
Windows 10 => (Windows NT 10.0),
Windows NT
  4.0 => (Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT),
Windows
  ME => Windows ME,
Open BSD => OpenBSD,
Sun OS => SunOS,
Linux => (Linux)|(X11),
Mac OS => (Mac_PowerPC)|(Macintosh),
QNX => QNX,
BeOS => BeOS,
OS/2 => OS/2,
Search
  Bot=>(nuhk)|(Googlebot)|(Yammybot)|(Openbot)|(Slurp)|(MSNBot)|(Ask
  Jeeves/Teoma)|(ia_archiver)