[c] 로또 번호 출력하기(번호 간 중복 허용) c에서 로또 번호(1~45 사이의 임의의 난수) 를 출력하는 예제이다. 필요 헤더 파일: stdio.h, stdlib.h , time.h 살펴볼 점: - line 10: 난수 발생기 초기화 : 동등한 난수 시퀀스를 생성하지 않게 하기 위함 - line 14: 로또 번호 생성 함수: rand() % 45 + 1 는 랜덤한 값을 45로 나눈 나머지 값에서 1을 더함으로서 1에서 45까지의 랜덤인 수를 출력하는 데 필요한 함수이다. IT/Algorithm 2023.10.11
[운영체제] 가상메모리 개념, page fault 개념, page fault 발생 시 가상메모리 지원 여부에 따른 시나리오 - 가상메모리는 물리적 메모리에 backing store가 결합된 것으로 프로세스가 메모리에 적재되지 않도 프로세스 실행이 가능하고 물리적 메모리보다 크기가 크다. 또한 페이지 단위의 swap을 하며 입출력 크기의 감소가 있다는 장점을 가진다. -page fault는 page table을 참조하여 주소 변환을 할 때 valid 비트가 0으로 설정되어 있는 invalid 상태일 경우 발생한다. 1. page fault 발생시, 가상메모리를 지원하는 운영체제는 메모리에는 없지만, 디스크에 있으면 해당 페이지를 메모리로 적재한 후 실행시킨다. 만약 유효하 지 않은 참조일 경우 프로세스를 중단시킨다. 2. page fault가 발생할 때 가상메모리를 지원하지 않는 운영체제는 프로세스를 swap out 하고, 디.. IT/Computer Science 2023.06.03
[운영체제] Thrashing(쓰레싱) 개념과 발생 원인, 예방 방법 - 쓰레싱은 빈번한 페이지 교체로 인해 프로세스가 swap in/out 하느라 바쁜 상황을 말한다. 충분한 page를 할당하지 않아 page fault 비율이 높아지게 되고 swap in/out에 시간을 쓰기 때문에 cpu 이용률이 하락한다. cpu 이용률을 높이기 위해 다중 프로그래밍의 정도를 높이게 되어 page fault 비율이 더 높아지게 되고 cpu 이용률이 더 하락하게 되어 쓰레싱이 발생한다. 쓰레싱이 발생하지 않기 위한 방식으로는 working set model과 PFF방식이 있다. Working set model 방식은 전체 frame 요구량이 할당한 프레임보다 클 때 발생하는 쓰레싱 상황에서 한 프로 세스를 중지하고 이 프로세스의 page를 다른 프로세스에게 할당하는 방식이다. PFF 방.. IT/Computer Science 2023.06.02
[Java] Hello world 출력 java에서 Hello, world를 출력하는 문제. 위의 코드대로 입력하면, 정상적으로 출력됨을 확인할 수 있다. IT/Algorithm 2023.05.30