Welcome to My World (www.dgmayor.com)

소프트웨어 186

46. 리눅스용 런처 만들기

작업환경 우분투 18.04 요구사항 vim 또는 텍스트 에디터 이클립스 다운로드 후 압축해제 이클립스 실행파일의 위치와 아이콘의 위치 확인 런처(launcher) 만들기 쉘을 실행(Ctrl+Alt+T) $ sudo vim /usr/share/applications/eclipse.desktop 아래 내용을 참고해 작성합니다. #!/usr/bin/env xdg-open [Desktop Entry] Version=2019-03 # 이클립스의 버전 Type=Application Terminal=false Exec=/home/shin/Downloads/eclipse/eclipse # 이클립스 실행파일을 지정 Name=Eclipse JEE # 표시되는 이름 Comment=Eclipse # 설명 Icon=/home/..

45. 리눅스 데비안 패키지 만드는 법

Create a Debian package using dpkg-deb tool August 16, 2019 Azmatlinux, Studio-DevOps, Tech Blogs.deb, debian, Devops, dpkg, dpkg-deb, linux, packages Table of contents Create a package STEP-1 STEP-2 STEP-3 Share the Knol: Related Reading Time: 5 minutes Debian Package management tool dpkg is a low level tool which runs only Debian based Linux distributions. dpkg is used to search, install, remo..

8. Think Pad 노트북 소개

테크맛집 IT조선이 매주 화요일과 금요일, 리뷰 전문 뉴스레터 [10줄 테크리뷰]를 배달합니다. 눈팅만 했던 제품, 신박한 제품을 전문 기자가 파헤칩니다. 이번 주인공은 재택근무와 실외 근무 양쪽 모두를 충족할 수 있는 레노버의 최신 노트북 ‘씽크패드 X1 나노’입니다. [편집자 주] [10줄 테크리뷰] 레노버 씽크패드 X1 나노 주요 특징 ①업무용 노트북의 대표 브랜드 ‘씽크패드’ 시리즈의 최신작 ②역대 씽크패드 중 가장 가벼운 962g의 무게 ③마그네슘+카본 파이버 소재로 크기·무게 줄이고 내구성은 높여 ④인텔 최신 11세대 프로세서로 인한 ‘성능’가지 겸비 ⑤간단한 게임도 즐길 수 있는 아이리스 Xe 내장 그래픽 ⑥문서·코딩 작업에 유리한 16대10 비율 디스플레이 ⑦돌비 인증을 받은 선명한 화질과..

44. 리눅스 민트 프린트 스크린 유틸리티 - Shutter 소개

리눅스 민트를 설치하니 스크린샷 이라는 스크린캡처 프로그램이 기본으로 설치되어 있습니다. 그러나 한 번 저장을 하면 프로그램이 꺼져 버립니다. 그래서 다시 캡처를 하려면 프로그램을 다시 실행하고 캡처를 해야 합니다. 게다가 가끔 가다가 캡처가 누렇게 캡처가 됩니다. 한 마디로 되긴 되지만 구립니다. 조금 나은 프로그램이 없을까? 찾아보다가 Shutter 라는 프로그램을 찾았습니다. 리눅스 민트를 설치하면 기본으로 포함되어 있는 캡처프로그램 입니다. 구립니다. '소프트웨어 관리자' 를 실행합니다. 소프트웨어 관리자는 메뉴를 누르면 맨 왼쪽에 있습니다. 실행하고 Shutter 를 검색 합니다. 위와 같이 Shutter 프로그램이 나옵니다. 더블클릭 합니다. 별 5개 만점에 4개네요. 설치를 클릭해서 Shut..

43. 드디어 결정... 리눅스 민트 LMDE5

2006년 부터 시작한 우분투 리눅스의 파생 배포판. 사실상 윈도와 맥에 익숙한 일반 유저 용도 0순위로 추천할 만한 유일한 리눅스 배포판이다. 디자인도 점차 다듬어져 매우 준수해졌다.[2] Linux Mint Community라는 곳이 주축이 되어 개발한다.[3] 우분투를 기반으로 한 Linux Mint 시리즈와, 데비안을 기반으로 한 LMDE[4] 시리즈로 나뉜다. 간혹, 우분투 에디션, 데비안 에디션으로 구분하기도 하지만 정식 명칭은 우분투 기반의 리눅스 민트와, 데비안 기반의 LMDE이다. 리눅스 민트 20.3 Una와 LMDE 5 Elsie가 최신버전이다. 2022년 3월 현재 DistroWatch 기준 리눅스 인기랭킹에서 3위를 달성하고 있다. 1위는 MX Linux, 2위는 Endeavour..

