반응형


출처 : http://ybhsos.tistory.com/25

1. http://java.sun.com/products/archive/index.html 에 접속

2. Linux JDK를 다운받는다.

3. 다운로드 디렉토리로 이동 및 파일 속성확인
[root@centOs-IA32 ~]# cd
[root@centOs-IA32 ~]# cd Desktop
[root@centOs-IA32 Desktop]# ls -l jdk-1_5_0_13-linux-i586-rpm.bin
-rw-r--r-- 1 ~~~~~~~~~~

4. 파일 퍼미션 변경 - 실행 권한을 주기위해 실행
[root@centOs-IA32 Desktop]# chmod u+x jdk-1_5_0_13-linux-i586-rpm.bin

5. 권한 추가후에 파일 실행

[root@centOs-IA32 Desktop]# ./jdk-1_5_0_13-linux-i586-rpm.bin

6. 라이센스 동의
YES/NO 선택 설치를 하기위해서는 YES 선택

7. rpm 파일이 생성되었는지 확인
[root@centOs-IA32 Desktop]# ls jdk-1_5_0_13-linux-i586.rpm

8. 프로그램 설치
[root@centOs-IA32 Desktop]# rpm -ivh jdk-1_5_0_13-linux-i586.rpm

9. PATH 설정 (경로 확인)
[root@centOs-IA32 Desktop]# ls/usr/java/jdk1.5.0_13

10. 환경변수 추가
[root@centOs-IA32 Desktop]# vi /etc/profile
/etc/profile 파일을 찾아서 열고
#java_environment
JAVA_HOME =/usr/java/jdk1.5.0_13
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME

11. 시스템 적용시키기
[root@centOs-IA32 Desktop]# source /etc/profile

12. 시스템 확인
[root@centOs-IA32 Desktop]# java
[root@centOs-IA32 Desktop]# java -version

반응형

'OS > LINUX Common' 카테고리의 다른 글

tmpfs 설정하는 방법  (0) 2014.04.16
GNU tar의 특이성 , 체크섬 오류  (0) 2013.07.09
리눅스 vsftpd 설치 / 설정.  (0) 2011.10.14
리눅스 계정관리 ----LINUX  (0) 2011.08.21
리눅스명령어 43개  (0) 2011.08.21
반응형


출처 : http://kldp.org/node/92461

-------------------------------------------------------------------

질문 :
안녕하세요 코딩하다가 삽질하다가 의문의 생겨 질문 올립니다.

동적 메모리 할당에서요
malloc / new 를 하고서
free / delete를 했는데 프로세스가 OS로 메모리 반환을 하지 않네요...

pa aux | grep "프로세스명" 해서 메모리 체크를 하는데요...
뭣땜에 그런건지.. 힌트라도 부탁드려요
뭘 놓지고 있는건지 ㅠㅠ

버전은 AIX 5.2이고 컴파일러는 xlC_r 입니다;
-------------------------------------------------------------------

답변 :
퍼온 글입니다. 참고하시길..

AIX 에서 malloc, free 사용시 프로세스의 메모리 사용을 모니터링하면 free 시 메모리가
커널에 원하는 만큼 반환되지 않는 것을 알 수 있습니다. 이는 커널에서 메모리 사용효율을
극대화 하기 위해 AIX 가 사용하는 내부 아키텍쳐에 기반한 지극히 정상적인 현상입니다.

따라서 메모리 할당/해제 관련 malloc, free 사용시 메모리의 효율적 사용을 고려한 AIX 의
기본처리 방식을 무시하고 함수이름 그대로 메모리를 할당/해제 하고자 한다면 해당
프로그램에서 메모리 free 시 disclaim 함수를 free 에 앞서 추가로 호출하거나 AIX 5.2 의
경우 프로그램 시작 전에 다음의 환경변수를 set 하면 됩니다.

MALLOCDISCLAIM=true

------------------------ AIX 에서의 메모리관리 기본방식 ----------------------------

When you free memory it does not go back to the system in case you need to use the
same amount of memory again.

we will use disclaim() instead of free which really returns the memory or associated
paging space to the system.

It is not sufficient to use the free() subroutine to free the space that was allocated with
the malloc() or calloc() subroutines. The free() subroutine releases only the address
range that the structure occupied. To release the real memory and paging space, use
the disclaim() subroutine to disclaim the space as well.The call to disclaim() should
be before the call to free().

-------------------------------------------------------------------

결론 :

ps aux 를 사용해서 메모리 사용량을 체크했을때 RSS 를 보면 늘어나기만 했지 줄어들지는 않는다.
이게 왜 이럴까 이러다가 난리 나는거 아닌가 싶었는데... 알아보니
위의 이유 때문이었다!! 결론적으로 프로그램이 처음에 구동 되었을때 RSS가 급격하게 증가하더라도 결국에는 어느 한 지점에
멈춰야 하는다는 것이다. 즉 메모리 사용량 최고치를 써놓으면 그게 더이상 늘지 않아야 한다는것.
즉 RSS는 윈도우 작업관리자의 최고 메모리 사용량과 일맥상통하는 개념같다...

반응형

'OS > AIX::' 카테고리의 다른 글

AIX 컴파일 정보 2  (0) 2012.12.05
AIX Thread Dump 분석 방법  (0) 2012.08.22
AIX 라이브러리 버전 확인  (0) 2012.07.12
AIX 컴파일 정보  (0) 2011.10.05
nmon 을 사용하여 서버 모니터링 하는 방법  (0) 2011.08.20

+ Recent posts