시분할과 Realtime이 혼용된 것?
➡️ 아니다. 아예 처리 방식이 다른 운영체제이고, 우리가 일반적으로 사용하는 iOS는 시분할 방식이다. 시분할 방식 위에서 어떻게 실시간성을 보장할지에 대한 고민을 한 소프트웨어가 있을 뿐이다
제한된 CPU 안에서 컨텍스트 스위칭을 하면서 작업을 처리하는 시분할 환경에서, 어떻게 아프리카TV 등의 소프트웨어는 딜레이를 짧게 가져갈 수 있는가?
➡️ 메모리 부족 시 영상도 끊기는걸로 보아, 실시간 스트리밍도 적절한 메모리 분배, 프로세서 분배를 통해서 효율적으로 이루어지기에 가능할 것이다. 응답을 기다리지 않고 계속 데이터를 받아오는 네트워킹 방식(UDP)을 통해서 계속 작은 단위의 패킷을 받아오는 것으로 생각된다.. → 네트워킹 방식을 통해 해결 가능
프로세스: 메모리에 올라가서 작동중인 프로그램 하나의 프로세스에 여러가지 Task가 포함되어있음...? Task는 작업의 최소 단위?
멀티태스킹 - 동시성 프로그래밍 멀티프로세스 - OS 관점에서? 여러 프로세스가 메모리에 올라가 있는 것 멀티프로그래밍 - 여러 프로그램이 메모리에 올라와 있음을 강조하는 개념 멀티스레딩 - 프로세스 관점에서 여러 스레드 모두 비슷한 동시성 개념이지만, 어떤 부분을 강조하는가 / 무엇을 주체로 논하는가의 차이