본문 바로가기

분류 전체보기86

9. 교착 상태 1 ■ 교착상태 다중 프로그래밍 시스템에서 프로세스가 결코 일어나지 않을 사건(event)을 기다리는 상태로서 프로세스가 교착 상태에 빠지면 작업이 정지되어 명령 진행이 불가한 상태를 말한다.  ■ 각자가 자원을 쓰고 있음. 그러나 서로가 가진 자원을 요구함. 그래서 교착상태에 빠짐 ■ 스풀- 임시공간- 예를 들면 인쇄에 필요한 프로세스들이 모이는 공간- 즉 스풀 공간에 너무 많은 작업이 요청될 경우 교착에 빠짐.- 일정 포화 임계치를 설정해서 (예를들면 75%까지만) 예방할수 있다. ■ 디스크에서의 교착-대표적인 공유자원-공유자원이기 때문에 서로 쓸려다가 교착상태 발생  ■ 디스크제어기가 교착상태에 빠지지 않게 해준다. 한 작업이 쓰면 다른 작업은 못쓴다! ■ 네트워크에서 발생할 수 있는 교착상태- 트래픽.. 2024. 7. 8.
11. 다차원 배열 ■ 2차원 배열- 우리가 앞서 배운 것은 1차원 배열이다.- 행과 열로 구성됨 (예를 들면 모니터다. 모니터 1920x1080을 나타내기 위해선 2차원 배열이 필요하다)- 관계형 DB  ■ 주소의 주소 포인터형 변수의 배열 ■ 문자열 문자의 배열 Java에서는 String 클래스에서 관리 ■ 2개의 대괄호 [  ][  ] 을 주게 되면 2차원 배열로 인식한다.  행, 열 순서대로다  [행][열] ■     ■2차원 배열을 위한 반복문의 중첩 예제■2차원 배열을 위한 반복문의 중첩 예제는 여기까지        나중에 체크     ■ 문제 2차원 배열은 행과 열을 가진다. O맞다.첫 번째 대괄호 안의 숫자는 행을 의미하고, 두 번째 대괄호 안의 숫자는 열을 의미한다. 문자열에 대한 옳지 않은 설명은? 2  .. 2024. 7. 8.
10. 배열과 반복문의 조화 ■ 자바의 경우는 int arr[   ];  로 표현한다. 즉 시작주소를 위처럼 쓰지 않는다. (위는 C언어이다.) ■ HEAPSTACK은 임시 저장 공간이며, 크기가 작음 (지역변수를 저장하는 공간)HEAP은 반 영구적 저장 공간이며, 크기가 큼 (new를 해줘야 한다.) 저장공간이 크기 때문에 heap을 쓴다.Java의 배열은 HEAP을 사용■ 포인터 형 변수주소를 저장하는 변수Java의 배열은 포인터 형 변수 ■ Garbage CollectorJVM은 HEAP 공간 할당과 반환을 수행개발자의 오류를 최소화 함프로그램의 안전성을 확보 ■ 아래에서 위의 내용을 자세히 들여다보자. ■ 각 arr, newarr 마다 heap을 지정함■ 여기서 문제가 발생한다. arr 와 newarr 모두 같은 heap, .. 2024. 7. 8.
9. 데이터를 모아서 관리하는 배열 ■ 배열 의미상 유사한 정보들의 모음 ■ 배열 원소 번호(Index) 0부터 부여되는, 배열에 저장된 정보 구분 번호 선언할 때 정해진 크기에 제한을 받음 ■ 오류 컴파일 오류: 문법 오류와 기본적 어법 오류 실행 오류: 실행 중 발생하는 개발 의도와 다른 결과 예외 처리: Java에서 실행 오류를 개발자가 처리할 수 있게 함   ■배열 사용의 3단계 주의점- 배열에서는 이름 지정, 타입지정을 한 후에 공간을 확보한다. 변수선언과 차이가 있다.    ■ 배열 선언int arr[  ];- [   ] : 대괄호는 배열의 이름을 말한다.- int : 이 배열에 저장되는 값들은 int이다.- arr : 주소. arr = new int[5];- arr : 위에서 언급된 주소.- new : 공간을 잡아라, 즉 저장.. 2024. 7. 8.