CN100412791C - 允许用户方式处理在特许执行方式下操作的方法和装置 - Google Patents

允许用户方式处理在特许执行方式下操作的方法和装置 Download PDF

Info

Publication number
CN100412791C
CN100412791C CNB2005100684806A CN200510068480A CN100412791C CN 100412791 C CN100412791 C CN 100412791C CN B2005100684806 A CNB2005100684806 A CN B2005100684806A CN 200510068480 A CN200510068480 A CN 200510068480A CN 100412791 C CN100412791 C CN 100412791C
Authority
CN
China
Prior art keywords
mode
user mode
string
under
special permission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2005100684806A
Other languages
English (en)
Other versions
CN1713141A (zh
Inventor
斯蒂芬·L.·布里尼克
许宇程
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1713141A publication Critical patent/CN1713141A/zh
Application granted granted Critical
Publication of CN100412791C publication Critical patent/CN100412791C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/468Specific access rights for resources, e.g. using capability register

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

公开了一种允许用户方式处理在特许执行方式下进行操作的方法。申请人的方法提供了一种包括特许执行方式和非特许执行方式的操作系统、以及多个在非特许执行方式下操作的用户方式串。计算设备接收来自第一用户方式串的在特许执行方式下进行操作以执行一个或多个指定任务的请求。申请人的方法授权第一用户方式串在特许执行方式下进行操作,并且第一用户方式串使用特许执行方式执行上述一个或多个指定任务。申请人的方法继续允许第一用户方式串在完成上述一个或多个指定任务之后在特许执行方式下进行操作。

Description

允许用户方式处理在特许执行方式下操作的方法和装置
技术领域
本发明涉及一种允许用户方式串、即用户方式处理、在特许执行模式下进行操作的方法和装置。
背景技术
计算机处理器和相关操作系统具有两种不同级别的资源和保护是经常的。一种级别称为非特许方式或用户方式,由各种操作系统组成部分、应用程序及其他所谓的“用户”处理或程序使用。在这一级别,操作系统和计算机处理器阻止执行线程执行某些安全性重要的操作。此外还阻止线程直接访问许多系统资源。非特许执行方式的目的是尽可能地隔离用户处理以便使它不会受到其他用户处理或操作系统功能的干扰。
用户方式驱动程序在其中执行包括受保护的子系统代码的其他应用程序代码的非特许处理器方式下运行。用户方式驱动程序除了通过进行系统调用(syscall)外不能访问系统数据,其中系统调用随后会调用系统服务。虽然用户处理自身可能崩溃,但是它应当不能使其他程序或操作系统崩溃。
另一执行级别称为特许方式、系统方式或内核方式。重要的操作系统组成部分在内核方式下实现。内核方式组成部分负责如虚拟内存管理、对中断和异常作出响应、调度执行线程、使多处理器的动作同步及其他重要或敏感功能之类的事情。这种从系统方式中执行的组成部分通常被统称为“内核”。
内核方式驱动程序运行作为操作系统的支持一个或多个受保护的子系统的可执行基础操作系统组成部分的一部分。用户方式和内核方式驱动程序具有不同的结构、不同的入口点和不同的系统接口。一台设备要求用户方式还是内核方式驱动程序取决于设备的类型和已经在操作系统中为它提供的支持。某些设备驱动程序能够完全或部分地在用户方式下运行。用户方式驱动程序具有无限的堆栈空间,可以访问一个或多个API,并且更容易调试。
大部分设备驱动程序在内核方式下运行。内核方式驱动程序能够执行某些受到保护的操作,并且能够访问用户方式驱动程序不能访问的系统结构。然而,增加的访问使得调试更加困难,并且造成系统恶化的可能性更大。当代码在特许内核方式环境下运行时,操作系统故意地对数据完整性和请求有效性执行较少的检查。
发明内容
申请人的发明包括一种允许用户方式处理在特许执行方式下进行操作的方法。申请人的方法提供了一种计算设备、一种包括特许执行方式和非特许执行方式的操作系统、以及多个在非特许执行方式下操作的用户方式串。
计算设备接收来自第一用户方式串的在特许执行方式下进行操作以执行一个或多个指定任务的请求。申请人的方法授权第一用户方式串在特许执行方式下进行操作,并且第一用户方式串使用特许执行方式执行上述一个或多个指定任务。申请人的方法继续允许第一用户方式串在完成上述一个或多个指定任务之后在特许执行方式下进行操作。
附图说明
通过阅读以下结合附图给出的详细说明,将会更好地理解本发明,在附图中类似的参考标识符用来表示类似的单元,并且其中:
图1是显示了申请人的信息存储和检索系统的一个实施例的方框图;
图2是概括了申请人的方法的步骤的流程图;
图3是显示了在用户方式操作系统组成部分和内核方式操作系统组成部分之间的关系的方框图。
具体实施方式
参见例图,类似的数字对应于图中描绘的类似部件。本发明将被描述为实现在一个包括两个或更多群集的信息存储和检索系统中,其中那些群集中的每一个都包括一个或多个处理器、一个或多个数据高速缓存、以及一个或多个非易失性存储设备。然而,对申请人的方法的下列描述并不意味着把申请人的发明限制到通常的数据处理系统或者包括多个群集的数据处理系统,这是因为本发明在此能够被应用于授权在计算设备中设置的操作系统中设置的串在特许执行方式下进行操作。
在图1所示的实施例中,申请人的信息存储和检索系统100包括第一群集101A和第二群集101B。每个群集分别包括一个处理器部分130/140和一个输入/输出部分160/170。每个群集中的内部PCI总线分别经由处理器部分130/140和设备I/O部分160/170之间的远程I/O电桥155/165进行连接。
信息存储和检索系统100进一步包括多个设置在四个主机架(host bays)101、106、111和116中的主机适配器102-105、107-110、112-115、和117-120。每个主机适配器可以包括一个或多个光纤信道端口、一个或多个FICON端口、一个或多个ESCON端口、或者一个或多个SCSI端口。每个主机适配器通过一条或多条公共平台互连总线121连接到两个群集,从而使每个群集能够处理来自任一主机适配器的I/O。
处理器部分130包括微代码131、处理器132、高速缓存134和操作系统135。在某些实施例中,处理器部分130进一步包括存储器133。在某些实施例中,存储器设备133包括随机存取存储器。在某些实施例中,存储器设备133包括非易失性存储器。
处理器部分140包括微代码141、处理器142、高速缓存144和操作系统145。在某些实施例中,处理器部分140进一步包括存储器143。在某些实施例中,存储器设备143包括随机存取存储器。在某些实施例中,存储器设备143包括非易失性存储器。
I/O部分160包括非易失性存储器(“NVS”)162和NVS电池164。I/O部分170包括NVS 172和NVS电池174。
I/O部分160进一步包括多个设备适配器,诸如设备适配器165、166、167和168,并且包括组织成两个阵列、即阵列“A”和阵列“B”的14个盘驱动器。图1所示的实施例显示了两个磁盘阵列。在其他实施例中,申请人的信息存储和检索系统包括大于两个的硬盘阵列。每个驱动器阵列对于主计算机来说看来像是一个或多个逻辑驱动器。
在某些实施例中,阵列“A”和“B”利用RAID协议。在某些实施例中,阵列“A”和“B”包括其中阵列不是依照RAID进行配置的并且有时被称作JBOD阵列、即“Just a Bunch Of Dish(仅仅是一串盘)”的阵列。如本领域技术人员将会理解的那样,RAID(独立盘冗余阵列,Redundant Array of Independent Disks)排列包括按盘驱动器阵列配置的独立的盘驱动器,以获得优于单个大驱动器的性能、容量和可靠性。
在图1所示的实施例中,磁盘阵列“A”包括盘驱动器181、182、183、191、192、193和194。磁盘阵列“B”包括盘驱动器185、186、187、188、196、197和198。
为了使信息存储和检索系统的微代码,例如微代码131(图1),访问硬件和直接管理数据结构与高速缓存,在执行那个微代码时需要特许执行方式访问。为了将系统的微代码编译为在Linux下运行的用户方式二进制应用程序,申请人已经修改了Linux内核的PowerPC分支,以允许具有根许可(UID 0)的用户方式应用程序利用处理器、诸如处理器132(图1)、在特许执行方式下执行。
下面参见图2,在步骤210,申请人的方法提供了一种计算设备,它包括处理器、多个用户串、以及包括特许执行方式和非特许执行方式的操作系统。在某些实施例中,步骤210中的计算设备包括信息存储和检索系统、例如系统100。
在步骤220,多个用户串中的一个、即第一用户方式串请求在特许执行方式下进行操作以执行一个或多个指定任务。例如,用户串可以请求在特许执行方式下进行操作以在不允许系统中断时执行微代码。在某些实施例中,步骤220中的请求包括允许请求用户串在“priv_usermode”、即特许执行方式下进行操作的请求。
在某些实施例中,步骤220中的请求通过一个最优先的系统调用激活。在其他实施例中,申请人的“priv_usermode”机制通过一个设备驱动器接口激活。在某些实施例中,具有根级别访问的处理能够经由proc文件、例如“/proc/user_privmode”、设置/查询“user_privmode”状态。
在某些实施例中,申请人的方法从步骤220转到步骤250。在其他实施例中,申请人的方法从步骤220转到步骤230,在其中申请人的方法确定请求串是否被授权使用特许执行方式。在某些实施例中,系统的微代码、例如微代码131、包括一个查找表,它指示哪些用户方式串被授权在特许执行方式下进行操作。在某些实施例中,被授权在特许执行方式下操作的用户方式串包括一个这样指示的标志。
如果在步骤230中申请人的方法确定为请求串不被允许在特许执行方式下进行操作,则该方法从步骤230转到步骤240,在步骤240中该方法拒绝步骤220中的在特许执行方式下进行操作的请求。或者,如果在步骤230中申请人的方法确定为请求串被允许在特许执行方式下进行操作,则该方法从步骤230转到步骤250,在步骤250中该方法授权请求串在特许执行方式下进行操作。
在某些实施例中,请求用户串使用‘echo“1”>/proc/user_privmode’函数激活user_privmode机制。在处理向proc文件中的写入时,user_privmode内核模块修改位于processestask_struct中的一个标志。这个标志最初被设置为0,以指示user_privmode机制未被激活。调用函数“current-is_priv_user”会将该标志设置为1。在把这个标志设置为1之后,该标志能够由返回到用户状态的内核异常代码进行检查。在某些实施例中,在把这个标志设置为1之后,该标志能够由用于设置监控位(supervisor bit)的内核异常/ret_to_user代码进行检查。
在步骤260,甚至在请求串已经完成步骤220中的一个或多个指定任务之后,申请人的方法继续允许步骤220中的请求串在特许执行方式下进行操作。在某些实施例中,直到计算设备、诸如信息存储和检索系统100被关闭时才撤销对请求串在特许执行方式下进行操作的授权。
在申请人的装置和方法的某些实施例中,申请人的计算设备、例如系统100、利用一个操作系统、例如操作系统135(图1)和/或145(图1)。在某些实施例中,该操作系统包括Linux的修改。如本领域技术人员将会认识到的那样,Linux是一种最初由Linus Torvalds在全世界开发者的帮助下创建的自由Unix型操作系统。在GNU公众许可下开发,用于Linux的源编码可自由地获得。
如本领域技术人员将进一步认识到的那样,并且下面参见图3,Linux包括多个在非特许执行方式下操作的操作系统组成部分,包括组成部分310。操作系统用户方式组成部分310包括例如各种用户方式串。操作系统用户方式组成部分310与多个应用程序、例如应用程序340、应用程序350、应用程序360等进行接口。
包括用户方式串的在非特许执行方式下操作的多个操作系统组成部分与包括内核方式串的在特许执行方式下操作的多个操作系统组成部分320进行通信。内核方式操作系统组成部分320尤其与一个或多个系统硬件设备330进行通信。如本领域技术人员将会认识到的那样,多个操作系统内核方式组成部分320有时被统称为“内核”。
PowerPC linux内核使用MSR寄存器中的MSP_PR位以确定被中断的处理是否正在内核或用户方式空间中执行。因此,如果用户方式处理在MSP_PR打开时执行,则内核可能不正确地假定代码实际上在内核中。为了避免这个问题,申请人的user_privmode代码在到内核的入口上执行,并且将会在内核代码返回到用户空间时执行。此时,检查隐藏在task_struct中的额外变量,并且必要时在任一内核代码检查正在执行的代码包括用户代码还是内核代码之前从SRR1、即用户上下文MSR中删除MSR_PR位。将额外变量添加到task_struct中,并且保存在8KB内核堆栈的末端。
表1描述了申请人的操作系统在linux/sched.h中包括的某些修改。
表1
  u32is_priv_user  /<sup>*</sup>该处理是否被允许是priv_user<sup>*</sup>/
  u32priv_user_mode  /<sup>*</sup>该处理当前是否为priv_user<sup>*</sup>/
 /<sup>*</sup>priv_user=在监控方式打开时运行的用户方式代码<sup>*</sup>/
在到Linux内核中的任一入口上执行的代码位于包括在每个PowerPC异常之前的宏EXCEPTION_PROLOG中。表2描述了申请人的操作系统在linux/arc/ppc/kernel/head.S中包括的某些修改。
表2
 mfsprr 21,SPRG3;  /<sup>*</sup>task_struct中的Grab phys addr<sup>*</sup>/
 lwz r20,IS PRlV USER OFFSET(r21)
 cmpwi 0,r20,0;
 beq lf;  /<sup>*</sup>如果priv_user_mode没有打开,则跳过<sup>*</sup>/
 mfspr SRR1,r20;
an di r20,r20(~MSR_PR);   /<sup>*</sup>从被中断的处理MSR中删除MSR_PR位<sup>*</sup>/
 mtspr SRR1,r20
  1:
表3描述了对linux/arch/ppc/kernel/entry/S的修改,其中其代码在从Linux内核异常处理程序返回到用户方式时执行。
表3
  mfspr r21,SPRG3   /<sup>*</sup>tasl_struct中的Grab phys addr<sup>*</sup>/
  lwz r20,IS_PRIV_USER_OFFSET(r21)
  cmpwi 0,r20,0
  beq lf   /<sup>*</sup>如果priv user mode没有打开,则跳过<sup>*</sup>/
  mfspr SRR1,r20
  ori r20,r20MSR_PR   /<sup>*</sup>打开在用户处理中的MSR_PR以使它具有特
  li r20,1
  stw r20,IS_PRIV_MODE_OFFSET(r21)   /<sup>*</sup>标记这个处理是具有priv的用户方式<sup>*</sup>/
  mtspr SPRl,r20
  1:
在某些实施例中,可以将图2中描述的各个步骤进行组合、删除或者重新排序。
在某些实施例中,申请人的发明包括驻留在存储器133(图1)中的指令,其中那些指令由处理器132(图1)执行以执行图2中描述的步骤220、230、240、250和260,其中步骤220包括接收来自用户方式串的请求。在其他实施例中,申请人的发明包括驻留在任何其他计算机程序产品中的指令,其中那些指令由系统100之外的或者在系统100内部的计算机执行以执行图2中描述的步骤220、230、240、250和260,其中步骤220包括接收来自用户方式串的请求。不论是哪种情况,上述指令都可以被编码在一个信息存储媒体、包括例如磁信息存储介质、光信息存储介质、电信息存储介质等中。通过“电子存储介质”,申请人是指例如诸如PROM、EPROM、EEPROM、FlashPROM、压缩闪存、灵巧介质等之类的设备。
虽然已经详细地举例说明了本发明的优选实施例,但是显然本领域技术人员可以在不背离下列权利要求所阐述的本发明的范围的情况下对那些实施例进行修改和改进。

Claims (16)

1. 一种在包括处理器的计算设备中允许用户方式处理在特许执行方式下进行操作的方法,包括下列步骤:
提供一个包括特许执行方式和非特许执行方式的操作系统;
提供多个在非特许执行方式下操作的用户方式串;
由作为所述多个用户方式串之一的第一用户方式串请求在特许执行方式下进行操作以执行一个或多个指定任务;
授权所述第一用户方式串在特许执行方式下进行操作;
由所述第一用户方式串使用所述特许执行方式执行所述一个或多个指定任务;
允许所述第一用户方式串在完成所述一个或多个指定任务之后在所述特许执行方式下进行操作。
2. 根据权利要求1的方法,其特征在于:所述操作系统包括一个内核,并且其中所述请求步骤、所述授权步骤和所述执行步骤不包括经由系统调用接口访问所述内核。
3. 根据权利要求2的方法,其特征在于:所述请求步骤进一步包括:在启动所述计算设备期间所述第一用户方式串请求在特许执行方式下进行操作。
4. 根据权利要求3的方法,进一步包括在关闭所述计算设备时撤销对所述请求串在所述特许执行方式下进行操作的授权的步骤。
5. 根据权利要求3的方法,进一步包括以下步骤:
在接收对在所述特许执行方式下进行操作的授权之后,由所述第一用户方式串禁止系统中断;
执行所述一个或多个指定任务;
在完成所述一个或多个指定任务之后由所述第一用户方式串允许系统中断。
6. 根据权利要求1的方法,其特征在于:所述操作系统包括Linux。
7. 根据权利要求6的方法,其特征在于:所述提供一个操作系统的步骤进一步包括提供一个包括一个包含标志的变量processestask_struct的操作系统的步骤,所述方法进一步包括设置所述标志为“1”的步骤。
8. 根据权利要求6的方法,其特征在于:所述计算设备包括一个信息存储和检索系统。
9. 根据权利要求8的方法,其特征在于:所述信息存储和检索系统包括一个或多个主机适配器、一个数据高速缓存、一个或多个存储设备适配器和多个信息存储介质。
10. 一种允许用户方式处理在特许执行方式下进行操作的装置,该装置用于包括处理器、包括特许执行方式和非特许执行方式的操作系统、以及多个在非特许执行方式下操作的用户方式串的计算机设备中,包括:
用于由作为所述多个用户方式串之一的第一用户方式串请求在特许执行方式下进行操作以执行一个或多个指定任务的单元;
用于授权所述第一用户方式串在特许执行方式下进行操作的单元;
用于由所述第一用户方式串使用所述特许执行方式执行所述一个或多个指定任务的单元;
用于允许所述第一用户方式串在完成所述一个或多个指定任务之后在所述特许执行方式下进行操作的单元。
11. 如权利要求10的装置,其特征在于:所述操作系统包括一个内核,并且其中所述用于接收来自所述第一用户方式串的所述请求的装置、以及所述用于授权所述第一用户方式串在特许执行方式下操作的单元不经由系统调用接口访问所述内核。
12. 根据权利要求11的装置,其特征在于:所述用于接收所述请求的单元进一步包括:用于在启动所述装置期间接收在特许执行方式下操作的所述请求的单元。
13. 根据权利要求12的装置,进一步包括:用于在关闭所述装置时撤销对所述请求串在所述特许执行方式下进行操作的授权的单元。
14. 根据权利要求12的装置,进一步包括:
用于在接收对在所述特许执行方式下进行操作的授权之后由所述第一用户方式串禁止系统中断的单元;
用于执行所述一个或多个指定任务的单元;
用于在完成所述一个或多个指定任务之后由所述第一用户方式串允许系统中断的单元。
15. 根据权利要求10的装置,其特征在于:所述操作系统包括Linux。
16. 根据权利要求15的装置,其特征在于:所述操作系统包括一个包含标志的变量processestask_struct,所述装置进一步包括用于将所述标志设置为“1”的单元。
CNB2005100684806A 2004-06-24 2005-04-28 允许用户方式处理在特许执行方式下操作的方法和装置 Expired - Fee Related CN100412791C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/877,910 2004-06-24
US10/877,910 US7669050B2 (en) 2004-06-24 2004-06-24 Method to enable user mode process to operate in a privileged execution mode

Publications (2)

Publication Number Publication Date
CN1713141A CN1713141A (zh) 2005-12-28
CN100412791C true CN100412791C (zh) 2008-08-20

Family

ID=35507617

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100684806A Expired - Fee Related CN100412791C (zh) 2004-06-24 2005-04-28 允许用户方式处理在特许执行方式下操作的方法和装置

Country Status (3)

Country Link
US (1) US7669050B2 (zh)
JP (1) JP4898155B2 (zh)
CN (1) CN100412791C (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100915803B1 (ko) * 2006-12-05 2009-09-07 한국전자통신연구원 임베디드 리눅스 커널의 보안성 강화를 위한 응용 프로그램구동 방법 및 시스템
US20080271122A1 (en) * 2007-04-27 2008-10-30 John Edward Nolan Granulated hardware resource protection in an electronic system
US7950025B1 (en) * 2007-06-29 2011-05-24 Emc Corporation Common software environment
US7950022B1 (en) * 2007-06-29 2011-05-24 Emc Corporation Techniques for use with device drivers in a common software environment
JP5427187B2 (ja) * 2007-12-13 2014-02-26 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド 複数のグラフィックサブシステムおよび低電力消費モードを有するコンピューティングデバイス用ドライバアーキテクチャ、ソフトウェアおよび方法
US8473964B2 (en) * 2008-09-30 2013-06-25 Microsoft Corporation Transparent user mode scheduling on traditional threading systems
US8321874B2 (en) * 2008-09-30 2012-11-27 Microsoft Corporation Intelligent context migration for user mode scheduling
WO2011119137A1 (en) 2010-03-22 2011-09-29 Lrdc Systems, Llc A method of identifying and protecting the integrity of a set of source data
GB2483907A (en) * 2010-09-24 2012-03-28 Advanced Risc Mach Ltd Privilege level switching for data processing circuitry when in a debug mode
US8782380B2 (en) 2010-12-14 2014-07-15 International Business Machines Corporation Fine-grained privilege escalation
US9405682B2 (en) 2012-06-23 2016-08-02 Microsoft Technology Licensing, Llc Storage device access using unprivileged software code
US9785783B2 (en) * 2015-07-23 2017-10-10 Ca, Inc. Executing privileged code in a process
US10325116B2 (en) * 2017-06-30 2019-06-18 Vmware, Inc. Dynamic privilege management in a computer system
US11675902B2 (en) 2018-12-05 2023-06-13 Vmware, Inc. Security detection system with privilege management

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63298447A (ja) * 1987-05-29 1988-12-06 Hitachi Ltd マルチオペレ−ティングシステムコンソ−ル制御方式
EP0610677A2 (en) * 1993-02-12 1994-08-17 International Business Machines Corporation Bimodal communications device driver
US5764889A (en) * 1996-09-26 1998-06-09 International Business Machines Corporation Method and apparatus for creating a security environment for a user task in a client/server system
WO2001061473A1 (en) * 2000-02-16 2001-08-23 Watchguard Technologies, Inc. Computer security using dual functional security contexts
US20030037172A1 (en) * 2001-08-17 2003-02-20 John Lacombe Hardware implementation of an application-level watchdog timer
US6598169B1 (en) * 1999-07-26 2003-07-22 Microsoft Corporation System and method for accessing information made available by a kernel mode driver

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07120286B2 (ja) * 1987-04-02 1995-12-20 株式会社日立製作所 浮動小数点関数擬似命令処理方法
JPH04156617A (ja) * 1990-10-19 1992-05-29 Nec Corp 割込み・例外制御方式
US5485409A (en) * 1992-04-30 1996-01-16 International Business Machines Corporation Automated penetration analysis system and method
JPH086819A (ja) * 1994-06-17 1996-01-12 Hitachi Ltd デバイスドライバプログラムのテスト装置およびその方法
US5864683A (en) * 1994-10-12 1999-01-26 Secure Computing Corporartion System for providing secure internetwork by connecting type enforcing secure computers to external network for limiting access to data based on user and process access rights
US5764969A (en) * 1995-02-10 1998-06-09 International Business Machines Corporation Method and system for enhanced management operation utilizing intermixed user level and supervisory level instructions with partial concept synchronization
US7124302B2 (en) * 1995-02-13 2006-10-17 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
JPH10187265A (ja) * 1996-12-20 1998-07-14 Nec Shizuoka Ltd 情報処理装置の起動方法
US5893166A (en) * 1997-05-01 1999-04-06 Oracle Corporation Addressing method and system for sharing a large memory address space using a system space global memory section
US6226725B1 (en) * 1998-04-21 2001-05-01 Ibm Method and system in a data processing system for the dedication of memory storage locations
US7475398B2 (en) * 2000-08-01 2009-01-06 Wind River Systems, Inc. System and method for implementing a smart system call
US7024672B2 (en) * 2002-06-26 2006-04-04 Microsoft Corporation Process-mode independent driver model
US7383587B2 (en) * 2002-11-18 2008-06-03 Arm Limited Exception handling control in a secure processing system
US7076637B2 (en) * 2003-10-29 2006-07-11 Qualcomm Inc. System for providing transitions between operating modes of a device
US7120794B2 (en) * 2003-10-29 2006-10-10 Qualcomm Inc. System for invoking a privileged function in a device
JP4246672B2 (ja) * 2004-06-03 2009-04-02 株式会社リコー 画像形成装置および画像形成装置制御方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63298447A (ja) * 1987-05-29 1988-12-06 Hitachi Ltd マルチオペレ−ティングシステムコンソ−ル制御方式
EP0610677A2 (en) * 1993-02-12 1994-08-17 International Business Machines Corporation Bimodal communications device driver
US5764889A (en) * 1996-09-26 1998-06-09 International Business Machines Corporation Method and apparatus for creating a security environment for a user task in a client/server system
US6598169B1 (en) * 1999-07-26 2003-07-22 Microsoft Corporation System and method for accessing information made available by a kernel mode driver
WO2001061473A1 (en) * 2000-02-16 2001-08-23 Watchguard Technologies, Inc. Computer security using dual functional security contexts
US20030037172A1 (en) * 2001-08-17 2003-02-20 John Lacombe Hardware implementation of an application-level watchdog timer

Also Published As

Publication number Publication date
JP2006012170A (ja) 2006-01-12
US7669050B2 (en) 2010-02-23
US20050289545A1 (en) 2005-12-29
JP4898155B2 (ja) 2012-03-14
CN1713141A (zh) 2005-12-28

Similar Documents

Publication Publication Date Title
CN100412791C (zh) 允许用户方式处理在特许执行方式下操作的方法和装置
CN106462708B (zh) 认证变量的管理方法和装置
US9548986B2 (en) Sensitive data tracking using dynamic taint analysis
CN100423013C (zh) 加载可信操作系统的方法和装置
US20190370502A1 (en) Systems and methods for controlling access to secure debugging and profiling features of a computer system
US8336095B2 (en) User space virtualization system
CN100530209C (zh) 用于限制安全执行环境的硬件失败信息泄漏的系统和方法
CN105122260B (zh) 到安全操作系统环境的基于上下文的切换
US20070168574A1 (en) System and method for securing access to general purpose input/output ports in a computer system
EP1927065B1 (en) Method for computing platform data protection
Voulimeneas et al. You shall not (by) pass! practical, secure, and fast PKU-based sandboxing
EP3877874A1 (en) Systems and methods for stalling host processor
CN101978339A (zh) 用于硬件重置保护的方法和装置
US7950057B1 (en) Driver load manager and method
US11222122B2 (en) Method and system for runtime instrumentation of software methods
US7536694B2 (en) Exception handling in a multiprocessor system
US7774758B2 (en) Systems and methods for secure debugging and profiling of a computer system
US11100238B2 (en) Systems and methods for generating policy coverage information for security-enhanced information handling systems
US20060080518A1 (en) Method for securing computers from malicious code attacks
US20180260563A1 (en) Computer system for executing analysis program, and method of monitoring execution of analysis program
US8165847B2 (en) Implementing a programmable DMA master with write inconsistency determination
US20170091465A9 (en) Secure emulation logic between page attribute table and test interface
US20230367564A1 (en) Rules processing systems and methods with just-in-time compilation for endpoint protection in kernel mode
JP2002538532A (ja) Icカードのアプリケーションに対するアクセス保護装置
Wen et al. Towards thwarting data leakage with memory page access interception

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080820

Termination date: 20150428

EXPY Termination of patent right or utility model