묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결FreeRTOS 프로그래밍
PuTTy에 출력되지 않습니다
장치관리자에서 port를 확인해서 seiral line과 speed를 설정하고 open을 했습니다.01_ TASKMAN을 디버그 했습니다.그런데 영상처럼 출력되지 않고 커서만 표시됩니다.어떻게 해결해야 하나요?
-
해결됨그림으로 쉽게 배우는 운영체제
메모리(Code영역) 관련 질문
안녕하세요. 감자선생님!금일 작성한 질문 답변 감사합니다~답변 확인중에 문득 떠오른게 있어, 새 게시글로 작성하였습니다. [이전질문]메모리 Code 영역에 프로그래머가 작성한 코드가 기계어로 올라가고프로그램 실행 시, Code영역(메모리)에 실행에 필요한 부분만 올라가게됩니다.여기까지 확인했습니다.그리고 이전 질문 내용은100번쨰 줄 : int a = 5;101번쨰 줄: printf(a);위 상황에서, 만약에 101번쨰줄 명령문 통째로 Rom에 저장되어있었으면운영체제가 어떻게 알고 저 데이터를 불러(스왑)하는지? 질문드렸었는데요.비유를 하면 요리 레시피가 1번 ~ 10번까지 적혀있는데 2번까지 순차적으로 요리 하다가3번이 없어진 상황입니다.(다음 실행할 명령 101번쨰줄에 해당하는 기게어가 Ram에 없으니 실행이 더 없는 상황)[확인질문]답변 주신 내용중에 "해당 코드는 메인메모리로 불러와서 실행해야겠죠? ㅎㅎ"여기서 곰곰히 생각해보니, PCB에 프로그램 카운터가 있는게 떠올랐습니다!!!!!!!그러면 이 프로그램 카운터에서 다음 실행할 명령 주소를 아니가 101번쨰에 해당하는 데이터(명령문)을Rom에서 Ram으로 불러오는게 가능하다 라고 이해했는데 맞는지 확인 질문드립니다.
-
해결됨그림으로 쉽게 배우는 운영체제
메모리관련 질문
안녕하세요. 감자선생님!메모리(+가상메모리)관련 질문있습니다. Q1.메모리 할당방식 0:10 ~ 0:301) "당장 실행시켜야할 부분"이라면, Code영역 Data영역 데이터들로 추측되는데 대략적으로 맞을까요?2) 해당 예시는 총 메모리보다 프로그램 크기가 큰 경우, 메모리오버레이 적용으로 이해했습니다.그 반대의 상황 메모리(2GB) 게임(1GB)에서도 오버레이 적용 되는지 궁금합니다.예상으로는 반대상황에서도 게임 실행 시, 1GB가아닌 훨씬 작은 메모리만 사용할것으로 추측중입니다. Q2.가상메모리개요 1:451) 보라색 캐릭터(프로세스)의 데이터(Code,Data,Stack,Heap)들은실제 형태는 RAM or ROM-스왑영역에 올라가 있는 상황으로 이해했습니다. 맞는지 궁금합니다. Q3.디멘드페이징 0:25메모리 Code 영역에는 작성한 코드가 기계어로 들어가있습니다.1)저가 만약 5만줄의 코드를 작성하면, 5만줄에 해당하는 기계어 전체가 다 들어가있는 건지 궁금합니다.2)Code영역에 비즈니스로직(프로그램의 시작과 끝 로직)도 'Ram과 Rom으로 나뉘어져 실행되는 구조인지 궁금합니다.ex)비즈니스로직에서- A번쨰 줄 로직 : int 변수에 5를 더하기- 그다음 줄 로직 : 위 변수 출력이렇게 있는 상황에서 A번쨰줄 로직은 Ram에서 실행되고있고, 그 다음줄 로직은Rom에 있으면 안될것같은 느낌이 확 들어 질문드립니다.(그 다음줄을 Rom에서 불러올 방법이 없습니다)그렇게 되야 모든 로직이 실행되며 필요한 데이터는 Rom에서 불러오고 종료되고 할것같습니다. 이상입니다. 연휴잘보내세요!
-
미해결그림으로 쉽게 배우는 운영체제
파일할당 테이블
안녕하세요 파일 할당 시스템에서 파일을 삭제를 하면 헤더가 지워지고 그 지워진 블록은 지워진 블록끼리 연결을 해 메모리에 빈 공간이 어디있는지 스캔할 필요를 줄여주잖아요. 이때 데이터가 지워지는 게 아니라 헤더가 지워져서 나중에 포렌식 복구를 하여 데이터를 복구할 수 있다고 하셨는데, 그럼 새로운 데이터를 거기에 할당하게 될 경우는 어떻게 되는 건가요? 그 데이터만 남은 블록에 새 데이터가 할당되지 않은 부분만 포렌식 복구를 할 수 있는 건가요?
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
주소 지정 방식을 알아야 하는 이유가 궁금합니다.
소스 코드 -> 컴파일 -> 명령어 명령어 : 연산코드 + 오퍼랜드 이 오퍼랜드 필드에 데이터/주소/레지스터를 저장하는 방식 총 5가지 라고 이해했는데, 이 5가지 주소 지정 방식을 경우마다 다르게 쓸 수 있는건가요?언제 명시적으로 이걸 변경하거나 해야하는지 궁금합니다!프로그래밍 언어 자체랑은 관렴이 없고, 컴퓨터 내부 아키텍처 관점으로만 이해하면 되는걸까요?
-
미해결FreeRTOS 프로그래밍
하드 리얼타임에 대해서
안녕하세요 강사님! 이 강의에서 크리티컬 섹션을 만드는 것은 하드리얼타임에 악영향을 끼친다고 말씀하셨는데, 그럼 크리티컬 섹션으로 만드는 것보다는 세마포어로 상호배제하는 것이 하드리얼타임에 가까운 것인가요? 그렇다면 모든 상호배제는 세마포어로 하는 것이 이득일거라 생각되는데 크리티컬 섹션으로 만들어야하는 특별한 경우나 이유가 있을까요?
-
해결됨FreeRTOS 프로그래밍
해당 인터럽트 강의 질문
안녕하세요! 해당 영상을 보다 질문이 생겨 질문 남깁니다:)해당 영상에서 인터럽트를 disable 시키는 방법으로 interrupt controller 에서 cpu로 가는 신호를 mask하는 방법과 interrupt controller에 들어가는 신호를 막는 방법이 있다고 하셨는데, 이때 첫번째 방법은 cpsid i 명령어를 사용하여 primask 레지스터를 바꾸는 방법이고, 두번째 방법은 NVIC 내부 레지스터를 바꾸는 방법이 맞는건가요?그렇다면 cpsid i 명령어를 썼다가 cpsie i 명령어를 쓰면 그사이 발생한 인터럽트들이 한번에 발생하는 것인지 궁금합니다! (두번째 방법으로 disable된 인터럽트들은 다시 enable되어도 그사이에 발생한 인터럽트가 발생되지 않는지도 알려주세요)또한 여기서 말하는 interrupt controller가 NVIC가 맞는지 그렇다면 NVIC와 EXTI의 차이점은 무엇인지 알려주세요!질문이 많아 죄송합니다ㅠㅠ
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
cpu 스케줄링과 프로세스 스케줄링
현재 공룡책과 함께 번갈아 보며 공부하고 있는 와중, cpu 스케줄링 파트에서 궁금한 것이 생겼습니다.공룡책에서는 cpu스케줄링과 별개로 프로세스 스케줄링이라는 말로 따로 다루더군요.선생님의 책에는 프로세스 스케줄링으로 따로 다루진 않으신시고 cpu 스케줄링에 같이 다루신 거 같더라구요.혹시 cpu 스케줄링에 프로세스 스케줄링이 포함되는 내용이라 굳이 나누지 않으신 걸까요? 굳이 나워서 생각하지 말고 책에서 나온대로 이해하면 될까요?
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
인덱스 최적화 기법에 대한 설명
안녕하세요~ 다름이 아니고 해당 강의 내용 중 [인덱스는 비용이다 : 먼저 인덱스는 두 번 탐색하도록 강요합니다. 인덱스 리스트, 그다음 컬렉션 순으로 탐색하기 때문이며, 관련 읽기 비용이 들게 됩니다.]라는게 정확히 어떤 말씀이신지 이해가 안돼서 혹시 조금 자세하게 설명 부탁드려도 될까요??
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
프로세스 메모리영역과 JVM 메모리영역의 상관관계
안녕하세요~ 프로세스는 OS로부터 stack, heap, data, code영역으로 나눠진 메모리를 할당 받는다고 하셨는데요. 자바를 배울 땐 자바 프로세스가 실행될 때 JVM에 의해 다음과 같이 5개의 메모리 영역으로 나뉘어져서 관리한다고 배웠었습니다 (Method area / Heap / Stack / PC Registers / Native Stack) 명칭도 조금씩 다른부분도 있고 영역개수도 상이 한데 OS로부터 할당받은 4종류의 메모리의 영역과 JVM이 관리하는 5종류의 메모리의 영역이 서로 어떻게 매칭되는건지 궁금합니다~ 예를들어 프로세스의 Stack영역은 JVM의 Stack영역과 동일하다던가..아니면 프로세스의 Heap영역안에 JVM의 5종류의 메모리영역이 나눠져서 할당된다던가..그것도 아니면 JVM은 일반 프로세스와는 다르게 JVM에 의해 다른 메모리영역을 할당받는다던가.. 서칭 해보는데 단순히 JVM의 메모리구조에 대해서만 설명이 되어있고 이게 프로세스의 메모리영역과 어떻게 매칭되는건지에 대한 내용은 찾지 못해서 질문드립니다~
-
해결됨그림으로 쉽게 배우는 운영체제
SJF 알고리즘
SJF 알고리즘은 그럼 이론적으로만 존재하는 거고 현실에서는 전혀 쓰이지 않는다고 보면 될까요?Burst Time이 짧은 프로세스를 먼저 실행한다고 하는데제가 생각해도 강의에서 말씀하신 대로 '어떤 프로세스가 얼마나 실행될지'는 사용자 마음인 건데 어떻게 알고 짧은 프로세스를 먼저 배치하지? 라는 생각이 들어서요
-
해결됨그림으로 쉽게 배우는 운영체제
대화형 시스템
이 강의 2:01 부분에서 말씀하신대화형 시스템에서 사용자의 요청이 얼마나 빨리 반응하는 지가 중요하기 때문에 응답시간이 짧은 것을 목표로 합니다.에서 대화형 시스템이 어떤건지 궁금합니다.
-
미해결FreeRTOS 프로그래밍
수업자료 answer와 student 차이점
안녕하세요! 강의를 시작하기 위해 workspace에 자료를 넣을려고 하는데 answer폴더와 student폴더가 있습니다. 이 둘의 차이가 무엇이고 어떤 폴더의 파일들을 workspace로 복사해야 하나요??
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
힙의 참조 시간복잡도가 이해되지 않습니다..
이진트리로 구성된 Map이나 Set의 참조 시간복잡도가 O(logn)인데조금 다른 트리긴 해도 Heap의 참조 시간복잡도가 O(1)인게 이해가 안되는데Heap의 참조와 탐색 시간복잡도에 대해서조금 더 자세히 설명해 주실수 있으신지 해서 질문 드립니다. 예를 들어 참조의 경우 루트노드에 대한 접근이 O(1)이라는 말씀이실까요??자식노드에 대한 접근까지 내려가면 O(logn)이거나 O(n)일거 같은데.. 아니면 제가 참조와 탐색에 대한 개념을 잘못 잡고 있는것일까요..
-
해결됨넓고 얕게 외워서 컴공 전공자 되기
windowOS가 64비트(1엑사바이트)인데 컴퓨터에 어떻게 설치할 수 있는 건가요?
안녕하세요 컴퓨터 공부를 시작한 학생입니다.강의에서 windowOS 64bit의 크기가 1EB정도의 크기라고 하신 부분에서 질문이 있습니다.컴퓨터의 메모리 크기는 일반적으로 GB 단위를 사용하는 걸로 알고 있는데 EB 크기의 OS가 어떻게 설치되는지 궁금합니다. 감사합니다.
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
전처리기 단계에서 include 한 것을 모두 한 파일에 가져오던데, 링킹 작업이 왜 필요한가요?
전처리기 단계에서 include 한 것을 모두 한 파일에 가져오던데, 링킹 작업이 왜 필요한가요?
-
해결됨컴퓨터 과학 (5): 인터페이스 - 운영체제, 사용자 인터페이스, 데이터베이스
강의중 2가지 질문 입니다.
안녕하세요 강의중에서 질문 있는데요 컴퓨터는 유저수준과 커널수준이 있잖아요 유저에서 커널로 넘어가는게 시스템콜이고요근데 커널수준의 프로그램과 시스템 소프트웨어랑 차이가 뭔가요? 비슷한건가요?가상기계란 각자가 1개의 컴퓨터를 쓰는 듯한 착각이라고 하셨는데요 이게 무슨말이죠? vmware 같은거 쓰면 1개의 컴퓨터에 여러개의 os 뜨게할수 있는거 아닌가요?
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
데이터 영역 힙영역
안녕하세요 질문이 하나 있는데요힙 영역은 프로그래머(사용자)가 직접 할당할 수 있는 저장공간이라 하셨는데요 그럼 데이터 영역도 사용자가 직접 할당하는공간인가요? 아니라면 누가 데이터 영역을 할당하는 걸까요?
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
예시 코드들의 운영체제를 유닉스나 리눅스로 하는 이유
안녕하세요! 비전공자로 이쪽에 뛰어들어 덕분에 쉽게 공부를 해 가고 있습니다. 책을 읽다가 나오는 깃허브의 실습 예제들이 유닉스 기반 코드들이라 윈도우에서 동작하지 않아 따로 찾아가며 하고 있습니다 혹시 윈도우가 아닌 다른 운영체제로 실습하는 이유가 있을까요? 공부를 할 때는 유닉스나 리눅스 운영체제를 설치하여 실습하는 게 더 좋거나 하는 이유일까요?
-
미해결FreeRTOS 프로그래밍
스택 사이즈 관련 질문입니다.
스택오버플로우 검사 강의에서스택 사이즈가 512라고 하셨는데강의영상 및 예제를 보면 xTaskCreate 함수에서 Stack depth 가 256 Word로 설정되어있는데 그러면 1024 바이트 아닐까요?