42. 맥북에 윈도우 설치하기

1. 윈도우 ISO 파일 다운로드 부팅 USB를 만들기 위해서는 윈도우10 디스크 이미지 파일(ISO 파일)이 필요합니다. ISO 파일은 마이크로소프트 공식 홈페이지에서 다운받을 수 있지만, 맥(macOS)에서 부팅 USB를 만들 때는 TechBench by WZT에서 다운 받는걸 추천드립니다. 이유는 공식 홈페이지에서는 최신 버전의 ISO 파일만 제공하는데, 최신 버전의 ISO 파일은 에러가 나서 부팅 USB를 만들 수 없기 때문입니다 (2021년 8월 29일 기준) 발생하는 에러의 종류는 아래와 같습니다. 에러 1 에러 1. 'sources' 항목이 해당 볼륨 포맷에 대해 너무 크기 때문에 복사할 수 없습니다. 에러 2 에러 2. cp: /Volumes/NO NAME/sources/install.wi..

C언어 구글 공룡 게임

안녕하세요. BlockDMask 입니다. C언어나 C++을 책만보고 공부만하면 재미가 없잖아요. 그래서 제가 간단한 게임을 만들어서 소개해보려 합니다. 제가 만든 게임이 게임성이 없는 프로그램 일 수 있습니다. 순전히 예제, 연습용 게임들이니 너그럽게 이해해주시면 감사하겠습니다. 오늘은 "C/C++로 게임을 만들어보자" 그 첫번째 게임인 "구글 공룡 게임"을 만들어 보았습니다. 사실 게임이라고 하기도 좀 그런게, 충돌판정이나 게임오버 점수주기 이런게 아무것도 없이, 캐릭터 움직임, 점프, 장애물 이동하기 이 세개만 만들어 보았습니다. 이영상을 통해서 "아 C/C++을 이용해서 이렇게 간단히 게임을 만들 수 있구나"를 보여드리고 싶었습니다. 1. 게임 이름 및 설명 2. 게임영상 3. C언어 구글 게임 소..

22. 실질 퇴사 22.6.30, 22.9.30 법적퇴사

