기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요.

요즘 회사에서 판매중인 제품의 칩 SDK가

업데이트 되면서 리눅스 커널도 2.6.37로 업데이트작업을

하고 있습니다. 업데이트 후 이상 증상이 보이는데

궁금한게 있어서 이렇게 질문 드립니다.

 

이전 버젼에서 커널 부팅 시 파라미터에 bigphysarea=5000을 주고 사용중이었습니다.

원래는 기본값이 2000인데 어떤 문제때문에 5000으로 바꼈다고 하더라구요.

그래서 커널과 SDK를 업데이트 하면서 어플리케이션 실행 시 fork 함수와

system() 함수(c언어 라이브러리에 있는) 호출이 안되더군요.

perror 로 찍어보면 cannot allocate memory 라고 나옵니다.

bigphysarea=2000으로 바꾸면 잘 되구요. 5000으로 할 때 메모리가 모자르거나 하지는 않습니다.

이 bigphysarea의 역할을 찾아보니 드라이버단에서 쓸 수 있는 메모리? 정도로 이해했는데요.

가용 메모리가 충분한 상황인데 왜 이 bigphysarea의 값에 따라 fork 나 system 함수에 호출에

문제가 생기는지 궁금합니다. 혹시 힌트 될 만한 것이라도 있으면 가르쳐주십시오.

 

감사합니다.


고도리

2012.05.17 23:52:49
*.200.239.234

1. bigphysarea는 공식 커널에는 없는 것으로 알고 있습니다.

==> 패치하신 듯 하고요.


2. 2000-->5000 이면 3000x4k 만큼 메모리를 할당받는 것으로 보여집니다. 대략 bootmem쪽에 미리 allocation하는 듯 하고요.


3. 정상적인 방법은 아니라고 보여집니다만, 많은 메모리를 DMA로 쓰기 위해서 2000-->5000으로 변경을 한 듯 한데, 값을 적절히 줄여보시기 바랍니다.


4. 가장 좋은 방법은 DMA 메카니즘을 다른 방법으로 사용하시는 것입니다.


5. 위 증상은 실제 가용 메모리가 없어서 그렇습니다.

자미

2012.05.18 00:25:07
*.216.190.226

아...결국 메모리가 부족하기 때문인거군요. 답변 감사합니다. 참고하도록 하겠습니다.

 

List of Articles
번호 제목 글쓴이 날짜 조회 수

디바이스 드라이버에서 메모리를 잡으니 다른 스택메모리에 영향을 주... [1]

  • bwparc
  • 2012-05-23
  • 조회 수 1541

USB Ethernet CDC로 RNDIS를 이용한 NFS구성 문의 [4]

  • people2
  • 2012-05-23
  • 조회 수 1597

C110 소비전류가 어떻게 되나요? [6]

s3c2440 usb host 질문 입니다. (꼭)

NULL pointer dereference로 커널패닉이 났지만, 실제 원인이 되...

  • bwparc
  • 2012-05-21
  • 조회 수 1351

eth0 에서 eth1로 소켓통신을 하려면 어떻게 해야되나요? [12]

HDMI 연결시 제품에 화면 출력 여부 설정 방법 문의 [2]

  • 현쓰
  • 2012-05-18
  • 조회 수 1501

삼성 V210 동시 인코딩/디코딩이 가능한가요? [5]

안녕하세요. fork() 가 안되는 문제점이 있습니다. [2]

  • 자미
  • 2012-05-17
  • 조회 수 1425

USB host와 gadget을 동시에 사용하는게 가능한가요? [2]

SPI를 이용한 t-flash제어 방법 문의 [4]

프레임 버퍼 픽셀 값 쉬프트 연산하는 방법 [1]

[V210] I2C #1 에 관한 질문입니다.

임베디드 리눅스에서 t-login(hsdpa 3g modem)을 사용하려고 합니다.

MountService 구조에 대해서 의문점 [3]

SDCARD 영역에 App 설치

DMA 컨트롤 관련 문의 드립니다. [3]

LCD가 256 컬러 처럼 나오는데요... [2]

  • 현쓰
  • 2012-05-15
  • 조회 수 1595

bootargs에서 mem은 정확히 무엇을 하는 것인가요? [2]

s3c24X usb host [1]

사용자 로그인