0

基礎となるカーネルが QNX からのもので、すべてのカーネル ソースがバイナリとして提供されるプロジェクトに取り組んでいます。プロジェクトのソースツリー。

誰かがそれを見つける方法を教えてもらえますか??

4

1 に答える 1

1

実行中のカーネルは、PID が 1 のプロセスになります。これを使用ps -eして確認します。

私の場合、procntoです。インストルメント化されたカーネルを (デバッグ用に) 実行している場合、それはprocnto-instr.

 ps -e
       PID TTY          TIME CMD
         1 ?        12:25:42 procnto
      4098 ?        00:00:00 pci-bios
      4099 ?        03:40:47 io-usb
      4100 ?        00:00:00 io-hid
      4101 ?        00:00:00 devc-con-hid
      4102 ?        00:58:14 devb-eide
     20487 ?        00:00:00 /sbin/tinit
     20488 ?        00:00:00 slogger
     24585 ?        00:00:25 pipe
     28682 ?        00:10:22 mqueue

IFS ファイルの作成方法によっては、次のようなものを含む .build ファイルを作成できます。

#
# The build file for QNX Neutrino booting on a PC
#
[linker="ntox86-ld -T$QNX_TARGET/x86/lib/nto.link %(h!=0, -Ttext 0x%t%)%(d!=0, -Tdata 0x%d%) -o%o %i %[M -L%^i -uinit_%n -lmod_%n%]"]
[virtual=x86,bios +compress] boot = {
    startup-bios

    # PATH is the *safe* path for executables (confstr(_CS_PATH...))
    # LD_LIBRARY_PATH is the *safe* path for libraries (confstr(_CS_LIBPATH))
    #    i.e. This is the path searched for libs in setuid/setgid executables.
    PATH=/proc/boot:/bin:/usr/bin:/opt/bin LD_LIBRARY_PATH=/proc/boot:/lib:/usr/lib:/lib/dll:/opt/lib procnto

} ...

最後procntoは、使用するカーネルをブートローダーに伝えるものです。詳細については、mkifsを参照してください。

于 2013-03-06T14:26:44.823 に答える