프로세스 2

[프로그래밍] Thread with Java

해당 내용은 인프런의 즐거운 자바 를 보고 정리한 내용입니다! 병렬화 할 때 고려해야 할 것들 메모리의 속도 CPU 캐시 메모리 디시크 네트워크 컨넥션 순차적 실행이 병렬실행보다 빠른 경우도 있다. 동시 실행에 따라는 오버헤드가 없고, 단일 CPU 알고리즘은 하드웨어 작업에 더 친화적일 수 있기 때문이다. 암달의 법칙(Amdahl's Law) 병렬 컴퓨팅을 할 경우, 일부 병렬화 가능한 작업들은 사실상 계산에 참여하는 컴퓨터의 개수에 비례해서 속도가 늘어난다. 이러한 경우 암달의 법칙에 의해서 전체 수행시간의 개선 효과는 병렬화가 불가능한 작업들의 비중에 크게 영향을 받게 된다. 아무리 컴퓨터의 개수가 늘어나더라도 속도의 한계는 정해져있다. 병렬 VS 병행 병행(Concurrent)은 멀티스레드 프로그래..

스터디 - 2주차

프로세스(Process) 👉 프로세스의 문맥(context) 어떤 단어를 사전에서 찾아보면 여러 가지 의미로 정의 되어 있어서 전체적인 문장 구조를 확인해야지 정확하게 어떤 의미로 사용했는지 알 수 있다. 즉, 프로그램이 처음 실행되어서 종료 되는 과정 중간에 끝나면(멈추게 되면) 해당 프로그램이 처음에 무엇을 어떻게 실행 되었는지 그리고 현재 시점에서 어떤 상태에 있는지 나타내기 위해서 사용되는 것이 문맥이다. 👉 프로세스 작업 과정 프로세스가 실행되면 메모리에 독자적인 주소 공간을 형성(stack, data, code 생성)하고 프로세스가 CPU 를 잡게 되면 프로그램 카운터(PC)가 프로세스 code 부분을 가리키고 있고 매순간 기계어를 하나씩 읽어서 레지스터에 값을 넣고 논리산술 연산을 하거나 결..

Computer Science/OS 2022.08.22