실전 프로젝트 6주차. 오늘은 브로셔를 정리하고 발표 준비를 마무리 했다. 프로젝트의 끝이 보인다. 오늘자 TIL에는 저번 TIL에 정리하지 못했던 cpu 아키텍쳐에 대해 간단하게 정리해보고자 한다.
ISA(Instruction Set Architecture)
명령어 집합 구조.
컴퓨테에서 사용되는 명령어 세트를 정의하는 것.
하드웨어와 소프트웨어 사이의 Interface를 결정한다.
하드웨어와 프로그램 사이의 매개체.
마이크로 아키텍처(CPU 아키텍처)
ISA를 물리적으로 구현하는 방법.
ISA에 따라 동작하는 하드웨어를 설계하는 방법
프로세서의 성능, 전력소비 캐시 및 메모리관리와 같은 중요한 기능을 결정한다.
ISA는 프로세서가 수행할 수 있는 명령어 집합을 정의하고, 마이크로아키텍처는 그 명령어를 실행하기 위한 하드웨어적인 방법을 결정한다. ISA와 마이크로아키텍처는 함께 작동하여 프로세서의 동작을 결정합니다.
x86과 arm처럼 ISA가 다르면 호환되지 않는다.
Interface가 달라 말이 통하지 않는다.
x86
Intel 기반 32bit cpu
현존 pc 프로그램 대부분이 지원
x86-64 (amd64)
Intel 기반 64bit cpu. x86과 호환.
AMD가 만들었지만 Intel에서도 쓴다
arm
arm 기반 32bit cpu
arm은 cpu설계를 뼈대까지만 해서 타사에 판매한다. 저전력 경량화에 뛰어나다.
모바일같은 소규모 기기에서 주로 사용되었다.
모바일 앱이 pc에서 돌아가지 않는 이유는 arm기반이기 때문이다.
arm64
arm 기반 64bit cpu
32bit arm과 호환된다.
AWS 자체 개발 서버인 Graviton, Apple의 자체개발 M1 CPU가 arm64기반이다.
맥에서 ios 앱이 돌아가는 이유는 arm64 기반이기 때문이다.