도커와 쿠버네티스가 뭘까요? 우선 서버 운영에 대한 세대 전환을 먼저 알아볼 필요가 있습니다. 도커는 컨테이너 관리 및 실행을 위한 것이고, 쿠버네티스는 컨테이너 배포 및 운영을 위한 것이기 때문입니다. 일대일 : 서버 운영 1세대 : 물리적 서버를 직접 일대일로 대응시켰습니다. 1개의 하드웨어 서버에 1개의 OS를 설치하고, 그 OS에 여러 애플리케이션을 설치했습니다. 1개의 하드웨어에 1개의 OS가 있는 서버의 구조입니다. 잘 안쓰는 서버는 CPU, RAM 리소스 낭비가 발생할 수 있고 그로 인해 비용이 증가하는 문제가 발생해 2세대로 전환 압력이 발생했습니다. 가상화 : 서버 운영 2세대 : 1세대의 가용공간 활용 효율성 개선을 위해 virtual machine을 적용합니다. 이러한 가상 머신은 H..
ALU와 플래그 레지스터 앞서 [1]장에서 Arithmetic and Logic Unit, Control Unit, Register 들로 이뤄진 CPU의 Core에 대해 이야기했었습니다. 이번에는 이러한 내용을 좀 더 자세히 알아보겠습니다. *대학 전공수업에서는 실제 회로로 어떻게 구현하는지를 함께 수업하지만, 여기서는 그러한 내용은 생략하도록 하겠습니다. 위 그림은 ALU가 어떻게 정보를 받아들이고 내보내는지를 알 수 있는 그림입니다. ALU는 레지스터를 통해 피연산자(오퍼랜드)를 받아들이고, CU로부터 수행할 연산이 무엇인지 제어 신호(Control Signal)를 받아들입니다. CU는 IR로부터 어떤 명령어를 ALU에게 전달해야 할 지를 받아들입니다. ALU가 주어진 명령어를 처리하면 이 또한 레지..
고급 언어와 저급 언어 Java, C, C++, C#, Python, Ruby, Javascript ... 모든 프로그램을 만드는 소스코드는 명령어로 변환된 이후에 실행될 수 있습니다. 위에서 언급한 프로그래밍 언어는 공통점이 있습니다. 바로 사람이 이해할 수 있는 '고급 언어(High-level programming language)'라는 것입니다. 컴퓨터 구조를 배울 때나 특정 환경에서는 간혹 '저급 언어(Low-level programming language)를 사용하기도 합니다. 저급 언어는 두 종류로 나뉘며 이는 어셈블리어와 기계어를 말합니다. 기계어는 0과 1의 비트들로 이루어진 명령어들입니다. 이는 이진수로 표현될 수 있으며, 너무 길게 표현되어 가독성이 떨어져서 16진수로 표현하는 경우가 ..
공통점 1. '돈을 많이 벌겠다' 라는 목표를 한계치 분석 없이 세운다. 돈을 잘 버는 것은 단순히 한달 순수익만을 가지고 이야기할 수는 없습니다. 투자한 자원 대비 얼마나 많은 현금흐름을 만들어내느냐가 '돈을 잘 버는 것' 입니다. 권프로님이 말하시는 건 특히 가맹(프랜차이즈) 창업 시 한달 OOOO 만원의 수익 등의 한가지 키워드에 꽂히는 걸 말합니다. 특히 로컬 비지니스는 그 매출과 순이익에 한계가 잡히기 쉽습니다. 월세 권리금 유사업종 경쟁 비지니스의 출현 최대 회전율 이러한 요소를 우선 고려하고, 투자금 대비 수익인 ROI를 고려해야 하는데 '돈을 많이 벌겠다'라는, 월 OOO 만원 등의 한가지 목표만 세워지는 경우 가게와 본인이라는 인적 자원의 한계를 고려하지 못한 비지니스를 운영하게 될 수 ..