목록분류 전체보기 (289)
개발자는 기록이 답이다

📌 병행성(동시성)(Concurrency)병행성(Concurrency)은 여러 작업을 동시에 실행하는 것처럼 보이도록 처리하는 개념입니다. 실제로는 CPU가 여러 작업을 교대로 처리하는 방식으로, 각 작업이 짧은 시간 동안 번갈아가며 실행되므로, 사용자에게는 동시에 실행되는 것처럼 보입니다.병행성은 단일 CPU 환경에서도 가능하며, 주로 여러 작업이 서로 간섭하지 않도록 동기화 기법을 사용해 제어합니다.📌 병렬성(Parallelism)병렬성(Parallelism)은 여러 작업을 병렬적으로 실제로 동시에 실행하는 개념입니다. 다중 코어 또는 다중 프로세서 환경에서 각 코어가 서로 다른 작업을 병렬로 실행합니다.병렬성은 CPU가 여러 개일 때, 각 CPU가 독립적으로 하나씩 작업을 처리하는 방식으로,..
📌 기아 상태가 무엇인가요?기아 상태(Starvation)는 운영체제의 스케줄링에서 우선순위가 낮은 작업이 계속해서 CPU 자원을 할당받지 못해 무기한 대기 상태에 빠지는 상황을 말합니다. 즉, 자원을 요청했지만, 우선순위가 높은 다른 작업들에 의해 계속 차단되어 자원을 받지 못하는 상황입니다.📌 기아 상태를 어떻게 해결할 수 있나요?기아 상태를 해결하기 위해 노화(Aging) 기법이 사용됩니다. 이 방법은 시간이 지남에 따라 대기 중인 프로세스의 우선순위를 점진적으로 높여주는 방법입니다. 이렇게 하면 결국에는 모든 프로세스가 CPU 시간을 할당받을 수 있게 됩니다.📌 CPU 스케줄링에 대해 설명해주세요.CPU 스케줄링은 여러 프로세스가 CPU를 사용하려고 할 때, 어떤 프로세스에 CPU를 할당할지..

프로세스📌 프로그램과 프로세스에 대해 설명해주세요.프로그램은 저장장치에 존재하는 컴파일된 코드의 집합입니다.실행되기 전까지는 그저 저장장치에 존재되는 데이터에 불과하지만, OS에서 명령을 받아 메모리에 적재하게 되면 그때부터는 운영체제의 관리를 받으며 CPU 자원을 통해 동작하는 '프로세스' 가 됩니다. 참고 : 혼자 공부하는 컴퓨터 구조와 운영체제 📌 프로세스 문맥에 대해 설명해주세요.프로세스 문맥은 운영체제가 특정 프로세스를 실행하기 위해 필요한 모든 상태 정보를 말합니다. 프로세스가 실행되면서 사용하는 CPU 레지스터, 프로그램 카운터, 메모리 관리 정보, 스택 포인터, 프로세스의 현재 상태(실행 중, 대기 중, 종료 등), 열려 있는 파일 디스크립터 등과 같은 정보를 포함합니다.프로세스 문맥은..

📌 운영체제는 무엇이고 어떤 역할을 수행하는지 설명해주세요. 모든 프로그램은 실행을 위해 자원을 필요로 하는데, 운영체제는 운영체제는 컴퓨터 하드웨어와 소프트웨어 자원을 관리하며, 실행할 프로그램에 필요한 자원을 할당하고, 프로그램이 올바르게 실행되도록 돕는 소프트웨어입니다. 이 자원에는 CPU, 메모리, 저장 장치, 네트워크 패킷, 파일 등이 포함됩니다. 실행중인 응용 프로그램은 메모리에 적재되는데, 운영체제도 실행중인 응용프로그램이기 때문에 메모리에 적재되어 실행됩니다.하지만 운영체제는 컴퓨터를 동작시키는 너무 중요한 프로그램이기 때문에, 메모리에 따로 적재되는데 커널 영역이라는 곳에 적재됩니다.즉, 메모리의 사용자 영역에서 실행 중인 여러 응용 프로그램들이 적재되어 있다면, 그 위에 커널 영역에 ..