분류 전체보기 28

[소프트웨어 엔지니어] 리눅스 루트파일시스템

* 앞으로 쓸 리눅스 부팅, yocto, device driver, kernel, dti 등등에 대해서 쓰기 전에....  오늘은 rootfs 에대해서 좀 자세히 알아볼께.  (내가 쓰는 글을 하나둘씩 읽다보면 언젠가 조각이 맞춰지는 듯한 느낌을 받기 바라면서...) 우리가 ubuntu linux 처럼, 배포판 리눅스를 받으면 그 안에  루트파일시스템도 있고, 커널도 있고, 패키지 메니져도 있고, systemd, systemctl 등등 그냥 사용하면 되지만, 만약! 임베디드 리눅스처럼 커스텀 리눅스를 개발해야 한다거나,  아님.. 그냥 루트파일시스템이 궁금하거나 ^^ 하면 아래 글을 한번 읽어보면 좋아.  자!. 나만의 리눅스를 만드려고 리눅스.org 에서 커널을 받아서 컴파일하고 부팅하려면,부팅이 안되..

[소프트웨어 엔지니어] GNU (gcc, gdb, make..)

오늘은 GNU 에 대해 알아보자. GNU : GNU is Not Unix 뭐가 좀이상하지. 나도 잘이해가 안되는데  왜 저렇게 이름을 지었는지. 이름안에 이름이 있고 또 이름안에 이름이 있고 ㅎㅎㅎ 이들이 추구하는 이념, 생각을 이해하고, 그게 GNU 이다라고,  그냥 "사과" "바나나" 처럼 고유명사(?)로 생각하는게 맘 편한거 같아.   GNU 가 추구하는 이념, 생각은 바로! 자유 소프트웨어,  누구나 자유롭게 맘대로 쓸수 있다. 라는게 핵심인거 같아.   (간단한 말이지만, 복잡한뜻을 내포하고 있어.   특히 조심해야 할꺼는 여기도 라이선스 규정이 있어서, 내가 맘대로 가져다 쓰는건 자유지만,   그 말은 내꺼도 '내가 개발한, 혹은 회사가 개발한 소프트웨어도' 공개해야 한다는거야.  GPL, L..

golang (WSL2 환경에서 사용하기)

golang ~~~ 고랭 을 설치해보자 (이건뭐설치랄꺼도 없고 다운로드 받아서 풀어주기만 하면 되는거라...간단)https://go.dev/dl/ All releases - The Go Programming Language go.dev여기서 리눅스 이미지 다운로드 받아준다음. WSL2 로 파일 옮겨주고 (이건 개발환경설정 어딘가에 한번쓰긴했는데,  MobaXterm 에서 exeplorer.exe 하면 윈도우 탐색기 창이 뜨는데 그거 이용해서 파일옮기면되)아래 2개만 입력하면 설치 완료 rm -rf /usr/local/go && tar -C /usr/local -xzf go1.23.2.linux-amd64.tar.gzexport PATH=$PATH:/usr/local/go/bin  이렇게 고를 사용할 준비..

Docker (WSL2 환경에서 사용하기)

공식 다운로드 사이트 https://docs.docker.com/desktop/install/windows-install/ WindowsGet started with Docker for Windows. This guide covers system requirements, where to download, and instructions on how to install and update.docs.docker.com 이건 왜 윈도우 버전을 받냐? 도커는 그냥 윈도우 버전깔고 WSL2 에서 쓰는게 더 간단하더라고. (내경우엔) 싸이트에서 다운받은 .exe 실행해서 도커 인스톨 해주고나서  설치 하고 나서 도커데스크탑을 실행시키고, 설정화면에 아래 resource 탭을 찾아 들어가면, 아래와 같은 화면이 보일꺼..

github (WSL2 환경에서 사용하기)

우리는 WSL 환경을 사용하기로 했는데, WSL 에서 github 를 이용해서, 프로젝트도 만들어 보고 , git push 도 해보고 하려면?내 컴퓨터 (정확하게는 WSL) 와 github 가 연결이 되어 있어야 가능하겠지?  (흔히 쉽게 생각할수 있는 방법이, id/password 로 깃허브에 접속하면 되는거 아니냐 인데 . 뭐 틀린건 아니지만 ..)  이때, 가장 보편적으로 쓰는 방법이 SSH key 등록이야.이게 뭐냐면, 내 컴퓨터(WSL) 에 key 를 만들어서 (퍼블릭, 프라이빗키) , 만들어진 키를 내 github 계정에 등록해 놓으면, 매번 로긴할필요없이 내 컴퓨터(WSL) 와 github 는 연결이 이루어진다. 편한 방법이지.   방법은 간단해.1. WSL 에서 SSH 키생성 , 2. gi..

AWS SAM (Serverless Application Model) CLI (WSL2 환경에서 이용하기)

AWS SAM (Serverless Application Model)https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/install-sam-cli.html     이거 그대로 따라 하면 , sam cli install 완료~~~ 이래서 WSL 이 개발환경꾸미기 좋아 . (리눅스 쓰면이야 좋겠지만, 윈도우 써야 하는상황에서는..) MobaXterm 꿀팁하나explorer.exe . 이명령어 치면, 윈도우 파일탐색기가 열리거든? 여기에다 드래그 드랍으로 윈도우에 있는 파일 공유 하거나 WSL (리눅스) 파일을 윈도우로 꺼낼수 있어. 이걸로 위에 다운받은파일을 WSL 에다 옮긴다음에  unzip aws-sam-cli-l..

AWS CLI (WSL2 환경에서 사용하기)

AWS CLI 가 뭐냐하면, 아주 쉽게 예를 들면, EC2 인스턴스 생성하기 위해서 콘솔을 이용하잖아? 콘솔 이용하지 않고 Command Line Interface 에 명령어를 쳐서 , EC2 인스턴스를 생성할수 있는거야 (여기서 예를 EC2 인스턴스로 들었지만, AWS 에서 할수 있는 거의 모든 콘솔 작업을 CLI 로 할수 있어) https://aws.amazon.com/cli/ Command Line Interface - AWS CLI - AWSaws-shell은 명령줄 셸 프로그램으로서, AWS 명령줄 인터페이스를 사용하는 새로운 사용자와 고급 사용자 모두에게 도움이 되는 편의 기능 및 생산성 기능을 제공합니다. 주요 기능은 다음과 같습aws.amazon.com 자 그럼 CLI 인스톨 해볼까? AW..

POSIX 를 따른다? 따르라?

POSIX 가 어쩌고 저쩌고 하는데 함알아보자!Portable Operating System Interface.  , 이식가능한 운영체제 인터페이스??(참.. 소프트웨어를 잡으로 하면서 느끼는거지만, 내가 영어권이었으면 그냥 저 말만들어도 뭔지 느낌이 올껀데라는 아쉬움이 항상..영어를 못하는관계로 저렇게 풀어써놔도 느낌이 안옴..;;;;;) * 채팅어플리케이션 엔지니어는 POSIX 규격을 이용애서 어플리케이션 하나만 만들면, 그 규격을 따르는 어떤 운영체제에서도 채팅어플리케이션이 돌수 있다라는..이게 핵심인기라~~~!!!근데 POSIX 는  유닉스계열에 한정이라는... (리눅스, 맥 뭐 다 결국은 유닉스 개열이니까. 윈도우.. 얘가 문제인데 ㅋ)  하드웨어관련된 구현을 운영체제에서 어떤식으로 구현하지에 ..

[WSL2] Ubuntu 20.04 환경

오늘도 간단하게 알아볼껀데. WSL 이 뭔지 알면 아래 몇줄은 그냥 pass 해도 좋아.  그럼 본격적으로 WSL이란! Windows Subsystem for Linux . 어때 딱 봐도 감이 오지 않아? 윈도우에서 리눅스를 사용하겠다. 이말인거지. 간단하지?왜? 윈도우 운영체제에서 리눅스를 쓸라고 하느냐...(그냥 윈도우 쓰면되지. 쓰면 되지 쓰면 된는데 어느순간 리눅스 운영체제를 써야 할때가 올꺼야..) 얘기 하면 길지만, 긴얘기 짧게 하면, 1. 많은 오픈소스 개발환경이 리눅스 기반으로 만들어져 있기도 하고, 굳이 윈도우로 할수도 있지만,리눅스 커멘드라인 몇줄 치면 되는거를 윈도우에서 환경잡으려면 (어휴....) 한숨이 절로 나오는 상황이 많거든..2. 회사는 다 윈도우 운영체제쓰고, 문서관리며 시..

GPU? NVIDIA? 왜 요새 난리인가?

GPU? NVIDIA? 왜 요새 난리인가? 일단 왜 NVIDIA 가 요새 그렇게 난리인건지,  GPU 는 그래픽카드인데 이게 왜 이렇게 난리인지 엔지니어 관점으로 함 간단하게 알아보자.  GPU 를 알아보기 전에 CPU 부터 알아보자. (대표적인게 뭐, 인텔) 예를 들어서 a*b 를 10000번 반복해야 하는 프로그램이 있다고 하자. 이 경우는 10000번을 순차적으로 (싱글코어라고 가정)  수행하는게 CPU 가 일하는 방식이야. 그래서 1초에 얼마나 연산을 빨리 할수 있는지에 따라 저 10000번이 0.001 초가 걸릴수도 있고 0.01 초가 걸릴수도 있는거지.  중요한건 CPU 는 순차적으로 계산하는거다! 엄청 빠르고 효율적(?) 으로. 즉, 코어 하나하나가 엄청난 놈들인거지  그럼 GPU 는? 엄청..