| поискавой системы для электроныых деталей |
|
376 датащи(PDF) 28 Page - Intel Corporation |
|
|
|||||||||||||||||||||||||||||
376 датащи(HTML) 28 Page - Intel Corporation |
|
28 / 95 page ![]() 376 EMBEDDED PROCESSOR by control transfers through gate descriptors to a code segment with a different privilege level Thus an application program running at PLe3 may call an operating system routine at PLe1 (via a gate) which would cause the task’s CPL to be set to 1 until the operating system routine was finished Selector Privilege (RPL) The privilege level of a selector is specified by the RPL field The selector’s RPL is only used to estab- lish a less trusted privilege level than the current privilege level of the task for the use of a segment This level is called the task’s effective privilege level (EPL) The EPL is defined as being the least privi- leged (numerically larger) level of a task’s CPL and a selector’s RPL The RPL is most commonly used to verify that pointers passed to an operating system procedure do not access data that is of higher privi- lege than the procedure that originated the pointer Since the originator of a selector can specify any RPL value the Adjust RPL (ARPL) instruction is pro- vided to force the RPL bits to the originator’s CPL IO Privilege The IO privilege level (IOPL) lets the operating sys- tem code executing at CPLe0 define the least privi- leged level at which IO instructions can be used An exception 13 (General Protection Violation) is gener- ated if an IO instruction is attempted when the CPL of the task is less privileged than the IOPL The IOPL is stored in bits 13 and 14 of the EFLAGS reg- ister The following instructions cause an exception 13 if the CPL is greater than IOPL IN INS OUT OUTS STI CLI and LOCK prefix Descriptor Access There are basically two types of segment acces- sess those involving code segments such as con- trol transfers and those involving data accesses Determining the ability of a task to access a seg- ment involves the type of segment to be accessed the instruction used the type of descriptor used and CPL RPL and DPL as described above Any time an instruction loads a data segment regis- ter (DS ES FS GS) the 80376 makes protection validation checks Selectors loaded in the DS ES FS GS registers must refer only to data segment or readable code segments Finally the privilege validation checks are performed The CPL is compared to the EPL and if the EPL is more privileged than the CPL an exception 13 (gen- eral protection fault) is generated The rules regarding the stack segment are slightly different than those involving data segments In- structions that load selectors into SS must refer to data segment descriptors for writeable data seg- ments The DPL and RPL must equal the CPL of all other descriptor types or a privilege level violation will cause an exception 13 A stack not present fault causes an exception 12 PRIVILEGE LEVEL TRANSFERS Inter-segment control transfers occur when a selec- tor is loaded in the CS register For a typical system most of these transfers are simply the result of a call or a jump to another routine There are five types of control transfers which are summarized in Table 32 Many of these transfers result in a privilege level transfer Changing privilege levels is done only by control transfers using gates task switches and in- terrupt or trap gates Control transfers can only occur if the operation which loaded the selector references the correct de- scriptor type Any violation of these descriptor usage rules will cause an exception 13 CALL GATES Gates provide protected indirect CALLs One of the major uses of gates is to provide a secure method of privilege transfers within a task Since the operating system defines all of the gates in a system it can ensure that all gates only allow entry into a few trust- ed procedures 28 |
|
ссылки URL |
| Вашему бизинису помогли Аллдатащит? [ DONATE ] |
Что такое Аллдатащит | реклама | контакт | Конфиденциальность | Ссылка на техническое описание | обмен ссыками | поиск по производителю All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |