1장 유닉스 소개.

Slides:



Advertisements
Similar presentations
모바일 프로그래밍 개론 UNIT 01 로봇 SW 컨텐츠 교육원 조용수. 학습 목표 모바일 프로그래밍이란 ? Embedded System 특성 Mobile OS Hybrid and Native SDK and NDK 2.
Advertisements

1/29 Chapter 3: 시스템 소프트웨어 인터페이스 인간이 실질적으로 조작하는 기계의 부분 좋은 인터페이스 : 직관적 ( 사전지식, 경험으로 알 수 있음 ) 이어서 누구나 즉각적 사용 가능 사용자 ( 자연어 ) ↔ 응용 S/W↔ 시스템 S/W↔H/W( 기계어 )
Linux1 Linux 개요 Linux 방문하여 홈페이지 등록하기 Vi 편집해 보기. Linux2 개요  Linux 란 ? 1991 Linus Benedict Torvalds 가 만든 Unix 의 한 버전 GNU(GNU is Not Unix) » 프로그램이나 정보의.
컴퓨터는 어떻게 집안에 들어오게 되었을까 ? 2011 년 10 월 12 일 정동욱. ENIAC (1946)
PPT L ET’S G O N OW! PPT L E S G O N OW! O.S (Operating System) 운영체제 H/W 의 전반적인 동작을 제어하고 조정하는 시스템 프로그램들의 집합 사용자가 HW 를 쉽고, 효율적으로 활용 할 수 있는 환경을 제공 H/W.
1 장 Unix/Linux 소개 1 Helpers. 1 장 내용 1. 왜 유닉스인가 ? 2. 유닉스 시스템 구조 3. 유닉스 역사 및 버전 4. 리눅스 설치 ( 별도 2 시간 실습 ) 5. 사용 환경 6. 사용자 계정 관리 Unix/Linux 2.
망고 100 보드로 놀아보자 -1 (u-boot,linux kernel,Android)
운영체제의 역사 작성 / 발표 오두환.  OS( 운영체제 ) 의 정의 OS(operating system) 란 ?? 머리 - > 계산 = Cpu 얼굴 + 몸매 = 그래픽카드 눈 = 모니터 머리 -> 기억 = HDD/SDD 입 = 스피커 귀 = 마이크 ….. 하드웨어하드웨어.
숙명여대 창병모 2011 가을 1. Unix/Linux 의 효과적 사용  command, shell programming, X-window,... 시스템 프로그래밍 능력 향상  file, process, network programming 시스템의 체계적 이해 및.
이재우.  운영체제 정의 ◦ OS(Operation System) ◦ 사용자와 컴퓨터 시스템 사이에 위치하여 컴퓨터 시스템의 전반 적인 동작을 제어하고 조정하며 ◦ 사용자에게 편리성을 제공하여 한정된 시스템 자원을 효율적으 로 사용할 수 있도록 관리하는.
ACRONIS TRUE IMAGE. Acronis True Image Acronis True Image 는 기업 컴퓨팅 환경에 적합 하도록 포괄적인 백업과 bare metal restore( 완전복구 ) 를 실현합 니다. Acronis.
Unix/Linux 프로그래밍 인천대학교 컴퓨터공학과 성 미 영 ( 成 美 暎 )
1 장 유닉스 소개 1. 강의 목적 및 내용 2 강의 목적  유닉스 / 리눅스 시스템의 체계적 이해 및 활용  시스템 프로그래밍 능력 향상 강의 내용  유닉스 / 리눅스의 효과적 사용 명령어, 파일 시스템, 네트워킹, X- 윈도우, 쉘 프로그래밍  유닉스 / 리눅스.
운 영 체 제 실 습 ( 리눅스 서버관리입문 ) 개 요. 2/31 운영체제 (Operating System) 개요 시스템 소프트웨어 !!!  응용 프로그램과 하드웨어 사이의 인터페이스 역할  응용 소프트웨어를 실행하기 위하여 하드웨어 추상화 플랫폼과 공통 시스템 서비스를.
Dept. Computer Engineering DBLAB 정보처리개론 담당 교수 : 김정석 2009 년도 1 학기.
담 당 자 : 김봉한 과장 전 화 번 호 : ( 내선 103) 핸드폰번호 : 이 메 일 : 아이닥터 원격제어 솔루션 및 기타 서비스 제안서.
KAIST 09 SPARCS 10 안재만 (Kuss).  OS  Kernel & Shell  OS Layer  Linux  Linux / GNU  Linux 역사  Linux 배포판  Linux Directories.
시스템 운영계획 OS 설치 및 드라이버 설치 패치 및 업그레이드 보안설정
1장 유닉스/리눅스 소개.
3 국제경쟁력과 국제시장 진출전략 해외시장 진출방식의 실행 제8장 제6장 국제투자와 글로벌 경쟁
Linux Seminar #1 리눅스 이해하기.
컴퓨터란?.
PC와 인터넷 정강수 컴퓨터 구조와 웹의 이해 PC와 인터넷 정강수
임베디드 SW 시스템 소개 - 임베디드 운영체제 - 임베디드 리눅스 - 임베디드 인터넷
임베디드 시스템 개론 8. 임베디드 시스템 개발 환경 8주차 강의 자료 Embedded System Lab.
13. Xen Yasik 박중언.
경영 정보 시스템 구축 제안서 가우정보기술주식회사 [신화 제약 주식회사] 1997년 10월 9일 새로운 기법 철저한 사후 관리
Part01. 시스템 해킹을 위한 기초 지식 Chapter01. 운영체제에 대한 이해
Vmware_workstation5에solaris10설치
4. 시스템 관리 기본 naldo.
CIDISK STEALTH File Server 제안서
뇌를 자극하는 Windows Server 2012 R2
공개소프트웨어란? “Open Source Software(공개SW)는 저작권자가 소스 코드를 개방하여 소스 코드의 수정, 재 배포가 자유로운 SW로 규정한다 공개소프트웨어는 전세계 개발자 누구나 참여하고 있는 커뮤니티 프로젝트로 개발되며, 브랜드를 달고.
제6장 FUSING.
크로스 컴파일 환경 구축.
Helpers ① 오혜성 & 최형석 ② 고의정 & 박소희 ③ 김소연 & 현광식
운 영 체 제 실 습 (리눅스 서버관리입문) 02. 리눅스 설치.
소개: Unix란 무엇인가? 숙명여대 창병모 2009/09.
임베디드 운영체제 (리눅스 중심) Lecture #2.
Ch. 1 LINUX SYSTEM.
[beginning] Linux & vi editor
유닉스 이론과 실습 √ 원리를 알면 IT가 맛있다 컴퓨터정보계열 이광규.
리눅스 커널의 이해 중에서 1장. 소개 이원구 네트워크 실험실.
임베디드 리눅스 시스템의 기본 개념 강의 목표 내용 임베디드 리눅스 시스템의 기본 개념과 주제 제시 1. 임베디드 시스템
Borland® JBuilder™ 7 Installation.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
운영체제 (OS: Operating System)
2장 운영 체제의 개요 운영체제의 개념 운영체제의 유형 운영체제의 발전 과정 운영체제의 구성 운영체제 서비스 시스템 구조
Beginning Linux Programming
악어미디어연구소 심 수 영 치과의료정보와 구강보건교육 악어미디어연구소 심 수 영
제 4 강 운영체제 개요 및 리눅스 실습.
Operating System System Program OS의 목적 OS의 종류 Application Program과 구별
상지대학교 컴퓨터공학과 고광만 Lecture 01: 유닉스/리눅스 소개 상지대학교 컴퓨터공학과 고광만
UNIX Internet Server의 대부분을 차지 대표적인 공급업체
2018 봄학기 Pusan National University School of CSE
1장. 가상머신(Virtual Machine)의 소개와 설치
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
운영체제(Operating System)
제 10장 운영체제.
제1장 Unix란 무엇인가?.
유닉스 개요 및 기본 사용법 ㅎㅎ 유닉스 개요 유닉스 시스템 접속 방법과 명령 사용법.
시스템 인터페이스 Lab2 X-window 및 명령어 사용.

