Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>After some web searching, I landed to this other topic on StackOverflow: <a href="https://stackoverflow.com/questions/13595033/linux-invoke-a-system-call-via-sysenter-tutorial">Linux invoke a system call via sysenter tutorial</a>. It says the recommended way to invoke the system, is neither using <code>int 80h</code> nor <code>syscall</code> nor <code>sysenter</code>, but <code>linux-gate.so</code>.</p> <p>Still remains the question about the crash and core‑dump. My guess is finally that although either <code>syscall</code> or <code>sysenter</code> instructions are available as a CPU instruction, may be the Linux kernel just does not set‑up properly this “entry point” when it decide it's not really useful on a given hardware platform.</p> <p>Seems on 32 bits platform, <code>sysenter</code> or <code>syscall</code> <strong>may</strong> be available, while it's always available, only on 64 bits platform.</p> <p>Although I feel this answer my question, I still welcome more material, like an authoritative reference for my above guess.</p> <p>-- update --</p> <p>At least, I could find this which confirm the above. That's still not an authoritative reference but seems trustable enough I believe.</p> <p><a href="http://www.trilithium.com/johan/2005/08/linux-gate/" rel="nofollow noreferrer">What is linux-gate.so.1?</a>, says:</p> <blockquote> <p>The preferred way of invoking a system call is <strong>determined by the kernel at boot time</strong>, and evidently this box uses sysenter.</p> </blockquote> <p>Also, from another source, a sample FASM assembly source (needs some translations if you use NASM), to call a system function via <code>linux-gate.so</code>: <a href="http://shaurz.wordpress.com/2008/06/02/finding-linux-gateso1-in-assembly/" rel="nofollow noreferrer">Finding linux-gate.so.1 in Assembly </a>.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload