What is call gate in short?
And What's the differences between call gate and conforming?
Call Gate..
Re:Call Gate..
A call gate is used to redirect execution to a specific entry point in memory. This entry point is often in a different segment and ring.
The big difference between gates and conforming (Is it conforming, or non-conforming? Can never remember ) is that without the gate you can't specify the entry point. So badly written/malicious code can gain uncontrolled access to code in other segments/rings.
An example would be using something like fopen in the standard library. The call from your code into the standard library doesn't need to use a call gate to reach the standard library code, because it will be operating in the same ring as your code and switching execution to arbitrary points in the library is liable to only affect only your application. However when the library uses the system call for file opening it will use a type of call gate (Most likely a software interrupt) to switch rings and run the system call code, because allowing apps to call arbitrary positions in the kernel is dangerous in the extreme.
Hope that helps.
The big difference between gates and conforming (Is it conforming, or non-conforming? Can never remember ) is that without the gate you can't specify the entry point. So badly written/malicious code can gain uncontrolled access to code in other segments/rings.
An example would be using something like fopen in the standard library. The call from your code into the standard library doesn't need to use a call gate to reach the standard library code, because it will be operating in the same ring as your code and switching execution to arbitrary points in the library is liable to only affect only your application. However when the library uses the system call for file opening it will use a type of call gate (Most likely a software interrupt) to switch rings and run the system call code, because allowing apps to call arbitrary positions in the kernel is dangerous in the extreme.
Hope that helps.
Re:Call Gate..
Thanks a lot , It helped me..
I think I need look into Intel's manual for more detail..
I think I need look into Intel's manual for more detail..
- Pype.Clicker
- Member
- Posts: 5964
- Joined: Wed Oct 18, 2006 2:31 am
- Location: In a galaxy, far, far away
- Contact:
Re:Call Gate..
http://www.mega-tokyo.com/forum/index.p ... 58;start=0
http://www.mega-tokyo.com/forum/index.p ... 38;start=0
http://www.mega-tokyo.com/forum/index.p ... 27;start=0
http://www.mega-tokyo.com/forum/index.p ... 36;start=0
i guess we should set up a page for "Confusing Things in IA-32", featuring call gates, conforming code segments, expand-down data segments and things like these in the WikiFAQ
You may also like http://www.mega-tokyo.com/forum/index.p ... 21;start=0
http://www.mega-tokyo.com/forum/index.p ... 28;start=0
http://www.mega-tokyo.com/forum/index.p ... 38;start=0
http://www.mega-tokyo.com/forum/index.p ... 27;start=0
http://www.mega-tokyo.com/forum/index.p ... 36;start=0
i guess we should set up a page for "Confusing Things in IA-32", featuring call gates, conforming code segments, expand-down data segments and things like these in the WikiFAQ
You may also like http://www.mega-tokyo.com/forum/index.p ... 21;start=0
http://www.mega-tokyo.com/forum/index.p ... 28;start=0