커널 3.4 에 릴리즈된 주요 내용중 코어 관련된 기능 변경내용입니다.  

   원문은 아래와 같습니다.


A new kernel parameter, "nomodule", will disable module loading (commit)


Mark thread stack correctly in proc/<pid>/maps (commit)


커널 파라미터에 nomodule 이라는 것이 추가 되었네요.

부팅시에 파라미터로 nomodule 을 사용하면 커널 모듈 로딩이 되지 않도록 되게 하는 것입니다.

아마도 보안관련 옵션일까요?


proc 에서 pid 밑에는 여러가지 파일들이 있는데 그중에서 maps 라는 파일이 있습니다.

해당 pid 의 프로세스의 메모리 매핑을 보여주는데요.  한번 s5pv210 에서 샘플을 보겠습니다.


[root@falinux ~]$ cat /proc/1141/maps 

00008000-000aa000 r-xp 00000000 01:00 4142       /bin/busybox

000b2000-000b3000 rw-p 000a2000 01:00 4142       /bin/busybox

000b3000-000d6000 rw-p 00000000 00:00 0          [heap]

2aaab000-2aac8000 r-xp 00000000 01:00 208        /lib/ld-2.8.so

2aac8000-2aacb000 rw-p 00000000 00:00 0 

2aacf000-2aad1000 rw-p 0001c000 01:00 208        /lib/ld-2.8.so

2aad1000-2ab75000 r-xp 00000000 01:00 240        /lib/libm-2.8.so

2ab75000-2ab7c000 ---p 000a4000 01:00 240        /lib/libm-2.8.so

2ab7c000-2ab7d000 r--p 000a3000 01:00 240        /lib/libm-2.8.so

2ab7d000-2ab7e000 rw-p 000a4000 01:00 240        /lib/libm-2.8.so

2ab7e000-2ac95000 r-xp 00000000 01:00 206        /lib/libc-2.8.so

2ac95000-2ac9c000 ---p 00117000 01:00 206        /lib/libc-2.8.so

2ac9c000-2ac9f000 rw-p 00116000 01:00 206        /lib/libc-2.8.so

2ac9f000-2aca2000 rw-p 00000000 00:00 0 

7ed70000-7ed91000 rw-p 00000000 00:00 0          [stack]


보시는 것처럼 busybox 중에서 telnetd 의 메모리 매핑입니다.
맨위에는 text, 그다음에 data, 그리고 heap 이 있네요.
중간에 library 들이 여러가지 올라와 있는 것이 보이고 stack 이 보입니다.

kernel thread 가 생성될때 스택의 정보가 정확히 표시되지 않는 것이 있어서
패치되었다는데 제 보드에서는 확인할 길이 없네요.
암튼 이 maps 파일을 보면 여러가지 정보를 얻을수가 있습니다.
아... 물론 userspace 만 보입니다.