Geek OS.

Slides:



Advertisements
Similar presentations
제주특별자치도교육청. 목 차 일상생활 속에서의 정보보안 안전한 컴퓨터 사용  보안업데이트 자동설정  가짜 백신 프로그램 주의  믿을 수 있는 웹사이트만 접속  자동 로그인 기능 사용 안함  사용 후 반드시 로그아웃 확인 
Advertisements

리눅스 - 아두이노 INO 를 활용한 리눅스 커맨드라인에서의 아두이노 프로그래밍. INO 란 ? 커맨드라인상에서 아두이노에 관련된 작업을 하도록 도와주는 툴킷 아두이노 IDE 의 기능이 대부분 들어가 있다. 빌드를 할 때 진행상황이 눈에 보이기 때문에, 기본 라이브러리에.
Geek-OS 단국대학교 정영진 Geek-OS 설치 및 개발환경구축 정영진
2013 년 2 학기 임베디드 프로그래밍. 권장사양  HOST PC 권장사항  리눅스 배포판이 설치된 PC - 권장 배포판 : Asianux open edition3 ( 라곤 하지만 Ubuntu, Fedora, CentOS 등 다양한 리눅스 프랫폼이 가능 )  PC.
Distributed and Cloud Computing Lab. Embedded System Software Android 개발환경 Dept. of Computer Science and Engineering Sogang University, Seoul, KOREA 1.
Distributed and Cloud Computing Lab. Embedded System Software 개발 환경 설정 Dept. of Computer Science and Engineering Sogang University, Seoul, KOREA 1.
Root File System 충북대학교 지능로봇연구실.
Introduction to Django
개발 환경 설치 Embedded System Software
Ubuntu 실습 환경 만들기 컴퓨터공학부 김찬민.
임베디드 시스템 개발 환경 (1) Lecture #3.
시작부터 끝까지 진지한 궁서체로 진행하는 완벽한 주입식의 하드코어한 리눅스/장난감 세미나
13. Xen Yasik 박중언.
Windows Server 장. 서버 운영을 위한 필수 사항.
4. 시스템 관리 기본 naldo.
IoT(사물인터넷) 보안 2016년 2학기 3. 라즈베리파이와 node.js.
Linux University of Seoul Computer Science Park Jong wook
뇌를 자극하는 Windows Server 2012 R2
컴퓨터 네트워크 실습.
BIG Data 컴퓨터응용과학부 박진완.
제6장 FUSING.
PXA270 개발환경 설정 Ubuntu 실습용.
크로스 컴파일 환경 구축.
제4장 Cross Compiler 설치.
Geek OS Setup 정범종
Minicom,tftp,nfs설정,vnc설정
FUSING.
임베디드 프로그래밍 Lecture #
뇌를 자극하는 Windows Server 2012 R2
Tftp, nfs, samba 실습 임베디드 시스템 I.
[beginning] Linux & vi editor
임베디드 리눅스 시스템의 기본 개념 강의 목표 내용 임베디드 리눅스 시스템의 기본 개념과 주제 제시 1. 임베디드 시스템
임베디드 프로그래밍 Lecture #
IPython Notebook + Spark + TensorFlow on Linux
컴퓨터 네트워크 실습.
임베디드 시스템 개론 3주차 Embedded System..
Embedded System Porting (2)
리눅스 명령어 실습 임베디드 시스템 I.
Windows 2008R2 Hyper-V 기반 데스크톱 가상화 환경
Internet Protocol and Programming
DataStage 운영자 지침서 Operator’s Guide
Geek-OS Project 정영진
실시간 자원 량 정보 제공을 결합한 Heartbeat
VM? Virtual..?? Vulnerability Analyst Diary
Choi Seong Yun Kali Linux 보안 수업 Choi Seong Yun
제4장 유닉스 쉘 숙명여대 창병모 2011 가을.
2018 봄학기 Pusan National University School of CSE
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
Windows에서 Virtual Box를 이용한 Ubuntu 설치
Kernel Programming Environment
2DGP Project 1차 발표 염혜린 © Copyright Showeet.com – Free PowerPoint Templates.
라즈베리파이 기초과정 (1차시) ㈜헬로앱스 강사: 김영준 목원대학교 겸임교수.
IoT(사물인터넷) 보안 2016년 2학기 3. 라즈베리파이와 node.js.
Internet Protocol and Programming
운영체제 RaspberryPi Sejin Oh.
리눅스 커널 프로그래밍 환경 구축 IT EXPERT 리눅스 커널 프로그래밍 Author : Byungki Kim
운영체제의 종류 장승빈.
Telnet 을 활용한 Linux 메뉴얼 오두환.
HW 1: Buffer Overflow.
Command line tools 한국어 정보의 전산 처리
Internet Protocol and Programming
제4장 유닉스 쉘 숙명여대 창병모
운영체제 장수용.
소리가 작으면 이어폰 사용 권장!.
Bizforms PowerPoint 파워포인트배경(눈쌓인 겨울나무) 원본 PPT 바로가기 >
Makefile
Averatec Notebook 하드 복구 솔루션의 특징 요약
Eclipse를 이용한 Embedded Linux 응용 프로그램 개발
한국 휴렛팩커드/고객지원사업본부/IT 기술사업부 박기영
라즈베리파이를 활용한 NAS 만들기.
Presentation transcript:

