22.10.15 TIL☀️

조배·2022년 10월 15일
2

TIL

목록 보기
21/30
post-thumbnail


아침에 병원가는길에 찍은 사진이다.
나는 사실 편견이 많이 없는(?) 사람이라고 생각 하고 있었는데 꽃이 무조건 예쁘다는 편견을 가지고 있었나 보다.
아주 예쁜 나뭇잎을 가진 나무 덕분에 자아성찰도 하고, 병원가는길을 기분 좋게 다녀왔던 것 같다.

CS:APP

운영체제는 하드웨어를 관리한다.

운영체제(Operating system)의 주요 목적은 두가지이다.

1. 제멋대로 동작하는 응용 프로그램들이 하드웨어를 잘못 사용하는 것을 막기 위해
2. 복잡하고, 매우 다른 저수준 하드웨어 장치들을 조작하기 위해

쉽게 이해하자면 운영체제는 사용자가 쉽게 장치들을 관리하고 동작하도록 도와준다.
운영체제를 알게되면 필수적으로 알아야하는게 있는데 바로 프로세스다.

프로세스

프로세스는 실행 중인 프로그램에 대한 운영체제의 추상화이다.
다수의 프로세스들은 동일한 시스템에서 실행되고, 각 프로세스는 하드웨어를 배타적으로 사용하는 것처럼 느껴진다.
쉽게 말해 나는 평소 음악을 들으며 코드를 짜거나, 웹 서핑을 하는 편인데 이 과정에서 음악을 실행하고 있는 프로세스, 코드를 짜는 프로세스, 웹 서핑을 짜는 프로세스가 동일한 시스템에서 프로세서가 프로세스들을 바꿔주는 방식으로 한 개의 CPU가 다수의 프로세스를 동시에 실행하는 것처럼 보이게 해준다.
이 과정은 운영체제의 커널(kernel)에 의해 관리되는데 쉽게 예를 들어 내가 음악을 듣고있다.
그런데 코드를 작성해서 프로세스가 발생하면 시스템 콜(system call)을 통해 커널에 제어권을 넘겨주게 되고,
코드를 작성하는 프로세스를 자연스럽게 진행시켜준다.

출처 : koyo KR 블로그
위의 그림을 보면 이해가 편할 것 같아서 가져와봤다.

쓰레드(Thread)

브리도의 명강의에서 쓰레드는 쉽게 말해 SCV라고 설명해줬는데 맞다.
쓰레드는 프로세스를 처리하는 일꾼 즉, 다수의 실행 유닛이다.
각각의 쓰레드는 해당 프로세스의 컨텍스트에서 실행되며 동일한 코드와 전역 데이터를 공유한다.
쓰레드는 더욱 중요성이 커지고 있는데 다수의 프로세스들에서보다 데이터의 공유가 쉽고, 쓰레드가 프로세스보다 더 효율적이라는 점 때문이다.

오늘의 추천곡 🎶


데이먼스 이어 - 'josee!' 🎵

초반부 中..

너는 달을 볼 때 눈이 커졌고

나는 너의 눈에 비친 것을 보네

네가 사랑하는 것이 나와 같아

나는 너를 보네

josee!의 처음부분의 가사인데 어떻게 이런 가사를 썼는지 이해 할 수 없다..
데이먼스 이어님이 '조제, 호랑이 그리고 물고기들'을 보고 이 곡을 만들었다고 들었는데,
영화를 아직 보지 못했지만 어떤 영화인지 짐작이 갔다.
나중에 사랑하는 사람과 꼭 이 영화를 보고 다시 한번 josee!를 들어 봐야겠다.

내일의 나에게 👍

  • 다른 dp문제 풀고, 그리디 끝내기.
profile
깃허브로 이전했습니다 -> https://chobae.github.io/

0개의 댓글