분류 전체보기
-
아이패드를 해부해보자 (사진으로만)Computer Science/Computer Architecture and Organization 2021. 3. 17. 00:09
태블릿, 그리고 스마트폰도 컴퓨터의 일종이다. 그렇다면 값비싼 아이패드 내부는 어떻게 생겼을까? 데스크탑 컴퓨터를 보면 크기가 아주 큰데, 어떻게 고성능을 내는 태블릿에 컴퓨터 장치들이 모두 들어가있는것일까? 값비싼 아이패드를 직접 해부하는것 보단, 인터넷에 있는 사진을 통해 살펴보도록 한다. 위 사진은 Ipad Pro 9.7를 분해한 것이다. 왼쪽부터 디스플레이, 두개의 셀로 나눠져있는 배터리, 컴퓨터의 주요 요소들이 있는 보드, 그리고 애플 로고가 새겨진 아이패드의 뒷판이 있다. 그 옆에는 조심스럽게 겉옷이 벗겨진 아이펜슬이 있다. 자세한 사항은 ifixit 링크로 가면, 부품별로 설명되어있는데, 이 포스트에서는 보드를 더 자세히 살펴보도록 한다. 먼저, 주황색 네모안 Toshiba의 flash st..
-
컴퓨터 구조와 장치, 그리고 PixelComputer Science/Computer Architecture and Organization 2021. 3. 16. 23:21
각자의 역할 컴퓨터의 안으로 조금 더 깊숙이 들어가 보자. 거의 모든 컴퓨터들은 같은 기본 동작을 한다: input, output, processing 그리고 storing. 입력을 받고, 밖으로 내보내고, 데이터를 처리하고 저장하는 것을 컴퓨터라고 말할 수 있다. 새로 컴퓨터를 구매했다고 상상해보자. 여러가지 장치 또한 구매하거나 사용하던 것을 써야 하는데, 그 장치는 어떤 역할을 하는 장치들일까? 대부분 크게 input 또는 output 장치(device)로 나눌 수 있다. input device 는 컴퓨터에게 정보를 입력해주는 장치이다. 예를 들면 키보드, 마우스, 마이크 등에 해당한다. 이러한 기기들은 사용자가 만든 신호를 컴퓨터에게 전달한다. output device는 컴퓨터가 계산한 결과를 사..
-
프로그램은 컴퓨터에서 어떻게 동작하는것일까?Computer Science/Computer Architecture and Organization 2021. 3. 14. 14:03
애플리케이션, 운영체제, 컴파일러 그리고 하드웨어 MS 프로그램, 컴퓨터 게임, 혹은 데이터베이스는 수만 - 수억 개 라인의 코드로 되어있을 것이고, 또한 다른 수준 높은 소프트웨어 라이브러리를 사용하고 있을 것이다. 하지만, 하드웨어는 아주 간단한 동작만 할 수 있다. 지난번 포스트에서 봤듯, 결국에 circuit 은 아주 단순하다. 컴퓨터는 1 그리고 0으로 이루어져 있다. 도데체 아주 복잡한 애플리케이션이 어떤 방식으로 간단한 명령으로 변하는 것일까? 상상만으로는 이해하기 쉽지 않다. 복잡한 프로그램에서 간단한 명령까지, 몇가지 계층(layer)의 소프트웨어가 있고, 그것들은 복잡한 동작/코드들을 이해하고 더 쉬운 언어로 변화시켜서 더 아래의 레이어에 전달한다. 아래 이미지에서 보듯, 애플리케이션들..
-
컴퓨터 아키텍처를 발전시킨 위대한 아이디어: 무어의 법칙Computer Science/Computer Architecture and Organization 2021. 3. 14. 00:42
컴퓨터의 탄생 이래로 컴퓨터 아키텍처에는 수많은 변화가 있었다. 컴퓨터를 진화시킨 기술은 수없이 많지만, 그중 무어의 법칙에 대해 간략하게 짚어본다. 무어의 법칙 (Moore's Law) 무어(Gordon Moore) Intel의 창립자중의 한명이며, 컴퓨터 아키텍쳐 발전에 막대한 영향을 미친 무어의 법칙을 만든 사람이다. 이는 매 2년 (18 - 24달)마다 반도체의 성능이 2배씩 증가한다는것 인데, 불과 10년까지만 해도 이 법칙에 따라, 거의 모든 반도체 회사(Intel, Samsung 등)은 반도체에 더 많은 집적 회로를 넣는것에 집중해서 발전시켜왔다. 하나의 컴퓨터 모델을 만드는데는 몇년이 걸릴 수 있기 때문에, 칩에 필요한 리소스들이 2배 또는 4배, 그이상이 될 수 있다는 것이다. 이는 같은..
-
컴퓨터의 종류: PC, Server, Supercomputer and Embedded Computers 그리고...Computer Science/Computer Architecture and Organization 2021. 3. 11. 22:50
뉴스를 보면 종종 게임서버가 터졌다 혹은 서버가 과부화 되었다는 표현이 보인다. 컴퓨터 비전공자인 주변 사람들은 나에게 묻는다. "서버가 터졌다는게 뭐야? 정말 펑 터진거야?" 그런 질문에 대답할때, 필자는 서버라는 개념을 알려주기 전에, 먼저 어떤 형태의 컴퓨터가 있는지부터 설명을 하곤 한다. "컴퓨터의 종류? 집에있는게 컴퓨터 아닌가?" 현대 사회에서 쓰여지고 있는 컴퓨터의 종류는 크게 네가지로 나눌 수 있다. Personal Computers (PC) PC방, PC게임등의 단어가 이 Personal Computers의 약자에서 파생된 단어이다. 요즘에는 저렴(?) 하다기보다는, 개인이 살수 있는 정도의 가격에 좋은 성능을 내는, 그리고 보통은 third-party software를 쓰는 컴퓨터를 P..
-
[SQL/Algorithm] 없어진 기록 찾기, RIGHT JOINDatabase (DB)/Programmers SQL 2020. 11. 19. 09:04
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE VARCHAR(N) FALSE DATETIME DATETIME FALSE INTAKE_CONDITION VARCHAR(N) FALSE NAME VARCHAR(N) TRUE SEX_UPON_INTAKE VARCHAR(N) FALSE..
-
[SQL/Algorithm] Programmers: 동명 동물 수 찾기, IF NULLDatabase (DB)/Programmers SQL 2020. 11. 19. 09:00
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE VARCHAR(N) FALSE DATETIME DATETIME FALSE INTAKE_CONDITION VARCHAR(N) FALSE NAME VARCHAR(N) TRUE SEX_UPON_INTAKE VARCHAR(N) FALSE..
-
[SQL/Algorithm] Programmers: 동명 동물 수 찾기, HAVINGDatabase (DB)/Programmers SQL 2020. 11. 18. 14:38
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE VARCHAR(N) FALSE DATETIME DATETIME FALSE INTAKE_CONDITION VARCHAR(N) FALSE NAME VARCHAR(N) TRUE SEX_UPON_INTAKE VARCHAR(N) FALSE..