Dear everyone recently I took a close look on entry.S under arch/i386/kernel (2.4.x and 2.6.x). from what I read so far, I get conclusion that it is a mix of linker and assembler script serving for one goal...defining system call and fault low level handler My confusions are: 1. AFAIK, assembly source isn't mixed with normal C file header, but in this case i saw "#include" directive referring to 5-6 headers. Is this valid ? 2. Seems like ENTRY() is used for defining function, but from what I read at "info ld": "The first instruction to execute in a program is called the "entry point". You can use the `ENTRY' linker script command to set the entry point. The argument is a symbol name: ENTRY(SYMBOL)" Does it mean, entry.S has multiple starting point? 3. If ENTRY() is indeed declaring a function, how someone call it? by using "extern" on another C source code? And how the C code refer to the .S file? by pointing directly to the .S file or the header file (.h)? regards Mulyadi -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/