기타등등 5

cs 면접 질문 - 컴퓨터 구조 / OS

1. 컴퓨터 구조론에서 파이프 라이닝을 쓰는 이유와 효율을 설명하시오. -> 파이프 라이닝 구조는 한 번에 하나의 명령어 처리가 아니라 하나의 명령어가 실행 되는 도중에 다른 명령어도 실행하여 각 단계에 있는 자원들을 놀리지 않고 역할을 부여함으로써 동시에 여러 개의 명령어를 처리할 수 있게 합니다. 이것은 처리량을 늘리기 때문에 동일 시간에 더 많은 명령어를 처리할 수 있기 때문에 효율적이라고 할 수 있습니다. 2. 프로세스 / 스레드 차이를 설명하시오 ->프로세스는 메모리에 로드된 프로그램의 인스턴스 이고 스레드는 프로세스 내의 실행 단위 입니다. 프로세스가 다른 프로세스에 접근하려면 IPC 통신을 사용해야 하지만 스레드는 다른 스레드와 stack영역을 제외한 메모리 영역을 공유해 하여 다른 통신 과..

기타등등 2022.04.12

x86 서버란?

x86 서버라는 단어를 들었을 때 무었을 x86 서버라 부르는지 궁금하게되어 알아보았습니다. 먼저 x86이란 것은 기본적으로 32bit를 뜻합니다. 어떤 프로그램인지 기억은 잘 안나지만 어떤 소프트웨어를 설치 할 때 32bit전용으로만 설치해야 작동 가능한 것들도 간간히 있습니다. 32bit와 64bit의 차이는 간단히 말해서 cpu가 처리하는 데이터 최소 단위를 의미합니다 32bit는 2^32승 , 64bit는 2^64승을 한번에 처리할 수 있습니다. 당연히 64bit가 성능이 더 좋아 현재 대부분 64bit 기반 pc를 사용합니다. 그런데 여기서 64bit는 x64라 표기하는데 32bit는 x32라 안하고 x86이라 표기하지? 라는 의문점이 생길 수 있습니다(저는 생겼거든요) 그 이유는 Intel의 ..

기타등등 2022.04.10

Ansible 메모장

Ansible이란 요즘 주목되고 있는 IaaC(infrastructure as as Code)중 하나로 인프라 구축, 시스템 관리 측면에서 많이 사용되고 있습니다. Ansible은 다른 IaaC와 다르게 controller 만 존재한다. 이게 무슨 말이냐면 host들 사이에서 서로 명령을 전달하고 정보를 받아 오기 위해서 Server - Agent 구조가 주로 사용됩니다.( controller 노드에서 Sever용 패키지, 관리를 할 노드에서 Agent용 패키지가 설치 되어야함) 하지만 Ansible은 agent가 필요 없고 controller 노드에만 ansible을 설치하면 사용이 가능합니다. 리눅스를 사용해봤다면 ssh를 사용하셧을 것입니다. 일반적으로 ssh 연결을 통해 원격 서버에 접속하시니까요..

기타등등 2022.03.30

리눅스(Ubuntu)환경에서 Bazel 설치하기

docs.bazel.build/versions/4.0.0/install-ubuntu.html Installing Bazel on Ubuntu Installing Bazel on Ubuntu Supported Ubuntu Linux platforms: 18.04 (LTS) 16.04 (LTS) Bazel will probably work fine on other Ubuntu releases and Debian stretch and above, but we currently do not test this on Bazel’s CI and thus can’t promise it. Install docs.bazel.build 위의 Bazel 홈페이지에서 있는 방법대로 설치 하면 된다. 내가 사용한 방법은 baze..

기타등등 2021.02.05

인터프리터언어와 컴파일러 언어

컴파일러 컴파일러란 특정 프로그래밍 언어로 작성된 소스코드를 컴퓨터가 이해할 수 있는 언어로 번역하는 역할을 하는 프로그램이다. 컴파일 언어는 이 컴파일러를 사용하는 프로그래밍 언어라고 할 수 있다. 컴파일 언어의 종류 : C , C++, C#, JAVA, 파스칼 등 인터프리터 인터프리터란 소스코드를 바로 실행하는 프로그램이다. C와 python을 대조해보면 C는 전체 소스코드중 어떤 한 줄이라도 error(컴파일상의 에러)가 발생하는 부분이 있으면 실행되지 않지만 python의 경우 드래그로 선택된 부분만 실행도 가능하고 ctrl+enter로 한줄 한줄 실행도 가능하며 전체 실행시 실행되다가 error가 발생하는 부분에서 멈추기도 하는 것을 생각해본다면 이해하기 쉽다. 인터프리터 언어의 종류 : Jav..

기타등등 2021.01.06