728x90
- < 시스템 프로그래밍이란? >
- 시스템( 컴퓨터 시스템)의 범위
- 하드웨어 + 운영체제
- 시스템 != 하드웨어 , 운영체제도 꼭 포함해야한다!
- 시스템 프로그래밍
- 컴퓨터 시스템을 활용하는 소프트웨어 개발
- Windows운영체제자체의 기능을 십분 활용하는 프로그래밍
- 응용 소프트웨어 개발과의 차이점
- 시스템 프로그래밍은 모든 응용 프로그램에 포함되는 요소
- < 컴퓨터 시스템의 주요 구성요소 > // 시스템 : 컴구조 + 운영체제!!
- CPU, 캐쉬
- 컴퓨터 하드웨어 구조
- 운영체제
- 메인 메모리
- 메모리 관리 기법
- 하드디스크
- 파일 I/O(다양한 I/O포함 )
- CPU 와 캐쉬는 컴퓨터 구조 과목에서 배운다.
- 메인 메모리, 하드디스크는 운영체제 과목에서 다룬다.
- < 컴퓨터 하드웨어 구성(전체) >
- 위 그림이 절대적이진않다.
- 그러나 전체 그림을 보기에 이만한 그림이 없다.
- CPU (Center Procesing Unit ) : 중앙 처리 장치
- 연산이 이뤄지는 원리는 무엇인가?
- 컴퓨터에 실 연산이 이뤄지는곳
- 메인 메모리 (Main Memory )
- 램 (RAM) , 주 기억장치 메인메모리는 램이라고 생각하면된다.
- 프로그램 실행 방식을 이해하는것
- 입출력 버스 (Input/ Output Bus )
- 데이터 송 수신이 이뤄지는 원리
- ALU ( arithmetic Logic Unit ) : 산술 논리 장치
- < CPU 에 대한 이해 ( 전체 구성 ) >
- ALU
- Control Unit : 컨트롤 유닛
- cpu 전체를 다 컨트롤 한다.
- CPU의 뇌
- 레지스터
- 버스 인터페이스
- 네트워크 카드에도 입출력버스와 통신하기위한 버스 인터페이스 필요
- 버스인터페이스 : 입출력버스와 통신하기 위한 방법 , 어댑터라고도한다.
- 결국 입출력버스와 맞물린모든 인터페이스는 버스인터페이스가 존재한다.
- ex) 하드디스크, 메인메모리 , 키보드, 모니터
- ex ) 2+3 덧셈 연산을 하는 흐름
- 하드디스크에 2+3 이라는 코드? 프로그램 존재
- 실행시 메인메모리에 올라감
- 메인메모리에서 실 연산 처리를 위해서 입출력버스를 통해 CPU로 이동
- cpu에 들어가기위해 버스 인터페이스를 거쳐서 cpu로 들어감
- 2, 3은 ALU로 가고 덧셈이라는 명령어는 컨트롤 유닛으로 가야한다.
- 컨트롤유닛: 명령어를 해석한다. 덧셈이 들어오면 ALU에게 덧셈을 해라하고 알려주는 일을 한다.
- 덧셈이라는 명령어는 바로 컨트롤유닛으로 들어가고 ALU에 2,3이 바로 들어갈수있냐?
- 노 cpu에 명령과 값이 들어와도 바로 실행못한다. 이미 기존에 작동하던 작업이 있어서
- 그래서 들어온 값은 레지스터라는 임시 저장함에 들어간다.
- 그러면 기존 연산이 끝나면 컨트롤 유닛이 레지스터에서 연산을 읽어온다.
- 읽어온 결과가 덧셈이니깐 덧셈에 값 또한 레지스터에서 읽어서 ALU에 2와 3을 넣어준뒤에
- 계산한다음 계산값을 레지스터에 저장한다.
- < 클럭 신호 >
- 동작 타이밍
- 클럭 발생기의 클럭
- 일정한 주기로 전기가 발생("?) 하면서 모든 장치가 실행된다.
- 그래서 오버클럭을하면 연산속도가 빨라진다. 하지만 과부화로 열발생하고 시스템 불안정
- 필요성
- 요소들의 동기화
- 클럭속도로 개별 장치(유닛)들의 속도를 동기화 하여서
- 각 요소의 동작횟수를 클럭신호 (CLOCK PULSE) 로 조절한다.
- 연산장치는 1초에 10회
- 출력장치는 1초에 5회 작동한다면
- 가장 느린장치에 속도를 맞춰야한다.즉 1초에 클럭신호가 5번 발생해야 시스테밍 안정적이다.
728x90
'기타 공부 기록 > 뇌를자극하는윈도우즈시스템프로그래밍' 카테고리의 다른 글
5강 WIN32 vs WIN64 (0) | 2022.04.10 |
---|---|
4강 : MBCS와 WBCS의 동시지원 (0) | 2022.04.08 |
3강 : Windows에서의 유니코드(UNICODE) (0) | 2022.03.22 |
2 강. 프로그램의 실행과정/하드웨어 구성의 재접근 (0) | 2022.03.07 |
뇌를 자극하는 윈도우 시스템프로그래밍 (0) | 2022.01.26 |