Geek OS

목 차 Geek OS Geek OS 실행환경 구축 분석 도구 과제 Virtual Box Ubuntu Bochs Nasm ctag, cscope 과제

Geek OS University of Maryland(2001) 교육용 운영체제 운영체제가 제공하는 최소한의 기능(user process, virtual memory, scheduler 등)을 포함 리눅스와 매우 유사하며 축소판이라고 볼 수 있음 부팅 및 기본 자원 초기화까지 구현 운영체제의 핵심 기능을 몇 가지 project(0~5)로 구성 세계 많은 대학에서 수업과정으로 사용

Geek OS 실행환경 구축 Host PC bochs Geek OS ㆍ linux Process

Geek OS 실행환경 구축 Virtual Box Oracle에서 제작 및 지원하는 가상화 소프트웨어 https://www.virtualbox.org/wiki/Downloads Ubuntu 10.04 LTS 설치 CD https://www.dropbox.com/s/h9vtfdhta14o1yx/ubuntu-10.04-desktop-i386.iso Host PC bochs Geek OS ㆍ linux

Geek OS 실행환경 구축 Virtual Box 좌측 상단의 ‘새로 만들기‘ 클릭  linux, Ubuntu(32bit)

Geek OS 실행환경 구축 Virtual Box 만들어진 가상머신 클릭 후, 좌측 상단의 ‘설정‘ 클릭  ‘저장소’ 클릭  가상디스크 파일 선택  Ubuntu 설치 cd선택  설치  설치 후 cd제거

Geek OS 실행환경 구축 bochs ㆍ Geek OS bochs linux Host PC x86기반 PC시스템을 에뮬레이트하는 소프트웨어 대부분 운영체제 개발 또는 Guest OS를 구동시키기 위해 사용 프로세서, 메모리, 디스크, 디스플레이, Ethernet, BIOS와 여러 하드웨어 주변기기를 지원 DOS, Windows, BSDs, Linux, Xenix 등 다수의 운영체제 수행 Host PC bochs Geek OS ㆍ linux

Geek OS 실행환경 구축 bochs Shell에서 직접 설치 설치 확인 sudo apt-get install bochs bochs-x 설치 확인 Bochs

Geek OS 실행환경 구축 nasm Geek-OS 컴파일에 사용될 assembler 호환성 문제로 2.08 버전 rpm다운로드 후 설치 wget http://www.nasm.us/pub/nasm/releasebuilds/2.08/linux/nasm-2.08-1.i386.rpm alien 설치 sudo apt-get install alien rpm파일을 deb 파일로 변환 sudo alien -k nasm-2.08-1.i386.rpm 변환된 패키지 설치 sudo dpkg -i nasm_2.08-1_i386.deb 설치 확인 nasm -version

Geek OS 실행환경 구축 Geek OS 프로젝트를 진행할 OS 커널 소스 Install Geek-OS 소스 다운로드 wget http://sourceforge.net/projects/geekos/files/geekos/geekos-0.3.0/geekos-0.3.0.zip 압축 해제 unzip geekos-0.3.0.zip 환경변수 추가 vi ~/.bashrc 마지막 줄에 내용 추가 source ~/.bashrc 만약 vi 편집기가 제대로 동작 안하면 Sudo apt-get install vim GEEKOS_HOME=/home/myung_hoon/geekos-0.3.0 export GEEKOS_HOME PATH=$GEEKOS_HOME/scripts:$PATH export PATH alias bochs='/usr/bin/bochs -q' BXSHARE=/usr/share/bochs export BXSHARE

