[OS] Thread 의 등장 배경에서 경제학을 보았다.

forhjy
3 min readApr 10, 2021

--

운영체제에 경제학을 한 스푼

Photo by AbsolutVision on Unsplash

운영체제 수업을 듣다보면 참 흥미로운 이야기들이 많이 나온다. 운영체제가 없던 시절에는 개발자가 응용프로그램을 실행시키려고 직접 하드웨어를 조작했다는 이야기(아마 PCB를 개발자가 직접 관리했겠지..?ㄷㄷ)도 듣고..컴퓨터 부팅할 때 최상단 부모 프로세스가 생기는 거나, 작년에 주구장창 썼던 fork, exit 함수들이 프로세스 생성과 종료(수업에서 들으니 반가웠다)를 관할하는 시스템 호출이라는 등..

암튼 전통적인 프로세스는 처리의 기본 단위이며 자원 소유의 단위(하나의 주소공간) 및 디스패칭의 단위(하나의 제어흐름)이다. 단일 프로세스 내에서 동시처리가 불가능했기에 Thread 쓰레드라는 개념이 등장하게 되었다. 결국 한정된 자원을 최대한 잘 활용하기 위해 등장했다는 것이다.

이 지점에서 경제학을 보았다. 경제학에서, 효용(效用,Utility)이란 재화와 용역의 사용으로부터 얻을 수 있는 주관적인 만족을 측정하는 단위이다. 효용은 후생경제학의 핵심 개념이기도 하다. 공리주의에서는 사회 조직을 위한 도덕적 기준으로서 효용의 극대화를 주장했다. 벤담(Jeremy Bentham, 1748–1832년)이나 (John Stuart Mill, 1806–1876년)같은 공리주의자에 따르면 사회는 최대 다수의 최대 행복을 위해 사회 모든 주체들의 개인적인 효용 극대화에 초점이 맞추어져야 한다.

효용 이론이 가정하는 인간은 되도록 개인의 효용을 극대화하려는 합리적 인간이다. 이를테면, 개인은 어떠한 것을 사용할 수 있고, 양으로 측정할 수 있으며 어떠한 상황에 합리적인 것이라면 효용을 더 요구할 것이라는 거다.

CPU와 메모리는 한정되어 있으니 이 안에서 최대치를 뽑아보자 이거다. 프로세스 안에 스레드를 만들어서 자원을 최대한 효율적으로 써보는 것이다. 그런데 이제 실물로는 모자라니까 가상의 메모리를 만들기도 하고, 더 나아가면 클라우드 가상화 기술(docker, k8s…)까지 확장시켜 볼 수 있겠다.

미래에는 이런 가상화 기술이 어떤 식으로 더 발전하게 될 지 궁금하다. 이런 가상화도 모자라는 날이 올 것인지..? 잘 상상이 안되지만 미래의 사람들도 최대효용을 추구하며 이것보다 더 효용을 줄 수 있는 무언가를 개발하지 않을까하는 생각을 해본다.

--

--

forhjy
forhjy

Written by forhjy

Software Engineer Based in Seoul

No responses yet