21년 10월 1일 입사 ~ 22년 6월 30일까지 근무... 대신 9월 30일까지 법적으로는 재택 근무를 하는 것으로 하여 경력 1년의 개발자로 취업을 할 수 있게끔 현 대표님이 만들어 주었다. (뭐... 사람 등신으로 만들어서 자진 퇴사 시키는 게 심적, 법적 부담감이 들었을 수도 있고... 좋은 뜻이었을 수도 있고.... 뭐... 솔직히 말하면 다른 거 들어 올 때는 좋게 생각했는데.... 근태 체크 들어 올 때는 이게 맞다는 생각이 들었다. 뭐 어떤 개발자 놈은 감사하며 다니라는데.... 나는 다른 업무도 아니고.... 최소한 개발자가 이런 걸로 평가를 받는 건 아니라는 생각이 들었다. 말로 해야지 이걸 문서로 주는 것은 아니라는 생각이 너무 들어서..... 뭐 그래서 혈압이 올라 개발자 방에서도..

21. 부트 스트랩 정리

이전 포스팅에서는 환경설정에 대해서 다루었다면 지금 포스팅부터는 OS를 직접 만드는 것에 초첨을 마추고 글을 작성하도록 하겠다. 가장 처음 컴퓨터가 부팅되고 난 뒤에 POST(Power On Self Test)과정을 거쳐 특정 OS 파일에서 첫 512바이트트만큼을 가져온다. 여기서 가장 먼저 실행되는 코드라고 하는데 이를 만들고 알아보도록 하자. 부트과정 처음 컴퓨터에 전원이 들어와서 부팅과정을 거치는데 이를 부트스트랩이라고 한다. 부트스트랩은 장화(boot)의 끈(strap)을 묶고 일어나려는 사람을 가르키기도 하며 그 과정은 아래와 같다. 이 포스팅에서 직접 수정하고 테스트 할 부분은 Step 3 이후에 로드된 MBR(Master Boot Record)이다. 3.20 전산대란이 일어났을 때나 특정 악..

20. 하드디스크 드라이버 쓰기

https://github.com/SIMHANGSUB/HoGoS/tree/master/20 20강 소스코드입니다. -------------------------------------------------------------------------------- 안녕하세요 오늘은 하드디스크에 쓰는 함수를 구현해봅시다. 논리는 하드디스크를 읽었을 때와 똑같습니다. 다른 점은 하드디스크에 내릴 명령이 읽기(0x20) 이 아니라 쓰기(0x30)인 점, 그리고 쓸 때 명령어 "rep outsw " 를 사용할 것이라는 점입니다. 바로 코드를 봅시다. 19강에 짰던 코드와 거의 차이가 없음을 알 수 있을 겁니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23..

19. 하드디스크 드라이버 읽기

https://github.com/SIMHANGSUB/HoGoS/tree/master/19 19강 소스코드입니다. -------------------------------------------------------------------------------- 안녕하세요 Qemu 환경으로도 옮겼겠다 이제 하드디스크 드라이버를 구현하는 일밖에 없습니다. 미리 말했듯이 처음 보면 굉장히 난해합니다. 따라서 드라이버 구현을 몇 단계로 나누어 포스팅할 생각입니다. 17강에서 언급했던 흐름을 그대로 코드 구현할 겁니다. 일일이 주석을 달았으니 시간을 가지고 음미하시기 바랍니다(?) 먼저 오래전에 구현했던 Interrupt.c 코드에서 90 ~ 100 줄에 해당하는 소스를 다음과 같이 수정합시다. 1 2 3 4 5 ..

18. 하드디스크 드라이버 - Q Menu

안녕하세요 저번 강의에서 예고했듯이 Qemu라는 가상환경을 설치해보겠습니다. https://www.qemu.org/download/#windows 공식 링크로 들어가 최신 버전을 다운받읍시다. 자신의 윈도우 운영체제가 32비트 / 64비트에 따라 설치합니다. 설치를 완료하면 qemu 폴더를 찾아가봅시다. 그리고 다음과 같이 커맨드창을 띄워 입력합시다( ​Qemu 폴더 안에서 실행해야 합니다 !! ) "qemu-img create hdd.img 1M" ​말 그대로 1MB짜리 hdd.img 파일을 생성하는 명령어입니다. 이렇게 간단한 명령어 한 줄로 하드디스크를 만들었습니다. 이젠 이 하드디스크를 우리의 가상컴퓨터에 마운트(끼우는) 작업을 해야겠죠? 이는 가상컴퓨터를 실행하는 동시에 마운트도 같이 할 겁니다..

17. 하드디스크 드라이버

오늘은 대망의 파일시스템 그 첫 번째 챕터입니다. 파일시스템을 위해서는 하드디스크를 읽고 쓸 줄 알아야겠죠? 우린 이미 첫 강의때 Real Mode 상에서 지원하는 인터럽트 13으로 플로피디스크를 읽어본 경험이 있습니다. 그런데 슬프게도... 우리는 Real Mode 16비트 환경에서 Protected Mode 32비트 환경으로 넘어왔습니다. 이 32비트 환경에서 더 이상 인터럽트 13 으로 디스크를 읽지 못합니다. 대신 I/O 레지스터 프로그래밍을 통해 하드디스크에 직접 명령을 내리는 수 밖에 없습니다. 이번 포스트에서는 어떤 i/o 레지스터에 명령을 내려야 하드디스크를 읽고 쓸 수 있는지 분석해볼겁니다. 그리고 다음 포스트부터 본격적으로 이를 구현해볼 겁니다. https://wiki.osdev.org..

16. 기초적인 쉘

https://github.com/SIMHANGSUB/HoGoS/tree/master/16 16강 소스코드입니다. -------------------------------------------------------------------------------- 오늘은 Shell 을 만들어봅시다! Shell을 만드는 궁극적인 목적은 사용자로부터 명령어를 입력받아 처리하기 위함입니다. 키보드 드라이버를 저번 강의 때 구현했기 때문에, Shell은 이를 이용하기만 하면 됩니다. 따라서 어떤 방식으로 구현하던지 상관이 없겠죠? 아래의 코드를 참고로 자신만의 Shell을 만들어봅시다. 코드를 수정하기에 앞서 다음과 같이 shell.h와 shell.c 를 추가합시다. ( 새로 만들었으니 당연히 makefile 에 추..