command(명령어) →shell→운영체제(os)
1.기억장치
하드디스크(보조기억장치)->메모리(주기억장치)->캐시->레지스터<->CPU
<----------------------------------------------------------느려짐
보조기억장치:영구히 저장되는 저장장치,실제로 프로그램을 띄우는 것은 메인메모리부터 데이터가 올라가는 것
속도가 느려서 cpu가 바로접근 못함,주기억장치에 데이터 올리는 역할(운영체제가해줌)
ROM(Read Only Memory):읽기만 가능한 메모리,컴퓨터 킬때 쭉 올라가는 것들
2.시스템 소프트웨어
응용소프트웨어가 동작할 수 있도록 도와주는 것,ex)운영체제
(응용소프트웨어:엑셀,카톡...등 없어도되는 것,시스템 소프트웨어 위에서 돌아간다)
3.운영체제
하드웨어를 관리할 수 있게 해주는 것이 운영체제
(없으면 깡통에 불가감)
운영체제의 기능
-명령어해석
shell:명령어 해석기
shell->kenel(운영체제의 핵심적인 역할)
운영체제 운용기법
-다중처리시스템
cpu에는 여러개의 코어가 존재함
cpu가 두개라고 생각하면됨
윈도우
선점형 :Ctrl+Alt+Delete누르면 작업관리자에서 강제로 중지시킬 수 있음
자동감지기능:마우스꽂으면 자동으로 인식
리눅스
오픈소스여서 가져다가 만들어서 센트os,우분투 등 리눅스 기반
유닉스를 가지고 만든것,유닉스 기반(씨언어)
강력한 보안기능(오픈소스여서,윈도우는 소스가 공개안되어있어 해커들의 공격대상되기 쉬움,리눅스는 잘공격안함)
유닉스
기계어->어셈블리어->고급어
기계어와 어셈블리어는 어려워서 씨언어로 다시 만듬,아직까지 어셈블리어와 같이 되어있어
(씨언어가 가지고 있는 포인터가 직접적으로 메모리에 접근할 수 있는 변수여서 기계와 잘 어울릴 수 있다)
유닉스를 산다는 것은 기계까지 같이 산다는 것으로 비싸다(몇십억?)
시분할시스템:시간을 분할 해서 여러 프로그램들이 동시에 실행되는 것처러 느끼게 함(대부분 운영체제가 그렇다)
shell->kenel->하드웨어
컴퓨터를 켜면 커널이 주기억장치에 이동되어 끌때까지 있음
고급어------------>기계어
컴파일러(번역)
인터프리터:한줄한줄 통역
파일디스크립터:파일에 대한 데이터,아이노드블럭에서 데이터를 올려서 기억장치에서 쓸수 있게해주는 것
디자인패턴,UML은 시험 직전에 암기!!
개발자:사용자의 요구사항을 바탕으로 비지니스로직을 설계하는 사람,이 데이터가 어떻게 흘러가는지 만드는 사람
시스템엔지니어(SE): 소프트웨어가 잘 돌아갈 수 있는 환경을 만들어주는 사람,서버 운영체제에 대한 관리하는 사람
댓글