묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨넓고 얕게 외워서 컴공 전공자 되기
가상메모리 관련 질문있습니다.
선생님 안녕하세요.강의 잘 들었습니다. 다름이 아니라 가상메모리에 대해 궁금한 것이 있습니다.메모리 공간을 힙과 스택으로 구분하고,힙은 프로세스에 스택은 쓰레드에 할당된다고 하셨는데 그러면 가상메모리는 프로세스 마다 할당되고프로세스의 실행 단위는 쓰레드이니 가상메모리에는스택만 존재한다고 보면 되는 건가요?
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
정렬병합조인 질문드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드 내에서 값이 같은 경우 append를 하고indexA += 1, indexB += 1을 해주셨는데그럼 테이블B에 id가 중복된 경우 해당 행을 조인하지 못하고 건너뛰는 상황이 발생하지 않나요? 예를 들어 A의 id가 1, 2, 3, 4, 5이고B의 id가 3, 3, 6, 7 이라고 하면조인의 결과가 2행이 나와야 하는데indexA = 2 indexB = 0 에서 매칭 후바로 둘다 indexA = 3, indexB = 1이 되면조인의 결과가 1행만 나올 것 같아요
-
미해결운영체제 공룡책 강의
24:35초에 설명하는 time-sharing이 책에서 다루는 내용과 달라요.
Timesharing is allowing many users to interact concurrently with the single computerMultitasking is when multiple tasks are preformed during the same period of time in a single processor.책이나 다른 자료들에서는 time sharing 이 여러 유저들에게 일정한 시간을 단위로 cpu 를 점유할 수 있게 한다고 하는데, 이 강의에서 다루는 내용은 프로세서들을 메모리에 다 저장해놓고, 시간을 나눠서 사용하는 것이 time sharing 이라고 했어요, 유저들 간의 사용성이 언급되지 않았어요.혹시 강의 내용이 잘못된것인가 저의 이해가 부족한 것인가 싶어서 질문 드립니다.감사합니다.
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
강의안 질문
혹시 강의에서 사용하시는 ppt 자료는 받아볼 수 없을까요..?강의 잘보고있습니다!
-
해결됨곰책으로 쉽게 배우는 최소한의 운영체제론
interrupt와 DirectX 질문
안녕하세요 널널한 개발자님 덕분에 강의 잘 듣고 있습니다.기존의 GDI 엔진을 이용한 그래픽 처리의 경우 아래의 세 가지 경우에 대해 interrupt가 발생한다고 표시하셨습니다(27:49부터 작은 노란색 동그라미 표시). 자세한 설명은 없었지만 제가 이해한 바를 덧붙여서 써보면(틀린 부분 있으면 정정 부탁드립니다.)user mode에서 API를 통해 system call이 호출되어 kernel mode에 있는 GDI엔진이 실행되도록 cpu가 일을 처리해야 할 때. video card가 작업을 끝냈다고 cpu(PCI-e로 cpu와 직접 연결된 경우), 혹은 입출력 관리자에 통보할 때GDI 엔진이 작업을 끝냈다고 cpu에 통보할 때강의 내용과 관련하여 여쭤보고 싶은 점은 3 가지 입니다.kernel mode에 있는 Driver가 H/W인 video card에 작업을 요청할 때에는 interrupt가 발생하지 않는지. GDI엔진, Driver 등 커널 내부의 요소들끼리 작업을 요청할 때에는 interrupt가 발생하지 않는지.DirectX도 어쨌든 kernel mode에 진입해야 하기에 system call을 호출하여 interrupt는 발생할텐데, GDI 엔진을 사용했을 때의 interrupt 발생 횟수와 Direct X를 사용했을 때의 interrupt 발생 횟수가 어떻게 차이가 있는지.바쁘실텐데 긴 글 읽어주셔서 감사합니다.
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
원형 대기 제거 = 점유와 대기 제거인지 궁금합니다 (마지막 프로세스에 한해)
안녕하세요. 강의에서 보여주셨던 "원형 대기를 없앤 경우"가 (마지막 프로세스에 한해) 점유와 대기를 없애는 것과 동일한 것인지 궁금합니다. 원형 대기를 없애기 전에는 모든 철학자 (프로세스)가 왼쪽 포크 (자원)를 들고 있을 시 "프로세스가 자원을 들고 있으면서 다른 자원을 대기하는 경우"가 전부 발생하기 때문에 교착 상태가 발생하고, 원형 대기를 없앤 경우 (책에서 작성하신 오름차순 등)에는 모든 철학자 (프로세스)가 왼쪽 포크를 들고 있더라도 마지막 철학자가 대기를 하지 않게 되므로 자신이 왼쪽 포크를 놓으면 문제 없이 다른 철학자가 식사를 할 수 있는 것과 같은 흐름일까요?
-
미해결리눅스 소개와 리눅스 커널 Overview [저자직강 1부-1]
교재 관련
안녕하세요. 이 시리즈도 강의 교재를 올려주시나요?인프런에서 좋은 강의 많이 열어주셔서 감사합니다.
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
인터럽트 처리와 문맥교환의 차이
하드웨어 인터럽트 발생시 인터럽트를 처리하기 위해 레지스터에 저장된 데이터는 스택에 저장되는 것으로 알고 있습니다. 프로세스 문맥교환시 레지스터 값은 PCB에 백업되는 것으로 알고 있습니다. PCB 는 커널영역에서 생성되고 관리되는 것으로 알고 있습니다. 저는 하드웨어 인터럽트 발생시 레지스터값을 임시보관하는 위치인 스택이 사용자 영역의 스택으로 생각했었습니다. 그런데 커널 스택이라는 내용을 보아서요. 커널 스택이 맞나요?
-
미해결리눅스 커널의 구조와 원리: 디버깅 - Basic [저자 직강 1부-2]
sysrq magic key를 입력해도 아무런 반응이 없습니다.
안녕하세요. 강의 잘 보고 있습니다.수업을 듣고 라즈베리파이로 sysrq 매직 키를 입력해보았는데, 아무런 응답이 없어서 질문 드립니다. echo -o > /proc/sysrq-trigger-o는 poweroff인데, 위 명령어를 입력해도 메시지 출력도 없고 power off도 되지 않습니다.제가 잘 이해를 못한 것 같은데, 무엇인지 좀 알려주실 수 있나요?
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
volatile 관련 자바 classname.this 질문
DEEP DIVE : 싱글톤 패턴을 구현하는 7가지 방법 #2 ★★☆강의 volatile 설명에서 알려주신 자바 코드와 동일하게 Kotlin 코드를 작성했습니다.class Test2 { private var flag = true fun test() { Thread { var cnt = 0 while (flag) { cnt++ Thread.sleep(100) println(cnt) } println("Thread1 finished") }.start() Thread { Thread.sleep(100) println("flag to false") flag = false }.start() } }이 코드를 실행하면, flag가 바뀌는 즉시 첫 번째 쓰레드가 멈춥니다. 이유가 궁금해서 자바로 디컴파일된 코드를 확인해봤고, Thread1에서 flag를 확인할 때 Test2.this.flag와 같이 접근하는 것을 발견했습니다.ClassName.this 가 무엇인지 궁금합니다. 자바의 정석 책에 해당 내용은 없고, 구글에 검색해봤는데, 유의미한 답변으로 아래 글만 발견했습니다.Within an instance method or a constructor, this is a reference to the current object — the object whose method or constructor is being called. You can refer to any member of the current object from within an instance method or a constructor by using this.https://stackoverflow.com/questions/4080868/using-this-with-class-name/46091971#46091971
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
동기화 기법과 그냥 반복문 돌리는 것의 차이
생산자 소비자 문제는 상품의 개수라는 전역 변수이자 공유 자원이 핵심이고, 이를 위해서 상호배제를 위한 동기화가 필요합니다.하지만 2회독을 하면서,예를들어 생산 1000번, 소비 1000번 한다고 했을 때그냥 생산 반복문 1000번, 소비 반복문 1000번 돌리면 상품의 개수가 0이 되어서 문제가 없지 않나..?그렇다면 동기화 기법이 왜 필요하지..? 라는 의문점이 들었습니다.한번 더 생각해보면 실제로 현실에서는 생산 1000번, 소비 1000번이 순서대로 일어나지 않으니까 동기화 기법이 필요한건가..?라는 나름의 해답도 떠올랐는데,둘의 차이를 어떻게 봐야 할까요?
-
해결됨넓고 얕게 외워서 컴공 전공자 되기
선생님 안녕하세요
이번에 컴공과로 전과하게 되어서 전과하기전에 배우고 갈려고 강의 듣고있습니다 이 강의듣고 c언어까지 들으면 컴공가서도 어차피 배우겠지만 적응하는데 큰 문제는 없을까요 아직 머릿속에 정리는 안되네요 ㅜㅜ
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
메모리와 프로세스와 CPU
초창기 강의에서메모리와 CPU에대해서 설명해주셧을때 메모리(RAM)는 프로세스(현재 실행중인 프로그램)에 데이터와 명령어를 저장한다고 하였다고 들었습니다.프로그램이 실행하려면 메모리에 저장이 되어야한다고 이해가 안가는게 프로그램을 실행한다는건 CPU가 메모리에있는 데이터를 가지고와서 그 프로그램에 데이터와 명령어를 해석한후 동작을 시켜야 프로그램이 실행되는거 아닌가요? 그이후에 프로그램이 실행되면 거기에대한 명령어와 데이터가 저장되는거 아닌가요? 애초에 CPU가 명령어를 해석하고 동작시키기전에 메모리에 프로세스의 데이터들이 저장이 될 수가 있나요? 이 프로세스 즉, 현재 실행중인 프로그램 이라는 단어때문에 굉장히 애매모호 해지네요
-
해결됨곰책으로 쉽게 배우는 최소한의 운영체제론
공유자원과 임계구역
안녕하세요 선생님강의 정말 잘 듣고 있습니다..!레지스터에 대한 설명이 잠깐 나와서 궁금한 점이 생겼는데요..!생산자-소비자 문제를 설명하시면서, sum = sum + 1;sum -= 1;기계어로 쪼개보면 원자성이 보장되지 않아 문제가 발생하는 것을 확인했습니다.그런데 값을 읽고, 연산할 때 eax 레지스터를 사용하는 것으롭 봤는데요..!두 곳에서 사용되는 각 eax는 이름만 같을 뿐 사용되는 영역은 달라서 위에 eax는 1이고, 아래의 eax는 -1을 가지는 건가요??
-
해결됨CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
static 메서드 질문
중복되는 속성을 static으로 선언하는 것은 이해했습니다. 메서드를 static으로 선언하는 이유에 대해서는 의문이 생겼습니다.a와 b가 대화를 한다고 한다면, 아래와 같이 선언해서 사용하면 되지 않나요?private void talk(Person other){ System.out.println(name + " & " + other.name + "이 대화를 시작했다!"); }또한 static으로 선언하지 않으면 객체마다 메소드가 중복되어 메모리 낭비가 된다고 말씀해주셨는데, 클래스에 대한 메서드 정보는 메모리의 메서드 영역에 한 번만 기록되고, 각 객체가 메서드를 호출할 때, 이 메서드 주솟값을 모든 객체가 동일하게 호출하는 것 아닌가요? 그래서 static으로 선언하는 것이 메모리의 효율성을 증대한다는 것은 잘못된 설명이 아닌가란 생각이 들었어요.
-
해결됨기출로 대비하는 개발자 전공면접 [CS 완전정복]
노션 공유 부탁드려요.
어제 gmail로 신청서 보내드렸습니다, 감사합니다.
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
프로세스 동기화 예시 질문
안녕하세요 강의를 복습하고 있는 학생입니다.책과 강의에서 프로세스 동기화를 예시로 들어주셨을 때 워드 프로세서 프로그램의 맞춤법 검사 프로세스, 입력 내용을 화면에 출력하는 프로세스 등이 있다고 하셨는데 혹시 이것들은 프로세스가 아니라 스레드가 맞지 않는지 질문드리고 싶습니다."프로세스"는 "컴퓨터에서 연속적으로 실행되고 있는 프로그램"이고, "스레드"란 "프로세스 내에서 실행되는 여러 흐름의 단위"이니 예시로 들으신 워드 프로세서 안에서의 각종 것들은 스레드에 더 적합해보이는데 프로세스로 작성하신 이유가 있으실까요? 만약 프로세스라면, 그것이 "부모 프로세스"와 "자식 프로세스" 간의 관계로 작성하신 것인지도 궁금합니다. (자식 프로세스와 스레드의 차이의 예가 더 있으면 좋겠습니다.)
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
트래픽,처리량의 개념
안녕하세요~ 네트워크쪽 강의를 보다가 트래픽과 처리량의 개념이 정확히 이해되지 않아서 질문 남깁니다~어떤분이 똑같은 질문 남겨주셔서 댓글 남겨주신부분까지 봤는데도 네트워크쪽에 지식이 거의 없다보니 이해가 100%되지 않아서요..ㅎㅎ 트래픽이 특정시점에 발생한 인바운드, 아웃바운드 데이터의 "총량"인걸로 이해했는데요. 트래픽의 기본적인 단위가 bps라는게 좀 이해되지 않습니다. bps는 보통 데이터 전송속도를 나타낼때 표현하는 단위인걸로 알고있는데 총량이랑 속도랑 어떤 관계성이 있는지 헷갈리네요 ㅠ 처리량은 트래픽에 대한 처리량을 뜻한다고 말씀주셨는데요. 처리라는 뜻이 이해가 되질 않아서요..사용자 요청 등의 인바운드 트래픽에 대해 앱에서 처리를 끝마치고 응답값을 아웃바운드로 쏘는 개념을 처리라고 정의하는것일까요?? 네트워크 환경에서 대역폭이 넓고 좁아지는건 어떠한것으로부터 영향을 받는건가요??네트워크 장비와 링크 둘 다의 영향을 받는걸까요??
-
해결됨CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
건의사항
안녕하세요. 면접을 위한 CS 전공지식 노트 ebook을 구매했다가, 강의에서 더 자세히 설명해주신다고 하여 강의를 구매했습니다.한 가지 건의드리고 싶은 것이 있는데, ebook의 책 구성을 개선해주실 수는 없으실까요 ㅠㅠ 책이랑 다르게 ebook은 내용이 밀리기도하고, 책 내용 디자인도 조금.... 전에 다른 분이 강의에 대해 건의한 후, 강의 내용이 많이 바뀐 것을 보고 ebook도 바뀌기를 바라며 건의를 남겨봅니다...🍀 그리구 강의가 4k 이네요... 놀라워요...🤩
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
입출력 채널
1.입출력 채널이 일부 최신 입출력 장치 내부에 있다고 적혀 있는데요 바로 아래에는 입출력 채널이 있는 컴퓨터라고 적혀 있어서요 이게 입출력 장치에도 있을 수도 있고 컴퓨터에도 있을 수 있는 건가요? 2.423p 맨 윗줄 '키보드' > '하드디스크' 수정 필요합니다~유튜브 댓글에서 2쇄부터 수정 들어 가신다고 하셨는데제 책 4쇄인데 반영 안 되어서요~!혹시 다른 오타 수정해야 할 부분 리스트를 볼 수 있는 공간이 있을까요? 네트워크 책 언제쯤 나오나요,,, 강의 너무 좋아요감사합니다!