하드 디스크 데이터 읽을 때의 프로세스 진행 과정
- 파일을 읽으라는 메서드를 자바에 전달
- 파일명을 전달 받은 메서드가 운영체제의 커널에게 파일을 읽어 달라고 요청
- 커널이 하드 디스크로부터 파일을 읽어서 자신의 커널에 있는 버퍼에 복사 (DMA에서 작업)
- DMA (Direct Message Access)
- CPU의 개입 없이 주변장치와 주기억장치와의 데이터 직접 전송
- 자바에서는 마음대로 커널의 버퍼를 사용하지 못하므로, JVM으로 그 데이터를 전달
- JVM에서 메서드에 있는 스트림 관리 클래스를 사용하여 데이터를 처리
NIO (New Input/Output) / Java 4
[Java] IO와 NIO의 차이점? / IO와 NIO의 선택
NIO ? 자바 4부터 새로운 입출력(New Input/Output)이라는 뜻에서 java.nio 패키지가 포함되었는데 자바 7로 버전업하면서 IO와 NIO 사이의 일관성 없는 클래스 설계를 바로 잡고 비동기 채널 등의 네트워
dev-coco.tistory.com
NIO2 Java 7
[Java] NIO2란?
NIO2란? · New Input Output2의 약자로 자바 1.4에 등장한 NIO를 개선 · java.io 패키지의 File 클래스에 미흡한 부분을 보완하는 내용이 다수 포함, 네트워킹 I/O에 마이너한 변화 포함 - 이전의 자바에서 다
scshim.tistory.com
JNI (Java Native Interface)
JNI (JAVA Native Interface)
📋 JNI란? 자바 네이티브 인터페이스는 자바 가상머신(JVM)위에서 실행되고 있는 자바코드가 네이티브 응용 프로그램(하드웨어와 운영 체제 플랫폼에 종속된 프로그램들) 그리고 C, C++ 그리고 어
velog.io
'개발서적 > 자바 성능 튜닝 이야기' 카테고리의 다른 글
[자성튜이] JSP와 서블릿, Spring (0) | 2024.09.16 |
---|---|
[자성튜이] 로그 작성 (0) | 2024.09.16 |
[자성튜이] static에 관하여 / reflection (0) | 2024.08.22 |
[자성튜이] String을 자제해라 / for문을 더 빠르게?? (0) | 2024.08.22 |
[자성튜이] 속도 측정 (0) | 2024.08.22 |