내가 독자적인 드라이버를 만들거나
운영체제를 막 커스터마이즈하는건 아닌데
프로세스와 스레드 개념
스케쥴링 정책
메모리 할당 정책 세그먼트 페이징
입출력 파일시스템
이론 공부했고 공룡책도 2,3번 돌려봄
게임 서버프로그래밍 하는걸 좋아해서
멀티테스킹이나 입출력관련 자원 활용 많이하고
개발할 때 신경을 많이 쓰는 편인데
신입기준 이정도면 운영체제 열심히 공부했다 해도되나
아니라면 뭘 더 공부해야 대지
- dc official App
그 사람들이 어떤 수준을 원하는지가 중요하겠지 보통은 그정도만 알아도 되고 운영체제 잘 알아요 = OS 간단한거 만들어봄 이렇게 생각할수도있고
면접관이 판단해주겠지
ㅇㅋ 역시 자소서는 자신감이다 - dc App
디바이스 드라이버 책을 보면 니 실력이 즉시 뽀록난다. 디바이스 드라이버 책을 보면 니가 운영체제에 대해서 정말 무식하고 아는 게 없다는 것을 뼈저리게 느끼게 된다. 다시 한 번 말하지만 운영체제를 안다고 까불지 마라. 디바이스 드라이버 책을 보고 나서 전체 그림을 쉽게 쉽게 그리기 전에는 운영체제 안다고 말하는 거 아니다.
일단 디바이스 드라이버 책 부터 3~4권 사다놓고 다 읽고 이해해 봐라. 그리고 나서 운영체제 운운하면서 떠들기 바란다.
공룡책에 나오는 내용은 그야말로 1%에 불과하다. 아마 너는 지금 가장 기초적인 내용도 모르고 있을 가능성이 매우 높다.
섹스 - dc App
사실 이게 맞는말인데 그럼 내가 아는부분만 말하려면 뭐라고 부르는게 맞는거 - dc App
공룡책에 나오는 내용은 " 운영체제에서 사용하는 정책(policy)을 소개한 것" 에 가깝다. 개별내용을 소개했을 뿐이지, 그것들이 실제로 어떻게 맞물려 돌아가는 지 전체흐름을 설명하라고 하면 공룡책으로는 안 된다. 이를테면 가상메모리주소에서 물리메모리주소로 이어지는 내용의 경우에도 니가 디바이스 드라이버 공부를 해 보면 공룡책에서 소개한 그 맥락과 실제 맥락이 전혀 다르다는 걸 알게 된다.
와 그럼 디바이스 드라이버 공부하려면 뭔책봐야함? - dc App
나도 책 추천좀 해주라
나는 그냥 "윈도우 드라이버", "리눅스 드라이버" 검색해서 나오는 국산책, 외국책 합쳐서 10권정도 샀음 (약 30만원어치).... 나는 디바이스 드라이버 공부해 보고 나서야 비로소 프로세스와 스레드의 개념을 잡을 수 있었음. 이를테면 프로세스와 스레드에 대해서 OS책은 두리뭉실하게 원론만 지껄일 뿐이지만 드라이버 공부하면 정확하게 프로세스의 영역이 어디까지고 스레드가 어디까지 인지 칼같이 따지지 않으면 이해 자체를 못 하게 거부함. 그 외에도 가상주소가 프로세스별로 각각 4G씩 있다는 게 무슨 의미인지도 디바이스 드라이버 공부할 때 비로소 구체적으로 알 게 됨.
아아 너는 '진짜'다
그정도 깊이로 어떤 일을하고있냐 궁금
니 따라가야겠다 - dc App
근데 그런책읽으려면 일단 공룡책은 선행되야하냐? 나 유튜브강의밖에 안들어봄
OS 안에서 벌어지는 중요한 맥락은 (1) User모드와 kernel모드 전환시에 각 사용자 프로세스와 시스템(os)프로세스가 차지하는 영역이 어떻게 변동하는가? (2) 프로세스 내에서 스레드들이 스케쥴링에 따라서 CPU를 엎치락 뒤치락 차지할 때 각각 사용가능한 자원, 사용불가능한 자원, 공유영역 침해를 막는 각종 수단들 (3) 사용자 APP의 가상주소가 Kernel또는 드라이버 영역의 메모리와 사상되는 각종 방식들 ( 각 프로세스별로 4G씩 가상주소가 있는데 이것들끼리 "동적으로" 영역배제되는 것을 이해해야 됨 ) ... 대략 이 3가지에 대해서 확고한 개념이 있어야 됨.
내가 디바이스 드라이버 공부해 보기 전부터 느낀 건데.......디바이스 드라이버 공부해보고 다시 한 번 뼈저리게 느낀 게 뭐냐면......한국 뿐 아니라 세계적으로 IT 교육 자체가 잘 못 되어 있다는 거임. IT교육은 반드시 OS부터 가르쳐야 되고, 그냥 대충 원론 가르치고 넘어가는 지금 엉터리 교육이 아니라 OS를 아주 철저하게 "맥락 지향"으로 가르쳐야 됨. 물론 맥락지향적으로 이해하는 데는 디바이스 드라이버의 관점에서 보는 게 가장 정밀하고 정확함. 그래야 비로소 컴퓨터가 어떻게 돌아가는 지 감을 잡고 실질적으로 응용할 수가 있게 됨.
개 십 디테일하네 ㄷㄷ
59.28은 커널 책부터 3~4권 사다놓고 다 읽고 이해해 봐라. 그리고 나서 운영체제 운운하면서 떠들기 바란다.
디바이스 드라이버 책에 나오는 내용은 그야말로 1%에 불과하다. 아마 너는 지금 가장 기초적인 내용도 모르고 있을 가능성이 매우 높다.
뭐지 이 재귀적 답글은 ㅋㅋㅋㅋㅋㅋㅋ - dc App
223.38 // 난 커널책도 10권 넘게 갖고 있음. 커널책은 지엽적인 설명이 많거나 추상적인 원론에 가까운 내용이 너무 많기 때문에 흐름을 파악하는 데는 부족한 면이 있음. 디바이스 드라이버책을 봐야 맥락이 잘 이해가 됨.
근데 책을 엄청 많이보시네여 전 한학기에 한권보기도 벅찼는데 같은 주제로 보면 볼수록 속도가 빨라짐? - dc App
223.38 // 61.73 // 시중에 있는 커널책 사서 봐라. 그 중에 맥락지향적으로 쓰여 있는 책이 과연 몇권이나 되는가 ? 그리고 보는 사람이 제대로 이해할 수 있는 추상도로 쓰여 있는 책이 과연 있기는 한가 ? 나도 커널 책 많이 갖고 있고 읽어 봤지만 실질적으로 도움이 되는 건 디바이스 드라이버 책이야. 커널책은 커널 중심으로 쓰여 있고 맥락은 소홀하지만 디바이스 드라이버 책은 APP-커널-디바이스드라이버 연계흐름을 중심으로 쓰여 있기 때문에 맥락파악에는 이 쪽이 훨씬 도움이 됨. 이를테면 리눅스 커널의 이해라는 책의 경우에 아예 별명이 "리눅스 커널의 오해"라고 불리운다. 그 책 한 번 읽고 과연 커널에 대한 이해가 높아 졌는지 자문해 보기 바란다.
61.73 // 각 분야별로 10권 넘게 사서 교차검증해 가면서 공부해야 됨. 한국책뿐 아니라 일본책, 미국책 다 구해서 봄.( 일본어, 영어 미리미리 공부해서 잘 하면 이득봄 ) 주요분야는.... 어셈블리, C/C++ , STL , boost, 컴파일러, 커널, 디바이스 드라이버, 병렬분산, 네트워크, 리버싱, OS API, 그래픽API 이 분야별로 각각 10권 이상 좋은 책만 철저하게 골라서 봄. 코딩도 중요하지만 이치를 아는 게 중요함. 그래야 좁은 틀에 갇히지 않고 필요할 때 필요한 분야로 빨리빨리 영역을 넓힐 수 있음. 그리고 좋은 책이라고 해도 빠뜨린 게 많기 때문에 수시로 블로그나 스택오버플로우 같은 사이트를 뒤져서 내가 모르는 단면을 빨리빨리 캐치해 내야 공부가 빨라짐.
그래서 지금 그 방대한지식으로 무슨일하고있냐
교차검증은 당연한 얘긴데 생각을 안해봤네 맞는얘기다 - dc App
확실히 대학교 운영체제 강의들으면 교양같은 느낌이 좀 있음