-
公开(公告)号:US09946495B2
公开(公告)日:2018-04-17
申请号:US13870670
申请日:2013-04-25
Applicant: Microsoft Technology Licensing, LLC
Inventor: Mehmet Iyigun , Yevgeniy M. Bak , Eric M. Bluestein , Robin A. Alexander , Andrew M. Herron , Xiaozhong Xing
CPC classification number: G06F3/068 , G06F3/0611 , G06F3/0659 , G06F12/023 , G06F12/08
Abstract: A hybrid drive includes multiple parts: a performance part (e.g., a flash memory device) and a base part (e.g., a hard disk drive). A drive access system, which is typically part of an operating system of a computing device, issues input/output (I/O) commands to the hybrid drive to store data to and retrieve data from the hybrid drive. Some data can be stored in one part but not the other, and this data can be synchronized with (e.g., copied to) the other part at various times. The drive access system provides indications to the hybrid drive of when to synchronize data in one part with the other part. These indications are made so that potential interference with use of the device by the user and/or power saving modes of the device due to the synchronization is reduced.
-
公开(公告)号:US09898354B2
公开(公告)日:2018-02-20
申请号:US15076277
申请日:2016-03-21
Applicant: Microsoft Technology Licensing, LLC
Inventor: Jeffrey M. Engel , Frederick J. Smith , Hari R. Pulapaka , Benjamin M. Schultz , Mehmet Iyigun , John Richardson , Taylor Stark
CPC classification number: G06F9/541 , G06F8/65 , G06F9/445 , G06F9/44536 , G06F9/45558 , G06F2009/45579
Abstract: Techniques for implementing operating system layering are described herein. In one example, a method includes managing one or more container temporary storage spaces and one or more container runtime environments. Furthermore, the method includes loading, one or more drivers to provide compatibility between a container operating system and a host operating system, the one or more drivers comprising application program interface (API) compatibility libraries to enable API compatibility between the container operating system and the host operating system; metadata arbitration logic to enable compatibility between the container operating system and the host operating system by modifying container operating system references; and file arbitration logic to modify operating system file locations accessed by the container operating system and the host operating system.
-
公开(公告)号:US20170344092A1
公开(公告)日:2017-11-30
申请号:US15165431
申请日:2016-05-26
Applicant: Microsoft Technology Licensing, LLC
Inventor: Eric Bluestein , Graham Wong , Mehmet Iyigun , Hari R. Pulapaka
IPC: G06F1/32
CPC classification number: G06F1/3212 , G06F1/329
Abstract: Achieving a consistent battery drain rate at a computing device includes identifying an amount of available battery energy, and identifying a target device runtime using the available energy. A plurality of time periods over which to budget energy use to achieve the target device runtime are identified, and an allotment of the available energy for each of the plurality of time periods is determined. A determination of how to allocate the allotted energy for a current time period is made. The determination includes identifying a priority of each application based user-facing attributes of each application, identifying an energy budget for each application, and allocating a portion of the allotted energy for the current time period to each application based on their identified priority and their energy budget. The energy budget for at least one application is adjusted based on that applications' energy usage during the current time period.
-
公开(公告)号:US20170286153A1
公开(公告)日:2017-10-05
申请号:US15189557
申请日:2016-06-22
Applicant: Microsoft Technology Licensing, LLC
Inventor: Yevgeniy M. Bak , Lars Reuther , Kevin M. Broas , Mehmet Iyigun , Hari R. Pulapaka , Morakinyo Korede Olugbade , Benjamin M. Schultz
CPC classification number: G06F9/485 , G06F9/45558 , G06F9/5022 , G06F9/542 , G06F2009/45583
Abstract: An operating system running on a computing device uses containers for hardware resource partitioning. Using the techniques discussed herein, pausing and resuming of containers is managed to reduce the pressure a container exerts on system resources when paused. Resuming of containers can further be managed to reduce the startup time for containers. This managing of containers can implemented various different techniques, such as stopping scheduling of virtual processors, stopping scheduling of processes or threads, compressing memory, swapping pages of memory for the container to a page file on a hard drive, and so forth.
-
公开(公告)号:US20160321116A1
公开(公告)日:2016-11-03
申请号:US14752215
申请日:2015-06-26
Applicant: Microsoft Technology Licensing, LLC
Inventor: James A. Schwartz, Jr. , Arun Kishan , Nicholas S. Judge , Stephen Hufnagel , Yevgeniy M. Bak , Mehmet Iyigun , Jeffrey B. Kay , Cory Hendrixson , Jonathan Wiswall , Edward S. Miller
CPC classification number: G06F9/541 , G06F9/4406 , G06F9/5011
Abstract: Various systems and methods for translating operating system processes are described herein. In one example, a method includes intercepting a process of a foreign operating system through a proxy driver. The method can also include translating the process to a native operating system within which the foreign operating system is operating. Furthermore, the method can include sharing memory between the native operating system and the foreign operating system for translation.
Abstract translation: 这里描述了用于翻译操作系统过程的各种系统和方法。 在一个示例中,一种方法包括通过代理驱动程序拦截外部操作系统的进程。 该方法还可以包括将进程转换为外部操作系统在其中操作的本机操作系统。 此外,该方法可以包括在本地操作系统和外部操作系统之间共享内存以进行翻译。
-
46.
公开(公告)号:US20160259720A1
公开(公告)日:2016-09-08
申请号:US14635302
申请日:2015-03-02
Applicant: Microsoft Technology Licensing, LLC
Inventor: Yevgeniy M. Bak , Mehmet Iyigun , Landy Wang , Arun U. Kishan
CPC classification number: G06F12/023 , G06F9/461 , G06F9/5022 , G06F12/0261 , G06F12/0623 , G06F12/08 , G06F2212/1044 , G06F2212/2532 , G06F2212/401
Abstract: A memory manager in a computing device allocates memory to programs running on the computing device, the amount of memory allocated to a program being a memory commit for the program. When a program is in a state where the program can be terminated, the content of the memory pages allocated to the program is compressed, and an amount of the memory commit for the program that can be released is determined. This amount of memory commit is the amount that was committed to the program less any amount still storing (in compressed format) information (e.g., data or instructions) for the program. The determined amount of memory commit is released, allowing that amount of memory to be consumed by other programs as appropriate.
Abstract translation: 计算设备中的存储器管理器将分配给在计算设备上运行的程序的存储器,分配给程序的存储器量是用于程序的存储器提交。 当程序处于可以终止程序的状态时,分配给程序的存储器页面的内容被压缩,并且确定可以释放的程序的存储器提交量。 这个内存提交量是提交给程序的数量减少了仍然存储(压缩格式)程序的信息(例如,数据或指令)的任何数量。 释放确定的内存提交量,允许其他程序适当地使用该量的内存。
-
公开(公告)号:US20150234666A1
公开(公告)日:2015-08-20
申请号:US14702412
申请日:2015-05-01
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
Inventor: Mehmet Iyigun , Yevgeniy Bak , Emily N. Wilson , Kirsten V. Stark , Sushu Zhang , Patrick L. Stemen , Brian E. King , Vasilios Karagounis , Neel Jain
IPC: G06F9/44
CPC classification number: G06F9/4401 , G06F1/3234 , G06F8/65 , G06F9/4418 , G06F9/442
Abstract: Fast computer startup is provided by, upon receipt of a shutdown command, recording state information representing a target state. In this target state, the computing device may have closed all user sessions, such that no user state information is included in the target state. However, the operating system may still be executing. In response to a command to startup the computer, this target state may be quickly reestablished from the recorded target state information. Portions of a startup sequence may be performed to complete the startup process, including establishing user state. To protect user expectations despite changes in response to a shutdown command, creation and use of the file holding the recorded state information may be conditional on dynamically determined events. Also, user and programmatic interfaces may provide options to override creation or use of the recorded state information.
Abstract translation: 在接收到关闭命令时,提供表示目标状态的记录状态信息来提供快速计算机启动。 在该目标状态下,计算设备可以关闭所有用户会话,使得在目标状态中不包括用户状态信息。 但是,操作系统可能仍在执行。 响应于启动计算机的命令,可以从记录的目标状态信息中快速重新建立该目标状态。 可以执行启动顺序的一部分来完成启动过程,包括建立用户状态。 为了保护用户期望,尽管响应于关闭命令的变化,保存记录的状态信息的文件的创建和使用可以取决于动态确定的事件。 此外,用户和编程接口可以提供替代记录的状态信息的创建或使用的选项。
-
公开(公告)号:US12001844B2
公开(公告)日:2024-06-04
申请号:US18185122
申请日:2023-03-16
Applicant: Microsoft Technology Licensing, LLC
Inventor: Hee Jun Park , Mehmet Iyigun
CPC classification number: G06F9/30174 , G06F8/52 , G06F9/30043 , G06F9/30083 , G06F9/3009 , G06F9/3836 , G06F9/4893 , G06F9/5094
Abstract: Embodiments relate to improving user experiences when executing binary code that has been translated from other binary code. Binary code (instructions) for a source instruction set architecture (ISA) cannot natively execute on a processor that implements a target ISA. The instructions in the source ISA are binary-translated to instructions in the target ISA and are executed on the processor. The overhead of performing binary translation and/or the overhead of executing binary-translated code are compensated for by increasing the speed at which the translated code is executed, relative to non-translated code. Translated code may be executed on hardware that has one or more power-performance parameters of the processor set to increase the performance of the processor with respect to the translated code. The increase in power-performance for translated code may be proportional to the degree of translation overhead.
-
公开(公告)号:US11966771B2
公开(公告)日:2024-04-23
申请号:US18154182
申请日:2023-01-13
Applicant: Microsoft Technology Licensing, LLC
Inventor: Jonathan De Marco , Benjamin M. Schultz , Frederick Justus Smith, IV , Hari R. Pulapaka , Mehmet Iyigun , Amber Tianqi Guo
CPC classification number: G06F9/45558 , G06F16/13 , G06F16/148 , G06F2009/4557 , G06F2009/45583 , G06F2009/45595
Abstract: Computing systems, devices, and methods of dynamic image composition for container deployment are disclosed herein. One example technique includes receiving a request for accessing a file from a container process. In response to receiving the request, the technique includes querying a mapping table corresponding to the container process to locate an entry corresponding to a file identifier of the requested file. The entry also includes data identifying a file location on the storage device from which the requested file is accessible. The technique further includes retrieving a copy of the requested file according to the file location identified by the data in the located entry in the mapping table and providing the retrieved copy of the requested file to the container process, thereby allowing the container process to access the requested file.
-
公开(公告)号:US11861364B2
公开(公告)日:2024-01-02
申请号:US17352283
申请日:2021-06-19
Applicant: Microsoft Technology Licensing, LLC
Inventor: Jin Lin , Mehmet Iyigun , Jason Lin , Matthew John Woolman
CPC classification number: G06F9/30116 , G06F9/3009 , G06F9/30134 , G06F9/3806 , G06F9/5016 , G06F21/52 , G06F21/54 , G06F21/566
Abstract: Performing shadow stack functionality for a thread in an audit mode includes initiating execution of a thread at the processor. Execution of the thread includes initiating execution of executable code of an application binary as part of the thread and enabling shadow stack functionality for the thread in an audit mode. Based at least on the execution of the thread in the audit mode, at least a portion of the shadow stack is enabled to be a circular stack. In response to determining that usage of the shadow stack has reached the defined threshold, one or more currently used entries of the shadow stack are overwritten, preventing the shadow stack from overflowing.
-
-
-
-
-
-
-
-
-