Geek OS 실행환경 구축 Geek OS 148 : GENERAL_OPTS := -O -Wall $(EXTRA_C_OPTS) 첫 프로젝트 디렉토리 생성 startProject <project name> <master directory> [<previous project>] startProject project0 /home/myung_hoon/geekos-0.3.0/src project0 디렉토리 생성 확인 Makefile 수정 컴파일 과정의 반복적 명령을 자동화하여 기술한 파일 cd project0/build/ vi Makefile 148, 149번째 줄 수정 (번호 보이기  :set nu, 148번째 줄로 가기  :148) make(project0/build) 파일 간의 종속 관계를 파악해 Makefile에 기술된 대로 컴파일 또는 쉘 명령을 내릴 수 있는 유틸리티 make 명령으로 Geek-OS 커널을 한 번에 컴파일 make 148 : GENERAL_OPTS := -O -Wall $(EXTRA_C_OPTS) -> GENERAL_OPTS := -O -Wall $(EXTRA_C_OPTS) -fno-stack-protector  (SSP - 스택 overflow를 방지하기위한 컴파일 옵션을 꺼준다) 149 : CC_GENERAL_OPTS := $(GENERAL_OPTS) -Werror ->CC_GENERAL_OPTS := $(GENERAL_OPTS) #-Werror (경고를 오류취급하는 옵션을 꺼준다)

Geek OS 실행환경 구축 Geek OS .bochsrc 수정(project0/build) bochs emulator에 대한 설정을 저장해둔 파일 vi .bochsrc 다음 내용으로 수정 vgaromimage: file=/usr/share/bochs/VGABIOS-lgpl-latest romimage: file=/usr/share/bochs/BIOS-bochs-latest megs: 8 boot: a floppya: 1_44=fd.img, status=inserted log: ./bochs.out mouse: enabled=0 private_colormap: enabled=0

Geek OS 실행환경 구축 Geek OS ㆍ Geek OS bochs linux Host PC bochs emulator 실행 및 Geek-OS 부팅(project0/build) 컴파일 하여 만들어진 커널 이미지를 통해 Geek-OS 부팅 bochs Host PC bochs Geek OS ㆍ linux

분석 도구 ctags 프로그램 소스 태그 추적 및 탐색기능을 가진 소프트웨어 Install sudo apt-get install ctags ctags를 사용할 경로에 tags 만들기 ctags –R yum install vim vi 대신 vim 사용 ~/vimrc 수정 Set tags=(tags파일 경로) 사용 Ctrl + ] Ctrl + T

분석 도구 cscope ctags의 부족한 부분을 보완하며 변수 및 함수가 사용된 곳을 찾을 수 있다. Install sudo apt-get install cscope mkcscope.sh 파일 생성 vi mkcscope.sh mkcscope.sh 내용 편집 #!/bin/sh rm –rf cscope.out cscope.file find . –name ‘*.[chsS]’ –print > cscope.files cscope –i cscope.files

분석 도구 cscope mkcscope.sh 파일 권한 변경 및 이동 vimrc 파일에 추가 chmod 755 mkcscope.sh sudo mv mkcscope.sh /usr/local/bin vimrc 파일에 추가 ~/.vimrc set nu set csprg=/usr/bin/cscope set csto=0 set cst set nocsverb if filereadable(“./cscope.out”) cs add cscope.out else cs add /home/kilmo/project0/cscope.out endif set csverb

분석 도구 cscope :cs find s main Ctrl + T cscope를 사용할 경로에 cscope 설치 mkcscope.sh :cs find s main Ctrl + T

과 제 bochs로 Geek OS 부팅 후, 본인 학번과 이름 출력 본인 PC에 Geek-OS 설치 자신의 mac address 출력 bochs 에뮬레이터 실행 창에 본인 학번과 이름 출력 캡처 해서 다음주까지 메일로... (메일제목: 운영체제수업 학번 이름) Download free PowerPoint templates from http://ppttemplate.net/ - Later, you can also upload your finished presentations for free to http://slideonline.com/