1 / 30

운영체제

운영체제. 인터넷 정보과 A 반 조원 : 문유진 장재명 박지수. 운영체제는 시스템 운영 요소를 적절하게 사용할 수 있도록 제어하며 프로그램 실행 환경과 필요한 자원을 제공하고 관리해주며 다양한 입출력장치와 사용자 프로그램을 제어한다 . 사용자 : 어떤 일을 수행하기 위해 컴퓨터를 사용하는 사람 , 장치 , 다른 컴퓨터를 의미 한다 . 하드웨어 : 연산을 위한 기본 자원을 제공하는 프로세서 , 메모리 , 다양한 장치로 구성

hadar
Download Presentation

운영체제

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 운영체제 인터넷 정보과A반 조원:문유진 장재명 박지수

  2. 운영체제는 시스템 운영 요소를 적절하게 사용할 수 있도록 제어하며 프로그램 실행 환경과 필요한 자원을 제공하고 관리해주며 다양한 입출력장치와 사용자 프로그램을 제어한다. • 사용자 : 어떤 일을 수행하기 위해 컴퓨터를 사용하는 사람,장치,다른 컴퓨터를 의미 한다. • 하드웨어 : 연산을 위한 기본 자원을 제공하는 프로세서,메모리,다양한 장치로 구성 • 소프트웨어 :컴퓨터가 기능을 수행하는 데 필요한 프로그램을 총칭한다. • 응용프로그램 : 어떤 문제를 해결하기 위해 사용자나 전문가에 의해 만들어진 프로그램이다.(웹 브라우저,한글,워드,프로세서,비디오게임 등등) 운영체제의 역할

  3. 처리능력 : 시스템의 생산성을 나타내는 대표 지표다. 단위 시간당 처리하는 작업량 • 신뢰도 : 하드웨어,소프트웨어가 실패 없이 주어진 기능을 수행할 수 있는 능력이다 • 응답시간 : 사용자가 시스템에 작업을 의뢰한 후 반응을 얻을 떄까지의 시간 • 사용가능도 : 기동률이라고 도 하며 사용자가 일정 기간 동안 컴퓨터를 실제로 사용한 시간이다. 운영체제의 목적

  4. 단순구조 : 시스템 호출 계층은 프로세스 제어, 파일 및 장치 처리와 같은 기본적인 기능을 제공하며 시스템 서비스는 프로그램 제어, 자원 할당, 보호 같은 다양한 형태로 분류할 수 있다. • 계층구조 : 유사한 기능을 수행하는 요소를 그룹으로 묶어 최하위 계층인 하드웨어에서 최상위 계층인 사용자 인터페이스에 이르기까지 다수의 계층으로 구성된다. • 마이크로 커널 구조 : 커널의 최소 기능만 내부에 포함시킨다. 즉, 커널의 크기를 대폭 축소하고 나머지 기능은 사용자 공간으로 이전하여 사용자 영역에서 수행되는 서버로 구현한다. 운영체제 구조

  5. 프로세서 :프로세서는 컴퓨터 하드웨어 구성요소 중 운영체제와 가장 밀접한 하드웨어로, 컴퓨터 각 부분의 동작을 제어하고 연산을 수행하하는 것이다 • 레지스터 : 레지스터는 프로세서에 위치한 고속 메모리로 프로세서가 바로 사용할 수 있는 데이터를 담는다. • 캐시 : 캐시는 처리 속도가 빠른 프로세서와 상대적으로 느린 메인 메모리 사이에서 데이터나 정보를 저장하는 고속 버퍼다. • 버스 : 버스는 프로세서를 비롯해 각 장치 간 또는 서브시스템을 서로 연결하여 정보를 주고받을 수 잇게 해주는 통로다. • 내부 버스 : 프로세서 내부에서 레지스터,연상장치,메모리와의 인터페이스 등을 연결 • 외부 버스 : 프로세서와 메모리, 프로세서와 입출력장치, 입출력장치와 입출력장치를 연결 컴퓨터 시스템

  6. 명령어는 프로세서가 실행한 연산을 나타내는 연산코드와 명령어가 처리 할 데이터나 데이터가 저장된 주소에 관한 정보를 기술하는 오퍼랜드로 이루어진다. - 명령어 실행 • 1. 메모리에서 명령어 레지스터로 이동하여 저장된 다음 명령어를 인출한다. • 2. 인출한 명령어를 해석하고 다음 명령어를 지정하려고 프로그램 카운터를 변경한다. • 3. 명령어가 메모리에 있는 워드를 한 개 사용하려면 사용 장소를 결정하여 오퍼랜드를 인출하고 필요하면 프로세서 레지스터로 보낸다. • 4. 명령어를 실행한다. • 5. 명령어 실행 결과를 저장한다. • 6. 다음 명령어를 실행하기 위해처음으로간다. 명령어

  7. 인출 사이클은 명령어 실행 사이클의 첫번째 단계다. 메모리 시스템에서 다음 명령어를 인출하기 위해 필요한 타이밍 신호는 프로세스가 생성한다. 이때 명령어는 메모리에서 프로세서 내부에 위치한 명령어 레지스터로 전송된다. 간접사이클은 인출사이클과 실행 사이클 사이에 위치하며 명령어에 포함된 주소를 이용하여 실제 명령어 실행에 필요한 데이터를 인출한다. 실행사이클 은명령어레지스터의 명령어를 해석하고 필요한 신호를 발생시켜 실제로 명렁어를 처리한다. 인터럽트 사이클은 프로세스는 실행 사이클 후에 종료된다. 그러나 프로세스가 프로세서의 정상적인 순차 제어에서 벗어나면 다음과 같은 인터럽트 사이클이 발생한다. ex)프로그램, 타이머, 입출력, 하드웨어오류 명령어 실행 사이클

  8. 운영체제의 주된기능은 프로세스의 생성과 종료다. 프로세스는 실행 중인 프로그램으로 실행되는 프로세스는 독립적일 수도 있고 협조적일 수 도 있다. • 1. 실행 중인 프로그램 • 2. 비동기적 행위, 실행중인 프로시저 • 3. 실행중인 프로시저의 제어 추적 • 4. 운영체제에 존재하는PCB • 5. 프로세서에 할당되어 실행될 수 있는 개체 • 6. 디스패치가가능한 대상 - 현재 시스템에서 실행 중인 프로그램을 프로세스라 한다. - 프로세스는 부모-자식 관계를 가지고 있다. - 필요에 따라 부모 프로세스는 자식 프로세스를 생성하고, 자식 프로세스는 또 다른 자식 프로세스 생성 가능하다. 프로세스 개념

  9. 프로세스의 현재활동에 의해 정의된다. 각 프로세스는 생성 준비,실행,대기,종료 상태로 구분되고 실행하면서 상태가 변한다. 각 프로세스는 자신의 프로세스 제어 블록에 의해 운영체제에서 표현된다. 다중 프로그래밍 환경에서도 프로세서의 유혹시간이 발생하는데, 이를 해결하는 방법이 프로세스의 일시정지 상태를 이용하는 것이다. • Dispatch : 준비 -> 실행 / Timeout : 실행 -> 준비 • block : 실행 -> 대기 / wakeup : 대기->준비 • 프로세스가 스스로 제어할 수 있는 변화는 실행 대기 상태 뿐이다 • 나머지는 외부 조건에 의해 발생한다. • OS는 프로세스 실행을 제어하기 위해 프로세스에 대한 정보를 가지고 있어야 하며, 제어블록이라는 데이터 구조를 가진다. 프로세스 상태

  10. Ps : process 조회 / -psef : PLD 와 PPID 확인 • Ps aux : ps-ef보다 자세히 출력 • Ussr : 프로세스 실행 사용자 / STAT : 프로세스 상태코드 • %CPU %MEM : 최근 1분간 프로세스가 사용한 CPU, 메모리 백분율 • RSS : 사용하는 실제 메모리 크기 • TTY : 프로세스를 제어하고 있는 터미널 • KILL : 종료할 해당 프로세스 / KILL -9 : 강제종료 • UNAME – P : CPU 정보확인 / free –m : 메모리 정보 확인 • Pstree : 프로세스 정보 확인 / last : 최근 시스템 접속정보 확인 • top : 프로세스별cpu와 메모리 점유율(시스템이느려질때) • Rm –r 파일 : 파일 지우기 프로세스 명령어

  11. 파일 리눅스는파일을 효과적으로 관리하기 위해 디렉터리를 사용한다 • 디렉터리 리눅스에서는디렉터리도 파일로 취급한다. • 심볼릭(소프트) 링크 원본 파일을 대신하여 다른 이름으로 파일명을 지정한 것 (윈도우의 바로가기) • 장치 파일 리눅스에서는하드디스크나 키보드 같은 각종 장치도 파일로 취급한다 디렉터리 및 파일 사용방법

  12. 디렉터리 및 파일 사용방법 • 디렉터리 계층 구조 - 리눅스는파일을 효율적으로 관리하기 위해 계층적으로 디렉터리를 구성한다 (tree구조) -모든 디렉터리의 시작은 root디렉터리로 시작하고 /로 표시한다. - 상위(부모)디렉터리는 .. 으로 표시한다. - root디렉터리를 제외한 모든 디렉터리에는 상위디렉터리가 있다. • 작업 디렉터리 현재 사용중인 디렉터리를 작업 디렉터리, 현재 디렉터리라고 하고 .으로 표시하며 pwd명령으로 위치를 확인 할 수 있다. • 홈 디렉터리 사용자에게 할당된 디렉터리로 처음 사용자 계정을 만들 때 지정한다. 사용자는 자신의 홈 디렉터리 아래에 파일이나 서브 디렉터리를 생성하며 작업 가능 홈 디렉터리는 ~로 표시한다.(사용 예 : ~user1)

  13. 디렉터리 및 파일 사용방법 • 디렉터리의 종류와 기능 dev - 장치 파일이 담긴 디렉터리다. home - 사용자 홈 디렉터리가 생성되는 디렉터리다. root - root계정의 홈 디렉터리.루트(/)디렉터리와 다른 것!! sys - 리눅스커널과 관련된 파일이 있는 디렉터리다. run - 실행 중인 서비스와 관련된 파일이 저장된다. tmp - 시스템 사용 중에 발생하는 임시 데이터가 저장된다. 이 디렉터리에 있는 파일들은 재부팅 하면 모두 삭제.

  14. 디렉터리 및 파일 사용방법 • 경로명 각 경로를 구분하는 구분자로 슬래시(/)를 사용 가장 앞에 있는 /는 루트 디렉터리를 뜻하지만 경로명 중간에 있는 /는 구분자 • 절대 경로명 항상 루트(/) 디렉터리부터 시작한다. / 디렉터리부터 시작하여 특정 파일이나 디렉터리의 위치까지 이동하면서 거치게 되는 모든 중간 디렉터리의 이름을 표시한다. 특정 위치를 가리키는 절대 경로명은 항상 동일하다. • 상대 경로명 현재 디렉터리를 기준으로 시작. / 이외의 문자로 시작한다. 상위 디렉터리로 가려면 ..을 추가한다 상대 경로명은 현재 디렉터리가 어디냐에 따라 달라진다.

  15. 디렉터리 및 파일 사용방법 • 파일과 디렉터리 이름 규칙 파일과 디렉터리 이름에는 /를 사용할 수 없다. /는 경로명 에서 구분자로 사용하기 때문이다 파일과 디렉터리 이름에는 알파벳, 숫자, 붙임표(-), 밑줄(_), 점(.)만 사용할수 있다. 파일과 디렉터리 이름에는 공백 문자, *, |, “등을 특수문자를 사용하면 안 된다. 파일과 디렉터리 이름의 영문자는 대문자와 소문자를 구별해야 한다 파일과 디렉터리 이름이 ‘.’으로 시작하면 숨김 파일로 인식한다.

  16. 디렉터리 및 파일 사용방법 • 명령어 • file : 파일 종류를 확인하고자할때 사용 • pwd : 현재 디렉터리의 절대 경로를 출력 • cd : 현재 디렉터리를 변경 • ls : 디렉터리의 내용을 출력 • ls -a : 숨긴 파일 확인 • ls -l : 상세한 정보 출력 • ls -d : 디렉터리의 자체 정보 출력 • dir, vdir : ls명령의 심벌럭 링크 • mkdir : 디렉터리 생성 • mkdir -p : 중간 디렉터리를 자동으로 만든다 • rmdir : 디렉터리 삭제 • cp : 파일디렉터리 복사 • cp -r : 디렉터리 복사

  17. Vi 시작: vi [파일명] ex) vi test.c • Vi 종료 : 마지막행 모드에서 명령키 :q 종료 :w 저장 :wq저장후vi종료 • Vi 환경설정 set nu / set nonu - 행번호를 표시 / 감춘다. set list / set nolist - 특수문자를 표시 / 감춘다.] set showmode / set noshowmode -현재모드를 표시/ 감춘다. warn - 저장하지 않고 vi를 종료할 때 경고 메시지 뿌려줌 ic - 검색 패턴에 사용되는 대/소문자를 구별하지 않음 Vi 시작 종료

  18. 입력 모드로 전환 i – 커서앞에입력 a – 커서뒤에 입력 o – 커서의 다음행에 입력 • 명령 모드로 전환 입력모드에서 Esc키 입력 Vi 모드전환

  19. 커서 이동 h,j,k,l – 좌,하,상,우 or 방향키 숫자G - 숫자 라인만큼 이동, or :숫자(마지막행 모드) • 화면이동 H – 화면의 처음으로 이동 , L – 화면의 끝으로 이동 ^b – 한화면 위로 이동, ^f – 한화면 아래로 이동 • 수정 r – 커서가 위치한 글자를 다른 글자로 수정 s – Esc키를 입력 할때까지 수정 cc – 커서가 위치한 행의 내용을 모두 수정 • 삭제 dd – 커서가 있는 행 삭제 dw – 커서가 위치한 행 삭제 Vi 명령어

  20. 복사 yy – 커서가 있는 라인을 복사 • 잘라내기 dw – 커서가 있는 단어를 잘라내기 • 붙이기 p – 삭제나 복사된 텍스트를 커서가 있는 문자나 라인 뒤에 붙이기 • 검색 n – 앞 또는 뒤로 이전 검색 반복 • 지정 a,b - a행부터b행까지 지정 마지막행은$ or % 커서행은_ 범위지정 한 행 복사하기:<범위>y Vi 명령어

  21. 접근권한 종류 읽기권한, 쓰기권한, 실행권한 세가지로 구성 소유자, 그룹, 기타사용자 3개씩 끊어서 읽음(r, w, x ) • 기호모드 / 숫자모드 접근권한을 변경하기 위해 문자와 기호 / 숫자 를 사용 접근권한

  22. 파일 접근권한 변경(기호모드) 사용자 카테고리 문자 u – 파일 소유자 g – 소유자가 속한 그룹 o – 소유자와 그룹 이외의 기타 사용자 a – 전체 사용자 연산자 기호 + 권한 부여 - 권한 제거 = 접근권한 설정 접근권한 문자 r – 읽기 권한 w – 쓰기 권한 x – 실행 권한 접근권한 기호모드

  23. 소유자(u)에게 쓰기(w) 권한부여(+) -> u+w • 기타 사용자(o)에 읽기(r) 권한제거(-) -> o-r • 현재 접근권한 확인 : ls -l 입력 (rw-r--r--) 접근권한 기호모드

  24. 파일 접근권한 변경(숫자모드) 각 권한이 있고 없고를 0과 1로 표기하고 이를 10진수로 환산, 숫자로 표현 소유자권한 (읽기,쓰기,실행) 숫자0~7 표기 그룹권한 (읽기,쓰기,실행) 숫자0~7 표기 기타사용자 권한 (읽기,쓰기,실행) 숫자0~7 표기 • ex) rwx는 111 -> 4+2+1 = 7 읽기,쓰기,실행 권한 r-x 는 101 -> 4+0+1 = 5 읽기,실행 권한 --x 는 001 -> 1 실행권한 rwxr-x--x 는 751 ! 접근권한 숫자모드

  25. 접근권한 변경하기 chmod [접근권한] [파일이름] ex) chmod 644 test.txt -> test.c파일이 rw-r--r-- 권한으로 변경 • 현재 접근 권한 : 644(rw-r--r--) • 소유자의 쓰기 권한을 제거 : r--r--r-- 이므로 444 [user1@localhost ch5]$ ls -l 합계 4 -rw-r--r--. 1 user1 user1 158 3월 25 18:03 test.txt [user1@localhost ch5]$ 접근권한 변경 [user1@localhost ch5]$ chmod 444 test.txt [user1@localhost ch5]$ ls -l 합계 4 -r--r--r--. 1 user1 user1 158 3월 25 18:03 test.txt [user1@localhost ch5]$

  26. 가상 터미널 서비스라고 하며 원격지 시스템에 접속할 수 있게 해주는 중요한 인터넷 프로토콜이다. 텔넷을 이용하면 한 컴퓨터 시스템에 있으면서 수천 마일 떨어진 또 다른 컴퓨터 시스템에 접속하여 작업할 수 있다. 텔넷을 사용하기 위해서는 원격지 시스템의 주소를 알 필요가 있다. 이것을 인터넷 넘버라고 한다. 텔넷(telnet)

  27. adduser : 유저를 만들때 사용하는 명령 • chmod : 파일이나 디렉터리의 퍼미션을 바꾼다. • cp : 파일 및 디렉터리를 복사한다. • exit : 로그아웃하고 프로그램 종료 • find : 파일시스템에서 파일이나 디렉터리를 찾을때 사용 • ftp: 파일을 주고받을때 사용 • grep : 파일 내에서 특정 패턴을 찾는다. • kill : 프로세스를 죽일 때 사용 • ls : 파일이나 디렉터리의 이름을 보여줌 • mial : 다른 사용자에게 편지 보내기 • mkdir : 새로운 디렉터리(폴더) 만드는 명령 • mv : 파일이나 디렉터리의 이름을 바꾼다. 텔넷(telnet) 명령어

  28. passwd : 암호변경 • rm : 파일이나 디렉터리를 지운다. • rmdir : 빈디렉터리를 지운다. • shutdown : 컴퓨터를 끈다. • telnet : 네크웍상에서 다른 시스템으로 원격접속 하기위한 명령어 • useradd : 사용자 넣기 • usermod : 사용자 권한주기 • vi : 텍스트 파일을 편집한다. • who am I : 현 사용자의 로그인명, tty및 로그인한 날짜/ 시간을 보여준다. • rm –r 디렉터리명 : 디렉터리 삭제 명령 텔넷(telnet) 명령어

  29. 인터넷상에서 컴퓨터 사이의 파일을 전달하는데 사용되는 프로토콜 FTP는 컴퓨터 간 파일을 전송하는데 사용되는 프로토콜로 대용량의서버에 각종 공개용 소프트웨어 및 문서를 저장하여 사용자가 필요한 자료를 자신의 컴퓨터로 다운로드하여 쓸 수 있게 한다. 이는 TCP/IP 네트워크 상에서 가장 널리 알려져 있는 프로토콜로  TCP/IP상의 다른 종류의 컴퓨터와 파일 또는 문서를 교환할 수 있고 Windows의 경우 Cute-ftp, Ws-ftp와 같은 소프트웨어를 사용한다. 한편 파일을 송수신하는 방법은 여러 가지가 있으나 FTP만큼 빠르게 파일을 올리고 내려 받는 방식이 없기 때문에 아직도 많이 사용되고 있다. FTP(file transfer protocol)

  30. ascii : 전송모드를 ASCII모드로 설정한다. • binary : 전송모드를 BINARY모드로 설정한다. • bell : 명령어 완료시에벨소리를나게한다. • bye : ftp접속을 종료하고 빠져나간다. • close : ftp접속을 종료한다. • dir : remote시스템의 파일을 보여준다. • get : 지정된 파일하나를 가져온다. • help : ftp명령어 도움말을 볼 수 있다. • ls : remote시스템의 디렉터리를 보여준다. • mdelete : 여러개의 파일을 한꺼번에 지울 때 사용한다. • mget : 여러개의 파일을 한꺼번에 가져오려할 때 사용한다. • mput : 한꺼번에 여러개의 파일을 remote시스템에 올린다. • open : ftp접속을 시도한다. • status : 현재 연결된 ftp세션모드에 대한 설정을 보여준다. • rename : remote시스템의 파일명을 바꾼다. • type : 전송모드를 설정한다. FTP명령어

More Related