운영체제의 종류 장승빈.
북큐브 전자책도서관 PC 및 모바일 이용안내 ㈜북큐브네트웍스.
제02장 컴퓨터 개요.
운영체제 장수용.
소리가 작으면 이어폰 사용 권장!.
Eclipse를 이용한 Embedded Linux 응용 프로그램 개발
[ 사용자 가이드 : 학생용 ] – Version 1.0
Presentation transcript:

1장 유닉스 소개

강의 목적 및 내용 강의 목적 강의 내용 유닉스/리눅스 시스템의 체계적 이해 및 활용 시스템 프로그래밍 능력 향상 유닉스/리눅스의 효과적 사용 명령어, 파일 시스템, 네트워킹, X-윈도우, 쉘 프로그래밍 유닉스/리눅스 시스템 프로그래밍 시스템 호출을 이용한 C 프로그래밍 파일, 프로세스, 네트워크 관련 프로그래밍

1.1 왜 유닉스인가?

유닉스의 중요성 유닉스 운영체제 유닉스 기반 운영체제 1970년대 초에 AT&T 벨연구소에서 개발된 이후로 지속적으로 발전 스마트폰, PC, 서버 시스템, 슈퍼컴퓨터에까지 사용되고 있음 소프트웨어 경쟁력의 핵심이 되고 있다. 유닉스 기반 운영체제 1. 안드로이드(Android) OS 2. iOS 3. 맥(Mac) OS X 4. 리눅스(Linux) 5. BSD 유닉스(Unix) 6. 시스템 V 7. Sun 솔라리스(Solaris) 8. IBM AIX 9. HP HP-UX 10. Cray 유니코스(Unicos)

