Information Security Study
240117 회고록-리눅스(잡/프로세스 종료, 셔뱅), 운영체제, 자바(예외처리, try~catch, throws) 본문
네트워크 캠퍼스/회고록
240117 회고록-리눅스(잡/프로세스 종료, 셔뱅), 운영체제, 자바(예외처리, try~catch, throws)
gayeon_ 2024. 1. 17. 17:51잡의 종료
1) 포그라운드에서 실행 중인 잡은 ctrl+c로 종료
2) 백그라운드에서 실행 중인 잡은 kill %잡번호 로 종료
프로세스의 종료
kill pid번호로 종료
* 프로세스는 현재 로그인 중인 유저가 실행한 프로세스만 삭제할 수 있다.
셔뱅
: 셸 스크립트 작성 시 어느 경로에서든 바로 실행할 수 있도록 첫 행에 파일/경로를 작성하는 것
운영체제
VIRT, RES, SHR은 현재 프로세스가 사용중인 메모리와 관련된 값이다.
VIRT: 위의 VIRT + RES + SHR를 모두 포함한 영역으로 각 Task에 할당된 메모리 전체
RES: 할당된 메모리 중 실제로 사용되고있는 물리 메모리의 양이
SHR: 다른 프로세스와 공유중인 메모리의 양
가상 메모리를 배정하는 이유
- 메모리를 물리적으로 처음부터 할당을 하면 비효율적이다.
- memory commit이 아닌 형태로 프로세스를 분리하게 된다면 이미 할당된 영역 대다수가 쓸모 없는 영역이 된다.
memory commit
프로세스의 요청에 따라 가상으로 최대 얼마까지 배분하겠다는 상한선을 정하고 실제로 메모리에 쓰기 작업이 진행되어야 실제로 할당을 하는 방식
자바의 예외처리
예외에는 컴파일러 체크 예외와 실행 예외가 있다.
컴파일러 체크 예외
: 자바 소스를 컴파일하는 과정에서 예외 처리 코드를 검사하여 예외 처리 코드가 없다면 컴파일 오류가 발생
실행 예외
: 컴파일하는 과정에서 예외처리 코드를 검사하지 않는 예외
try~catch
- try~catch~finally 블록은 생성자 내부나 메서드 내부에 작성한다.
- 예외 발생 여부와 상관없이 항상 실행할 내용은 finally 블록 내부에 작성한다.
다중 catch 블록 작성 시 주의사항
- 상위 예외 클래스가 하위 예외 클래스보다 아래쪽에 위치해야 한다.
- catch 블록은 위에서부터 차례대로 검색되므로 상위 예외 클래스의 catch 블록이 위에 있다면 하위 예외 클래스의 catch 블록은 실행되지 않는다.
throws
- 예외처리를 직접 수행하지 않고 메서드 호출자에게 예외를 넘기는 방법이다.
- throws 키워드가 붙어있는 메서드는 반드시 try 블록 내부에서 호출되어야 한다.
'네트워크 캠퍼스 > 회고록' 카테고리의 다른 글
240121 3주차 주간회고록 (0) | 2024.01.19 |
---|---|
240119 회고록-리눅스(if [ 명령어 ], &&, ||), 자바(String과 StringBuffer / StringBuilder) (0) | 2024.01.19 |
240118 회고록-리눅스(source와 .의 차이, profile, if), 자바(throw, 사용자 정의 예외) (0) | 2024.01.18 |
240116 회고록-리눅스(프로세스, 잡), 자바(추상메서드, 템플릿 메서드) (0) | 2024.01.16 |
240115 회고록-리눅스(grep), 자바(싱글톤 패턴, final, abstract) (0) | 2024.01.15 |