- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
The Windows Operating System.ppt
The Windows Operating System Goals Hardware-portable Used to support MIPS, PowerPC and Alpha Currently supports x86, ia64, and amd64 Multiple vendors build hardware Software-portable POSIX, OS2, and Win32 subsystems OS2 is dead POSIX is still supported—separate product Lots of Win32 software out there in the world Goals High performance Anticipated PC speeds approaching minicomputers and mainframes Async IO model is standard Support for large physical memories SMP was an early design goal Designed to support multi-threaded processes Kernel has to be reentrant Process Model Threads and processes are distinct Process: Address space Handle table (Handles = file descriptors) Process default security token Thread: Execution Context Optional thread-specific security token Tokens “Who you are”—list of identities Each identity is a SID Also contains Privileges Shutdown, Load drivers, Backup, Debug… Can be passed through LPC ports and named pipe requests Server side can use this to selectively impersonate the client. Object Manager Uniform interface to kernel mode objects. Handles are 32bit opaque integers Per-process handle table maps handles to objects and permissions on the objects Implements refcount GC Pointer count—total number of references Handle count—number of open handles Object Manager Implements an object namespace Win32 objects are under \BaseNamedObjects Devices under \Device This includes filesystems Drive letters are symbolic links \??\C: = the appropriate filesystem device Some things have other names Processes and threads are opened by specifying a CID: (Process.Thread) Standard operations on handles CloseHandle() DuplicateHandle() Takes source and destination process Very useful for servers WaitForSingleObject(), WaitForMultipleObjects() Wait for something to happen Can wait on up to 64 handles at once Security Descriptors Each object has a Security Descriptor Owner—special SID, CREATOR_OWNER Group—special SID, CREATOR_GROUP DACL Discretionary Access Cont
文档评论(0)