유닉스의 특징 단순성 이식성 개방성 MIT MULTICS에 반대해서 최소한의 기능만 제공 자원에 대한 일관된 관점 제공 다양한 플랫폼에 이식 가능 스마트폰, PC, 서버, 슈퍼컴퓨터 등 개방성 소스 코드 공개와 같은 개방성

유닉스의 특징 다중 사용자, 다중 프로세스 운영체제 쉘 프로그래밍 훌륭한 네트워킹 여러 사용자가 동시에 사용 가능 다중 사용자, 다중 프로세스 운영체제 여러 사용자가 동시에 사용 가능 여러 프로그램이 동시에 실행 관리자 슈퍼유저가 있음. 쉘 프로그래밍 명령어나 유틸리티 등을 사용하여 작성한 프로그램 훌륭한 네트워킹 유닉스에서부터 네트워킹이 시작 ftp, telnet, WWW, X-window 등

1.2 유닉스 시스템 구조

유닉스 운영체제 구조 라이브러리 (library) 운영체제 커널(kernel) 시스템 호출(system call) 컴퓨터의 하드웨어 자원을 운영 관리하고 프로그램을 실행할 수 있는 환경을 제공. 커널(kernel) 운영체제의 핵심으로 하드웨어 운영 및 관리 시스템 호출(system call) 커널이 제공하는 서비스에 대한 프로그래밍 인터페이스 역할 라이브러리 (library) 공통적으로 유용한 프로그램 함수의 집합 쉘(shell) 사용자와 운영체제 사이의 인터페이스 사용자로부터 명령어를 입력 받아 해석하여 수행해주는 명령어 해석기

커널 커널의 역할 하드웨어를 운영 관리하여 프로세스, 파일, 메모리, 통신, 주변장치 등을 관리하는 서비스를 제공한다.

커널 커널의 기능 Process management – CPU 관리 File management – Disk 관리 디스크 상에 파일 시스템을 구성하여 파일을 관리함 Memory management – Main Memory 관리 메인 메모리가 효과적으로 사용될 수 있도록 함 Communication management – Network Interface Card 관리 네트워크를 통해 데이터를 주고 받을 수 있도록 관리함 Devic management – 기타 주변 장치 관리 모니터, 키보드, 마우스와 같은 장치를 사용할 수 있도록 관리함

1.3 유닉스 역사 및 버전

유닉스 역사 및 표준 AT&T 벨 연구소(Bell Lab)에서 개발됨 유닉스의 큰 흐름 Ken Thompson이 어셈블리어로 개발함 D. Ritchie가 C 언어로 다시 작성함 C 언어는 Unix를 작성하기 위한 언어로 밀접하게 관련되어 있음 이론적으로 C 컴파일러만 있으면 이식 가능 소스 코드를 대학에 개방함 유닉스의 큰 흐름 시스템 V(System V) BSD(Berkeley Standard Distribution) 유닉스 리눅스(Linux)

유닉스 버전 트리[위키백과]

유닉스 시스템 V 벨 연구소에서 개발된 버전이 발전하여 시스템 V가 됨 유닉스 버전 중의 최초의 대표적인 성공 사례 여러 유틸리티가 공개되면서 일반 사용자들에 확산 다양한 상업용 버전으로 발전 IBM의 AIX, Sun의 Solaris, HP의 UP-UX

