운영체제 2

[운영체제] 패키지(리눅스 배포 패키지, npm)

개발을 하는 우리는 항상 리눅스를 사용한다. 그런데, 사람들의 블로그 포스팅을 보면 항상 이해되지 않는 한 가지가 존재했다. 왜 어떤 사람은 yum을 쓰고 어떤 사람은 apt를 쓸까? 이 질문에서 패키지라는 것을 학습해봐야겠다는 생각이 들었다. What is Package? 패키지는 소스코드 패키지, 바이너리 패키지로 분류된다. (저급언어/고급언어에 대해 안다면 이해가 쉬울 것 같다) 소스 패키지는 소스 코드로 이루어져 있는 패키지이다. 이를 읽고 실제로 컴퓨터에 적용시키려면 컴파일을 한 후 바이너리 코드를 컴퓨터에서 실행시켜야 한다. 그래서 설치가 더 오래걸린다는 단점이 존재한다. 또한, 하드웨어의 더 많은 저장공간을 차지한다고 한다. 그리고, 컴파일 에러가 발생할 수 있다는 단점이 있다. 바이너리 패..

CS/운영 체제 2024.04.03

[운영체제] 컴퓨터 구조 간단하게 정리해보기(부제. 왜 스왑 메모리가 느렸을까?)

컴퓨터 구조부터 시작해서 점점 깊이있게 파보려고 한다. 기본적으로 컴퓨터의 구조를 이야기해보라고 하면 넓게 CPU, 주기억장치, 보조기억장치, 입출력장치, 메인보드로 분류를 한다고 한다. CPU에서 연산과 명령들이 나오고 이걸 주기억 장치에 담아두거나 데이터를 가져오고, 보조기억장치에는 데이터를 저장, 삭제등을 진행하고 입출력 장치로 키보드 뚜따뚜따(?)하거나 마우스 딸깍하거나(그래서 내가하던 마비X기라는 게임에서 딸각충이라는 말들이 많았다. 키보드 안쓰고 마우스만 한번 누르면 된다고..) 해서 입력하고 모니터로 보거나 스피커등으로 듣는 입출력 장치가 있고 조립식 컴퓨터 사면 맨날 뭐 하나 잘못꽂아넣는 메인보드가 있다. 이정도는 나도 대충은 들어봤었다. 그렇다면 이들은 실질적으로 어떻게 맞물릴까? 내가 ..

CS/운영 체제 2024.03.15