전체 글 4046

운영체제 / 논리회로 일반 [4]

[질문] 컴퓨터가 기계어를 읽고, 실행하는 과정에 대해 설명해 주실 수 있나요? [답변] [C언어로 예시를 들자면, 소스코드는 어셈블러에 의해 어셈블러로 변환된다. : 소스코드 --(컴파일러)--> 어셈블리어 + 어셈블리어를 기계어로 만드는 것은 ~이다. : 어셈블리어 --(어셈블러)--> 기계어 컴파일러에 의해 기계어로 변환되고 : 소스코드 --(컴파일러)--> 기계어 (이쪽 부분에 대해 개념과 용어를 잘못 언급하는 블로그들이 많다.)] 프로그램 및 소스코드는 컴파일러를 통해 기계어로 변환된다. 그렇게 변환된 기계어는 곧 instruction sets이다. CPU는 이 instructions를 차례로 실행하며 연산한다. 여기서부터는 CPU 내부의 이야기를 다루게 된다. [복습 및 학습용 참고문헌] ht..

운영체제 / 논리회로 일반 [3]

[질문] Thread 간의 데이터 공유와 Process 간의 데이터 공유의 공통점과 차이점을 설명해주세요. [답변] (우선 나는 컴퓨터공학과가 아니라 운영체제 공부를 한적이 없다.) 메모리에 올라와서 실행되고 있는 프로그램 인스턴스가 프로세스다. 그 프로세스 내에서 실행되는 여러 흐름의 단위가 쓰레드이다. 프로세스간 데이터 공유에는 IPC(Inter-process Communication) 통신을 사용하고 쓰레드간 데이터 공유에는 공유 메모리 영역이 존재하기에 지역변수와 전역변수를 사용한다. [복습 및 학습용 참고문헌] https://goodmilktea.tistory.com/24 2. 프로세스와 스레드 (Process vs Tread) 프로그램(Program)이란 "어떤 작업을 위해 실행할 수 있는 파..

운영체제 / 논리회로 일반 [2]

[질문] 컴퓨터는 소숫점 계산을 잘 못합니다. 그 이유가 무엇일까요? 어떻게 문제를 해결할 수 있을까요? 직접 구현한다면 어떻게 하시겠습니까? [답변] 수의 개념이 정수에서 실수로 넘어가면서 소수의 개념이 생기고 소수를 다루기 위하여 고정소수점과 부동소수점으로 나뉘는데 진수변환의 결과를 직접 사용하면 고정소수점이고, 비트수에 따라, 부호비트, 지수부, 가수부로 나눠짐을 활용하기 위해 norm 또는 bias등의 개념이 사용된다. 일반적으로 수를 정밀하게 다루기 위해서 사용하는 C, Pascal 등의 Low Level 언어들에서는 IEEE 754 표준이 사용되고 있다. 이 표준은 1970년대에 제정되었다. 직접 구현하는 상황일때, 특이사항이 없다면, 엔지니어로서 표준을 준수할 것이다. [복습 및 학습용 참고..

운영체제 / 논리회로 일반 [1]

[질문] 컴퓨터는 10진수를 2진수로 바꿔서 계산합니다. 10진수를 2진수로 바꾸는 방법과, 그 반대 방법에 대해 설명해 주시기 바랍니다. [답변] 10진수를 2진수로 변환하기 위해서는 정수는 1또는 0으로 떨어질때까지 2로 나누어 순서대로 읽고 소수는 1로 떨어질때까지 2를 곱해 순서대로 읽는다. 2진수를 10진수로 변환하기 위해서는 정수일때와 소수일때 모두 2진수의 각 자리수를 n이라고 할때 2^n을 곱해주는 방식을 사용한다. [복습 및 학습용 참고문헌] https://coming1007.tistory.com/205 2진수 10진수 2진수 변환하기 안녕하십니까 가래라 입니다. 오늘은 2진수를 10진수로 변환하는 방법에 대해서 한번 알아 보도록 하겠습니다. 2진수는 숫자 1과 0으로 이뤄진 숫자를 말합..

Sir.LOIN 소프트웨어 엔지니어 인터뷰 질문 목록 - 운영체제 / 논리회로 일반

운영체제 / 논리회로 일반 컴퓨터는 10진수를 2진수로 바꿔서 계산합니다. 10진수를 2진수로 바꾸는 방법과, 그 반대 방법에 대해 설명해 주시기 바랍니다. 컴퓨터는 소숫점 계산을 잘 못합니다. 그 이유가 무엇일까요? 어떻게 문제를 해결할 수 있을까요? 직접 구현한다면 어떻게 하시겠습니까? Thread 간의 데이터 공유와 Process 간의 데이터 공유의 공통점과 차이점을 설명해주세요. 컴퓨터가 기계어를 읽고, 실행하는 과정에 대해 설명해 주실 수 있나요? 운영체제가 여러 프로그램을 동시에 실행하는 원리에 대해 설명해주세요. 컴파일러와 인터프리터는 어떤 차이가 있을까요? Garbage Collection 이란 무엇일까요? Garbage Collection 방식 중 제일 잘 알고 계시는 GC를 아무거나 하..

IPCore에서의 ILA를 사용하기

메뉴바의 IP Core를 이용해 ILA 모듈을 가져오자. 우선 이 core의 사용법을 알고싶은 것이기 때문에 probes를 2개 정도로 설정해보자. data depth는 그대로. 생성이 되었다. 근데 예상했던 .v가 아닌 .xci 파일이 생성된다. 수정하지 말고 포트만 갖다 쓰는것이 목적인가보다. 얘를 적당한 곳에 직접 wiring 해주면 되나보다. top모듈과 그 아래의 모듈들을 가져왔다. 모식도상에서 연결해야할 지점은 이 빨간 네모박스 지점으로 추측된다. 코드상에서 찾아보면 이 지점으로 추측된다. ① 하지만 .v가 아닌 .xci 파일을 여기 addr에다가 wiring하는 방법에 대해서는 모르겠다. ② 그리고 내가 궁금한 신호는 addr이 아니고 '합성후'에 생기는 netlist상의 ADDRARDADD..