솔라리스(Solaris) 썬(SUN)에서 개발한 시스템 V 기반의 운영체제 썬 워크스테이션에서 전문가들이 주로 사용

BSD 유닉스 공개 소스코드를 기반으로 버클리대학교에서 개선 주요 기능 개선 상업용 운영체제의 기초 메모리 관리 기능 향상 네트워킹 기능 추가 TCP/IP 네트워킹, 소켓(Socket) 등 상업용 운영체제의 기초 썬 OS(Sun OS), 맥 OS(Mac OS) 등

맥 OS(Mac OS) 1984년 애플 매킨토시 컴퓨터용 운영체제로 개발 맥 OS X 개인용 컴퓨터에 GUI를 처음으로 도입 2002년에 NeXTSTEP 운영체제와 BSD 유닉스를 기반으로 개발 문서편집, 그래픽, 멀티미디어 등의 분야에서 많이 사용됨

리눅스 PC를 위한 효율적인 유닉스 시스템 소스코드가 공개 다양한 플랫폼에 포팅 가능 GNU 소프트웨어와 함께 배포 1991년 헬싱키 대학의 Linus B. Torvalds에 의해 개발됨 소스코드가 공개 인터넷 상에서 자원자들에 의해서 기능 추가 및 확장됨 공용 도메인 상의 무료 OS 다양한 플랫폼에 포팅 가능 PC, 워크스테이션, 서버 등 GNU 소프트웨어와 함께 배포

리눅스 장점 풍부하고 다양한 하드웨어를 효과적으로 지원 놀라운 성능 및 안정성 인터넷에 맞는 강력한 네트워크 구축 대부분의 하드웨어를 지원하는 추세임 PC, 워크스테이션, 서버 등 놀라운 성능 및 안정성 Pentium으로도 충분히 빠르며 안전하게 수행 인터넷에 맞는 강력한 네트워크 구축 다양한 응용 프로그램 개발됨 무료 배포판 레드햇(RedHat): 상업용 우분투(Ubuntu) 페도라(Fedora) CentOS

모바일 기기용 운영체제 안드로이드(Android) iOS 리눅스 기반 모바일 기기용 주로 스마트폰, 태블릿 PC 등 개방형 운영체제로 소스 코드 등 공개 iOS 맥 OS X를 기반으로 개발된 모바 일 기기용 운영체제 애플사의 iPhone, iPad, iPod

모바일 기기용 운영체제 Ubuntu for Phones 데스크 톱 리눅스 운영체제인 Ubuntu를 스마트 폰에 적용 2013년 1월 발표 Canonical사

1.4 리눅스 설치

리눅스 설치 배포판을 이용한 설치 다양한 배포판 데스크톱 환경 프로그램 간 의존성 문제가 해결되어 있어 설치가 쉽다. 커널은 공유하고 배포판마다 조금씩 다른 데스크톱 환경이나 응 용 프로그램 제공 레드햇(RedHat) 계열 RedHat: 상업용, Fedora: 무료, CentOS: 엔터프라이즈용 무료 등 데비안(Debian) 계열 우분투(Ubuntu) 데스크톱 환경 사용하는 데스크톱 환경에 따라 사용방법이나 사용 가능한 응용 프로그램이 조금씩 다르다. GNOME, KDE, Unity

리눅스 배포판 우분투(Ubuntu) CentOS 데스크톱에서 쉽게 사용할 수 있 는 리눅스 배포판 MS 윈도우즈 상에서 인터넷으로 쉽게 직접 설치도 가능 http://www.ubuntu.com CentOS RedHat Enterprise 배포판을 기반으 로 하는 무료 운영체제 주로 서버용으로 많이 사용되며 데스크톱용, 워크스테이션용도 제공 http://www.centos.org

1.5 우분투 설치

우분투 설치 방법 단독 설치 듀얼 부팅으로 설치 가상 머신 프로그램을 사용하여 설치 포터블 우분투 설치 컴퓨터에 우분투만을 설치 듀얼 부팅으로 설치 컴퓨터에 윈도우가 설치된 상황에서 디스크 공간을 비워, 우분투를 설치 컴퓨터 부팅시 어느 OS로 시작할지를 선택 가상 머신 프로그램을 사용하여 설치 Virtual machine 프로그램(예, VMware)을 먼저 설치 가상머신을 생성하여 우분투를 설치 포터블 우분투 설치 윈도우의 유틸리티로 우분투를 설치 USB에 설치하여 이동성을 높임

