무료
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
Ram의 기능
강의 제목 : RAM의 특징과 종류 예전에 초반 강의에선RAM을 현재 실행하고있는 프로그램 즉, 프로세스의 데이터와 명령어를 저장한다고 들었습니다. 근데 여기 강의에서는 RAM은 CPU가 실행할 데이터를 저장하는 공간이라고 하셧는데 그럼 RAM은 현재 실행하고있는 데이터와 명령어를 저장하는 기능과 실행"할" 데이터와 명령어를 저장하는 기능 두가지가 있는건가요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
페이지폴트 횟수 질문입니다
안녕하세요 선생님 강의 너무나 잘 듣고 있습니다.14-3장 강의 내용이였던 페이지 폴트 횟수에 대해서 질문 있습니다.예를 들어 강의 시간으로 14:56에 나오는 최적 페이지 교체 알고리즘 예시화면에서페이지 폴트가 일어난다는 것은 참조하고자 하는 페이지가 없을 때 일어나는 것이라면 5를 찾을 때, 4를 찾을 때의 두 번 뿐만 아니라맨 처음 2, 3, 1을 프레임에서 찾을 때도 프레임에 페이지가 없으니 페이지 폴트가 일어나서 총 다섯 번의 페이지 폴트가 발생했다고 생각해야 하지 않나 궁금해서 질문드립니다. 감사합니다.
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
오버플로우
연산결과가 연산을 담을수 있는 레지스터에 비해 너무 커지면 플래그에 담는다고 하셨는데그림상 플래그 레지스터에 결과값을 담는다는걸까요?아니면 오버플로우 플래그를 1로 내보낸다는걸까요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
프로세스 관련입니다
안녕하세요! 프로세스가 올라가고 내려가는 원리 등의 메커니즘과 cpu를 스케줄링할 때 application(제 3의 프로세스)에서 하는 방식을 공부하려고 하는데, 운영체제 부분만 봐도 무관할까요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
CISC, RISC 질문있습니다(섹션5)
CISC,RISC에 대해서 헷갈리는게 있습니다 ISA 즉, 명령어 집합(구조)는 CPU의 언어라고 하셧는데요ex) ARM, x86 등등 ====================================그럼 CISC와RISC는 명령어 집합인건가요?아니면 ISA(ARM, x86)를 활용하는 CPU의 종류인가요? 영상에서는 x86,x86-64는 CISC 기반에 명령어 집합이라고 얘기 해주셧는데 그럼 CISC는 명령어 집합인걸로 생각이되는데 또 막상 CISC는 복잡한 명령어 집합을 활용하는 컴퓨터(CPU)라고 얘기해주시니 그럼 이게 CPU의 대표적인 종류인건지 헷갈려서 글 남겨드립니다.
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
음수로 표현...
이 부분 강의가 전혀이해가 되지 않습니다..100에서 11을 빼면 어떻게 01이 나오는 건가요...
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
메모리맵 입출력 - 주소공간의 개념에 대한 질문
안녕하세요! 교재와 같이 강의를 공부하고 있는 수강생 입니다. 복습을 하다, 한 가지 내용이 헷갈려서 질문드립니다. 메모리맵 입출력에서, '주소공간'이라는 개념이 나오는데, 이 개념이 이해가 되지 않습니다. 교재의 그림 설명에서처럼, 특정 입출력장치의 레지스터들은(데이터 레지스터, 상태 레지스터, 제어 레지스터) 메모리가 아닌 그 입출력장치의 컨트롤러 안에 있습니다. 그런데 주소공간이라는 개념이 나오고, "그 주소공간의 516번지는 프린트 컨트롤러의 데이터레지스터로 약속했다"는 교재의 설명에서 개인적으로 주소공간과 메모리의 개념이 헷갈리네요..ㅠ여러번 읽어보고 주소공간은 결국 메모리이며, '메모리의 xx번지는 ~다'정도의 정보를 저장하는 것 같은데, 제대로 이해한 걸까요? 양질의 강의 제공해주셔서 감사합니다.ㅎㅎ
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
코어와 하이퍼스레드 관계 질문
안녕하세요. 코어와 하이퍼스레드간의 명령어 처리개수에 대해 궁금한점이 있어서 질문드립니다. 빠른 CPU를 위한 설계기법 챕터에서 하드웨어 스레드라고 설명주신 하이퍼스레드기술이 적용된 CPU는 4코어 8스레드의 경우, 8개의 명령어를 한 번에 처리할 수 있다고 말씀을 주셨습니다. 근데 제가 기존에 알고있던 하이퍼스레드의 경우 CPU내의 다양한 유닛들 (ALU, FPU 등) 중 잉여자원이 있을시 이를 끌어다가 대신 활용하는 방식으로 알고있습니다. 즉 경우에 따라서 자원이 남아있다면 사용할 것이고 부족하다면 사용하지 못할텐데 ( 설령 자원이 있더라도 유닛의 목적과 다른 기능을 한다면 정상적인 성능을 뽑아낼지도 의문이긴 합니다. ) 이를 8개의 명령어를 처리할 수 있다고 봐도될지 궁금합니다. 질문을 좀 정리하면 제가 이해한 방식이 하이퍼스레딩, 즉 하드웨어 스레드가 맞는걸까요 ?하이퍼 스레드가 적용된 4코어 8스레드 CPU의 경우 8개의 명령어가 아닌 '최대' 8개의 명령어까지 처리할 수 있다고 보면될까요 ?2번 항목에 의해 8개의 명령어를 처리할 수 있다고 했을때 8코어 8스레드와 동일한 수준으로 봐도 될지 궁금합니다.
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
FTA 파일 시스템에 대한 질문입니다.
안녕하세요 강사님!좋은 강의 잘 듣고 있습니다.이번에 마지막 강의인 파일 시스템을 수강하던 도중 질문이 생겨서 글을 작성하게 되었습니다.FTA 파일 시스템의 경우 기존 연결 할당 방식의 단점들을 해결한다는 말씀을 해 주셨습니다.연결 할당 방식의 문제로는 반드시 처음부터 접근을 해야 한다는 것블록에 오류가 발생하였을 때, 추후의 블록을 읽을 수 없다는 점입니다.그렇다면 FTA가 Table을 도입함에 따라 위 2가지 문제를 해결한 방식이 다음과 같은지 여쭤보고 싶습니다.Table을 참조하여 특정 파일의 중간 블록부터 읽을 수 있기 때문에, 첫번째 문제는 해결했다고 볼 수있다.블록에 다음 블록의 정보를 저장하지 않기 때문에, Table의 정보만 유효하다면, 다음 블록의 정보를 읽는데에는 문제가 없다. 좋은 강의 만들어 주셔서 감사합니다.
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
Working set 기반 프레임 할당 방식에 대한 질문입니다.
안녕하세요 강사님유익한 강의 감사히 듣고 있습니다.이번에 가상 메모리의 프레임 할당 방식에 대한 강의를 듣던 도중 working set 기만 모델에 대해 질문이 생겼습니다.사실 동적 할당 방식에 대한 질문이라고 볼 수도 있을 것 같은데,working set의 경우, 일정 시간을 두고, 참조되는 페이지를 통해 working set을 구성하여 프로세스에 프레임을 할당한다고 하셨습니다.그렇다면, 해당 프로세스가 가장 처음 실행이 될 때는 해당 프로세스에 대한 프레임 할당이 어떤식으로 이루어 지는지 궁금합니다.정적 할당의 경우에는 실행하기 전, 프로세스의 크기를 통해 미리 결정하고 들어가지만, 동적 할당의 경우에는 해당 프로세스를 실행하여 사용되는 프레임의 수를 통해 프레임을 할당한다고 하셨습니다.그렇다면 가장 초기에는 어떤식으로 프레임이 할당이 되어 지는지 궁금합니다. 감사합니다.새해 복 많이 받으세요~
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
동기화 질문입니다.
안녕하세요! 강의 정말 유익하게 잘 듣고 있습니다.이번에 동기화 단원을 듣게 되면서, 몇가지 궁금증이 생겨서 질문을 하게 되었습니다. A 프로세스 혹은 쓰레드가 임계구역에서 작업을 수행하고 있었다고 가정을 하겠습니다. 이때 cpu가 지정한 타임 슬라이스를 초과하여 cpu를 사용하였고, 임계 구역에서의 진행이 완료되지 않은 상태로 타이머 인터럽트가 발생하였다고 가정을 하겠습니다. 이러한 상황에서 만약 새로운 프로세스 B가 해당 임계구역에 접근을 하게 된다면, 이에 대한 부분은 어떻게 처리가 되는 것인지 궁금합니다. 기존의 공유 자원이 업데이트 되지 않은 상태로 진행이 되게 되면, 분명히 레이스 컨디션이 발생할 수 도 있다고 생각이 듭니다. 세마포의 경우에는 임계 구역에 진입할 수 있는 프로세스의 개수, 즉 사용 가능한 공유 자원의 개수를 전역변수로 설정하여 여러 개의 공유자원을 관리할 수 있다고 하셨습니다. 그렇다면 세마포의 경우에는 각 공유자원의 종류에 따라 구분하여 관리는 할 수 없는 것인지 여쭤보고 싶습니다. 이것이 세마포의 단점? 이 되는 것인지 궁금합니다. 운영체제는 처음 공부해 보는 것이라서 질문이 좀 난잡하고 불명확할 수 있다는 점 죄송합니다.열정적인 강의 덕분에 재미있게 공부를 할 수 있는 것 같습니다!항상 감사합니다.
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
FIFO second-chance와 LRU의 성능 차이가 나나요?
안녕하세요 강의 잘 듣고 있습니다.페이지 교체 알고리즘 중 가장 오래 사용되지 않은 페이지의 스왑 아웃과 먼저 들어온 페이지들 중 참조되지 않은 페이지를 선별하여 스왑아웃 하는 것이 결과적으로 비슷한 결과가 나올 거 같은 생각이 들었습니다.제가 잘 이해한 게 맞다면 예시로 들어주신 참조열 2313523423의 경우에도 두 방식이 동일하게 2, 1, 5를 스왑 아웃 하는 결과가 나오는 듯 합니다.이 둘의 사용성에 대한 더 구체적인 차이를 알 수 있을까요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
오퍼랜드에 길이 제한이 있는 이유가 무엇인가요?
안녕하세요 선생님. 데이터가 커지면 오퍼랜드에 담을 수 없기 때문에, 다른 메모리나 레지스터에 데이터를 넣고 해당 주소 위치를 오퍼랜드에 담는 것이라는 걸 이해했습니다. 그런데 데이터를 어디에 넣든 컴퓨터가 감당해야할 데이터 크기의 절댓값은 같지 않나요?다른 메모리나 레지스터는 담을 수 있는 데이터를 왜 오퍼랜드는 못 담는 거죠? 명령어에 할당된 데이터 크기 자체가 작은 건지, 작다면 왜 작은 건지 여쭤봅니다.(수정)4강에서 피연산자는 레지스터로부터 받아들인다는 내용을 들으니 알 것 같습니다.오퍼랜드 필드가 레지스터 내에 존재하기 때문에 크기 제한이 생기는 것 맞을까요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
주소 지정 방식을 알아야 하는 이유가 궁금합니다.
소스 코드 -> 컴파일 -> 명령어 명령어 : 연산코드 + 오퍼랜드 이 오퍼랜드 필드에 데이터/주소/레지스터를 저장하는 방식 총 5가지 라고 이해했는데, 이 5가지 주소 지정 방식을 경우마다 다르게 쓸 수 있는건가요?언제 명시적으로 이걸 변경하거나 해야하는지 궁금합니다!프로그래밍 언어 자체랑은 관렴이 없고, 컴퓨터 내부 아키텍처 관점으로만 이해하면 되는걸까요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
cpu 스케줄링과 프로세스 스케줄링
현재 공룡책과 함께 번갈아 보며 공부하고 있는 와중, cpu 스케줄링 파트에서 궁금한 것이 생겼습니다.공룡책에서는 cpu스케줄링과 별개로 프로세스 스케줄링이라는 말로 따로 다루더군요.선생님의 책에는 프로세스 스케줄링으로 따로 다루진 않으신시고 cpu 스케줄링에 같이 다루신 거 같더라구요.혹시 cpu 스케줄링에 프로세스 스케줄링이 포함되는 내용이라 굳이 나누지 않으신 걸까요? 굳이 나워서 생각하지 말고 책에서 나온대로 이해하면 될까요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
전처리기 단계에서 include 한 것을 모두 한 파일에 가져오던데, 링킹 작업이 왜 필요한가요?
전처리기 단계에서 include 한 것을 모두 한 파일에 가져오던데, 링킹 작업이 왜 필요한가요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
데이터 영역 힙영역
안녕하세요 질문이 하나 있는데요힙 영역은 프로그래머(사용자)가 직접 할당할 수 있는 저장공간이라 하셨는데요 그럼 데이터 영역도 사용자가 직접 할당하는공간인가요? 아니라면 누가 데이터 영역을 할당하는 걸까요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
예시 코드들의 운영체제를 유닉스나 리눅스로 하는 이유
안녕하세요! 비전공자로 이쪽에 뛰어들어 덕분에 쉽게 공부를 해 가고 있습니다. 책을 읽다가 나오는 깃허브의 실습 예제들이 유닉스 기반 코드들이라 윈도우에서 동작하지 않아 따로 찾아가며 하고 있습니다 혹시 윈도우가 아닌 다른 운영체제로 실습하는 이유가 있을까요? 공부를 할 때는 유닉스나 리눅스 운영체제를 설치하여 실습하는 게 더 좋거나 하는 이유일까요?
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
학습 순서 문의
컴퓨터 구조 부분을 학습하지 않고 운영체제부터 학습 가능한가요??
- 해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
뮤텍스 락 관련해서 질문이 있습니다.
안녕하세요! 좋은 강의 감사드립니다. 뮤텍스 락과 관련해서 질문이 있습니다. 제가 다른 운영체제 강의 영상을 보니까 이 강의에서 설명해주신 뮤텍스 락에 대한 설명이 스핀락 개념과 유사하더군요. while문을 반복해서 돌면서 계속해서 lock을 확인하는 부분이요. 그 강의에서 뮤텍스는 자원을 얻을 수 없을 때는 while을 도는 것이 아니라 쉬면서 큐에 들어간다고 하더라구요.. 혹시 어떻게 이해하는 것이 맞을까요? 혼란이 와서 질문 남겨봅니다.