가상머신을 이용한 우분투 설치 Ubuntu 다운로드 가상 머신 프로그램으로 VMware 선택 http://www.ubuntu.com/getubuntu/download Ubuntu 12.04 LTS 선택 가상 머신 프로그램으로 VMware 선택 VMware 가상 머신 프로그램 종류 VMware Player 무료, 게스트 OS 하나만 실행 가능 VMware Workstation 라이선스 필요, 다수의 게스트 OS를 동시 실행 가능 etc. VMware Player 다운로드 http://downloads.vmware.com/ 최신 버전 선택

VMware 설치 다운로드한 VMware 파일을 더블클릭하여 설치를 시작 설치 유형은 Typical로 선택 참고로, 이미 자바 SDK, 이클립스, 비주얼 스튜디오가 설치되어 있다면 Custom을 선택하여 디버깅 모드를 지원 받을 수 있다. VMware Tool 설치는 반드시 하도록 한다. 설치 마지막 단계에서 윈도우가 재시작되고 나면, 설치 가 최종적으로 완료된다.

VMware에 Ubuntu 설치 VMware Player 실행 가상 머신 생성 File  New  Virtual Machine... 매체 선택 CD-ROM, 디스크의 iso 이미지 파일, 나중에 설치(*) 게스트 OS 선택, 이름, 설치 위치 설정 디스크 크기 선택 Max 크기 내에서 자유롭게 선택 ‘store vitual disk as a single file’ 선택 하드웨어 설정 (Customize Hardware...) 메인 메모리, 플로피 삭제, CD-ROM 드라이브 설정 (New CD/DVD...) Connection  Use ISO image file과 앞에서 다운 받은 우분투 파일 선택(*) Finish

VMware에 Ubuntu 설치(계속) 생성된 가상 머신에 Ubuntu 설치 생성된 가상 머신 전원 인가(Power on this virtual machine) 실제 아무런 OS가 설치 되지 않은 컴퓨터를 켰을 때와 같음 가상 머신의 CD-ROM을 통해 설치 매체 부팅이 일어남 검정 화면 표시되면서, 앞에서 선택한 설정에 따라 실제 CD_ROM에서 부팅되거나 연결된 ISO 이미지 파일에서 부팅되거나 아무것도 설정되어 있지 않으면 부팅 실패가 일어남 파티션 설정 루트 파티션 스왑 파티션 기타 설정

1.6 사용 환경

직접 로그인 사용 가능한 유닉스/리눅스 시스템이 있는 경우 우분투/CentOS 터미널 화면 X-윈도우(X-window)로 직접 로그인하여 바로 X-윈도우 시스템을 사용할 수 있다. 우분투/CentOS 터미널 화면

원격 로그인 MS 윈도우에서 telnet 이용 C:\> telnet cs.sookmyung.ac.kr

원격 로그인 PuTTy 사용 http://www.chiark.greenend.org.uk/~sgtatham/putty telnet, ssh 등 이용하여 원격 로그인

1.7 사용자 계정 관리

시스템 관리자 슈퍼유저(superuser) 슈퍼유저 로그인 시스템을 관리할 수 있는 사용자로 슈퍼유저가 사용하는 계정이 root이다 슈퍼유저 로그인 직접 root 계정으로 로그인 다른 계정으로 로그인 후 $ su [사용자명]

사용자 계정 추가 사용자 추가/삭제 사용자 관리자 도구 # useradd [옵션] 사용자명 # userdel 사용자명 # passwd 사용자명 관련 파일: /etc/passwd, /etc/shadow 사용자 관리자 도구 [시스템] -> [관리] -> [사용자 및 그룹]

그룹 추가 그룹 추가/삭제 # groupadd [-g gid] 그룹명 # groupdel 그룹명

핵심 개념 유닉스 시스템의 가장 큰 특징은 단순성과 이식성과 개방성이다. 운영체제는 컴퓨터의 하드웨어 자원을 운영 관리하고 프로그램을 실행할 수 있는 환경을 제공한다. 커널은 하드웨어를 운영 관리하여 프로세스, 파일, 메모리, 통신, 주변장치 등을 관리하는 서비스를 제공한다.