TechHolic
5,000+ Views

컴팩은 어떻게 IBM 호환 PC를 만들었나

컴팩이 선보인 컴팩 포터블(Compaq Portable)은 세계에서 처음으로 IBM PC와 완벽하게 호환되는 컴퓨터다. 컴팩은 이 제품으로 일약 컴퓨터 산업의 주류로 떠올랐다. 그 뿐 아니라 제품명에서 알 수 있듯 휴대 가능한 형태로 노트북의 원형을 담고 있다는 평가를 받기도 한다. 이런 컴팩 포터블을 거인 IBM의 지적재산권을 침해하지 않은 채 리버스엔지니어링으로 만들어낸 당시 상황을 공동 창업자이자 오랫동안 컴팩 CEO를 역임한 로드 캐니언(Rod Canion)이 밝혀 눈길을 끈다. 1981년 당시 캐니언은 TI(Texas Instruments)에서 중간 관리자로 일하고 있었다. 그는 독립적으로 작동하면서 갖고 다닐 수 있는 휴대용 컴퓨터를 만들 계획을 세웠지만 벤처 자본가 벤 로젠에게 거절을 당했다. 그는 동료였던 짐 해리스, 빌 머토와 레스토랑에서 의논을 하다가 컴팩 탄생의 계기가 될 중요한 아이디어가 태어났다고 말한다. 1982년 1월 8일 아침 이들은 휴대용 컴퓨터에 대해 얘기를 나눴다. 이미 구상 자체는 나와 있는 휴대용 컴퓨터를 어떻게 차별화하고 가치 있게 만들 수 있을까. 당시 컴퓨터는 소프트웨어를 달리게 하는 머신이었다. 그러니까 새로운 소프트웨어 300개가 태어나면 컴퓨터도 300개가 탄생하는 식이었다. 이들은 얘기를 나누던 중 그렇다면 이미 나온 소프트웨어를 실행시킬 컴퓨터가 있을까 생각했다. 기존 소프트웨어를 통째로 가져올 수 있기 때문. 당시 소프트웨어 대부분을 움직일 수 있는 머신은 먼저 제품화된 IBM PC 모델 5150이 있었다. IBM PC는 상당히 인기가 높았기 때문에 개발자도 IBM PC에서 실행되는 프로그램을 쓰고 있었다. 하지만 캐니언은 단순히 IBM PC의 모조품을 만들고 싶은 생각은 없었다. 그는 IBM이 모두 샌드박스화해서 기술적으로 보호를 걸 수는 없었지만 그렇다고 IBM PC를 복제할 생각은 아니었다고 말한다. 이들은 IBM PC와 거의 같은 성능을 지니고 같은 소프트웨어를 움직일 수 있지만 압도적으로 저렴한 컴퓨터를 만들겠다는 목표를 세웠다. 이런 목표를 세운 뒤 3명은 TI를 그만두고 컴팩을 설립했다. 벤처캐피탈 클라이너 퍼킨스(Kleiner Perkins) 등에서 자금을 끌어모은 캐니언은 TI의 분노를 사지 않게 세심한 주의를 기울이면서 젊은 프로그래머와 엔지니어를 빼갔다. IBM 호환 PC를 만들려는 컴팩 입장에서 가장 큰 난점은 바이오스를 리버스엔지니어링하는 것이었다. 당시 IBM PC의 바이오스 소스 코드는 사용자 설명서에 공개되어 있었다. 하지만 IBM의 저작권 침해를 두려워해 아무도 쓰려고 하지 않았다. 실제로 IBM의 바이오스를 복사한 사실로 고소당해 도산한 기업도 있었다. 이런 IBM의 저작권 장벽을 컴팩은 다른 방식으로 극복했다. 그는 IBM의 저작권을 침해하지 않고 IBM PC의 바이오스 같은 소프트웨어를 만드는 방법을 이미 알고 있었다면서 이런 행위는 합법적이었다고 믿었다고 말했다. 이들은 지적재산권 관련 변호사를 고용하고 이들의 조언에 따라 신중하게 리버스엔지니어링을 했다. 그가 말하는 방법은 클린룸 설계라는 기술이다. 이는 소프트웨어를 리버스엔지니어링하는 기술자와 소프트웨어를 재설계하는 기술자를 완전히 격리한 상태에서 리버스엔지니어링을 통해 얻은 기능과 사양을 바탕으로 원래 소스코드와 다른 기술을 구현하는 것이다. 이 과정을 거쳐 완성된 코드가 우연히 리버스엔지니어링한 원래 코드와 완전히 동일한 경우가 아니라면 별도 저작물로 인정, 저작권 행사를 받지 않는다는 장점이 있다. 그는 변호사들이 코드를 구현할 기술자는 IBM PC의 바이오스 코드를 이용하는 건 물론 잠깐 보는 것조차 허용되지 않는다고 말했다고 설명했다. 프로그래머가 코드를 만들고 기능 사양을 결정하는 이 작업은 마치 상형문자를 해독하는 것과도 같았다는 것. 사양을 모두 완성하면 규격에 맞는 코드를 구현했다. 이렇게 엄격한 클린룸 설계를 통해 당시 IBM에 비하면 하찮은 존재였던 컴팩은 9개월이라는 단기간에 작업을 완료했다. 1982년 11월 세계에서 처음으로 완벽한 IBM 호환 PC인 컴팩 포터블이 나오면서 폭발적인 인기를 얻었고 소비자에게 IBM이 만드는 IBM PC보다 호환성이 더 높다는 평가를 끌어냈다. 캐니언은 컴팩 포터블이 이런 높은 호환성을 낸 이유로 IBM PC에서 실행되는 모든 소프트웨어를 움직일 수 있는 머신을 만들겠다는 한 가지 목표를 향해 무턱대고 달려든 결과라면서 모두 IBM 호환 PC를 목표로 경쟁에 뛰어들었지만 호환성을 확보하지 못하고 있었다고 설명했다. 컴팩이 한 가지 최초라는 칭호를 얻을 자리가 남아 있었다는 것. 바로 완벽하게 호환되는 첫 컴퓨터라는 것이다. 컴팩 포터블은 제품명처럼 휴대 가능한 컴퓨터라는 장점도 있었다. TI에서 독립하려던 캐니언은 휴대용 컴퓨터 구상에 대한 투자를 거절당했지만 이 구상은 컴팩의 첫 제품인 컴팩 포터블에 구현됐다. 컴팩 포터블의 인기는 엄청났다. 첫 해 5만 3,000대를 팔아 111만 달러에 달하는 매출을 기록했다. IBM도 휴대용 컴퓨터인 IBM 포터블 PC(IBM Portable Personal Computer)를 내놨지만 컴팩 포터블에는 미치지 못했다. 컴팩 포터블은 결국 IBM 포터블 PC보다 10배에 달하는 판매량을 기록하게 됐다. 관련 내용은 이곳( http://www.internethistorypodcast.com/2014/05/the-incredible-true-story-behind-amcs-halt-and-catch-fire-how-compaq-cloned-ibm-and-created-an-empire/ )에서 확인할 수 있다.
Comment
Suggested
Recent
Cards you may also be interested in
코딩과 아두이노의 찰떡궁합 Ep-27
안녕하세요?^^ 에듀아이 입니다^^ 오랜만에 다시 뵙게되네요...바쁜일로인해 한동안 뜸했네요^^;; 오늘은 아두이노와 블루투스 모듈을 연결해 스마트폰과 통신하는 방법을 알아보도록 하겠니다. 아두이노 보드와 블루투스를 지원하는 모듈만 있으면 스마트폰과 연결해 통신하는 기능을 구현할 수 있으며, 더 나아가 블루투스로 제어하는 전등, 블루투스 RC카 등을 만들 수 있습니다. 아두이노에 연결하는 블루투스 모듈은 여러가지가 있지만 대표적으로 아래의 모듈이 많이 사용됩니다. 블루투스는 2.0 버전을 지원하는 모듈과 블루투스 4.0을 지원하는 버전으로 구분됩니다. 블루투스 2.0과 4.0의 가장 큰 차이는 통신 거리와 전력 소모량에 있습니다. 블루투스 2.0 버전은 상대적으로 전송 거리가 짧고 전력 소모량이 많습니다. 이에 반해 블루투스 4.0은 전송거리가 더 길고 전력 소모량도 적은 편입니다. 블루투스 4.0 모듈은 블루투스 2.0 모듈에 비해 가격이 조금더 비싸기 때문에 아두이노 프로젝트에서는 대부분 HC-06을 많이 사용합니다. 하지만 HC-06은 아이폰을 지원하지 않아 아이폰을 사용하시는 분들은 AT-09나 HM-10을 이용하셔야 합니다. 이제 프로젝트에 필요한 부품을 알아보겠습니다. 아두이노 우노(Uno) 보드가 필요하구요~ 블루투스 통신에 사용할 모듈은 가장 많이 사용하고 저렴한 HC-06을 이용하겠습니다. 아두이노 보드와 블루투스 모듈(HC-06)은 아래와 같이 연결해주시면 됩니다. 연결이 완료되면 아두이노 IDE를 실행해 아래 코드를 입력합니다.  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ #include <SoftwareSerial.h> SoftwareSerial BTSerial(2, 3); void setup() { Serial.begin(9600); Serial.println("Hello!"); BTSerial.begin(9600); void loop() { if (BTSerial.available()) { Serial.write(BTSerial.read()); } if (Serial.available()) { BTSerial.write(Serial.read()); }  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 위 코드에 대해 설명드리겠습니다. #include <SoftwareSerial.h> SoftwareSerial.h 파일을 로드하는 명령입니다. 소프트웨어 시리얼을 사용하는 경우에 이 파일을 로드해야 합니다. 소프트웨어 시리얼은 디지털 0, 1번이 아닌 다른 핀에 블루투스 모듈을 연결하는 것을 말합니다. 디지털 0, 1번에 연결하면 하드웨어 시리얼로 통신을 하게되는데 문제는 컴퓨터에 연결된 상태에서는 USB 포트가 디지털 0, 1번을 통해 데이터를 주고 받기 때문에 사용할 수 없습니다. 그래서 아두이노에서는 2~13번 핀 중 원하는 핀에 연결하고 사용할 수 있도록 지원합니다. 이때는 SoftwareSerial.h 파일을 로드해야 합니다. SoftwareSerial BTSerial(2, 3); 소프트웨어 시리얼로 통신하기 위해 이름과 송신핀과 수신핀번호를 지정하는 명령입니다. Serial.begin(9600); BTSerial.begin(9600); 시리얼 모니터의 통신 속도와 블루투스 통신의 속도를 설정한 것입니다. 이 두가지의 속도는 같아야합니다. 다르면 정상적인 통신을 할 수 없게됩니다. if (BTSerial.available()) { Serial.write(BTSerial.read()); } 만약 블루투스로 아두이노에 전송된 데이터가 있다면 해당 데이터를 읽어 시리얼 모니터에 출력하는 명령입니다. 스마트폰에서 입력한 내용이 있다면 해당 내용을 아두이노의 시리얼 모니터에 나타내줍니다. if (Serial.available()) { BTSerial.write(Serial.read()); } 만약 시리얼 모니터의 입력이 있다면 해당 내용을 블루투스를 통해 전송하는 명령어입니다. 이정도로 코드 설명은 마무리하고 이제 코드를 업로드 합니다. 아두이노가 연결된 컴퓨터의 아두이노 IDE 프로그램 오른쪽 상단 [시리얼 모니터]를 클릭해 엽니다. 스마트폰에서 페어링을 진행해야 합니다. 스마트폰의 화면을 켠 후 [설정]에 들어가 [블루투스] 설정 화면으로 들어갑니다. 블루투스를 사용 모드로 스위치를 켜면 'HC-06'이라는 아두이노에 연결한 블루투스 모듈이 나타납니다. 해당 모듈을 터치합니다. 페어링을 위해 암호를 입력하는 화면이 나오면 '1234'를 입력합니다. 페어링이 완료되면 '등록된 디바이스' 항목에 'HC-06'이 나타납니다. 이제 스마트폰의 [Play 스토어]를 실행해 검색창에 [Arduino Bluetooth Controller]를 입력하고 검색합니다. 아래 그림과 같은 앱을 설치합니다. 앱 설치가 완료되면 앱을 실행합니다. 페어링된 기기 목록이 나타납니다. 'HC-06'을 터치합니다. 모드는 [Terminal Mode]를 터치합니다. 스마트폰과 아두이노에 연결된 블루투스 모듈이 정상적으로 연결이되면 HC-06 모듈의 붉은색 LED가 깜박임을 멈추고 계속 켜져있는 상태가 됩니다.(깜박거림=연결대기상태, 켜진상태=연결됨) 이제 스마트폰의 터미널 모드의 입력란에 아두이노에게 보낼 메시지를 입력합니다. 컴퓨터에 실행한 시리얼 모니터에 스마트폰에서 입력한 메시지가 나타납니다. 시리얼 모니터에서 입력한 내용도 스마트폰으로 보낼 수 있습니다. 시리얼 모니터 상단 입력란에 보내고싶은 메시지를 입력 후 [전송]을 클릭합니다. 스마트폰에 메시지가 전송된것을 확인할 수 있습니다. 이 방법을 조금만 응용하면 블루투스를 통해 LED를 켜고 끄거나 센서에서 측정된 값을 스마트폰으로 전송할 수 있게됩니다. 다음 시간에는 블루투스로 LED를 켜고 끄는 방법을 알아보겠습니다. 오늘은 여기까지 하도록 하겠습니다. 감사합니다. ▶상상을 현실로 만드는 아두이노(Arduino)      ■  박경진 지음 / 에듀아이 출판 ■   알라딘, Yes24, 교보문고, 영풍문고, 반디앤루니스, 인터파크에서 구입가능합니다.      ■  아두이노 초보자 책으로 추천합니다. [책에서 다루는 내용]     ■ 소프트웨어 코딩을 이해하고 아두이노에 업로드/테스트하는 방법          ■ 서서히 색상이 그라데이션 형태로 바뀌는 LED 무드등 만들기         ■ 리드 스위치 모듈로 창문이나 현관 문 열림 감지하기         ■ 토양 수분 센서로 화분의 수분 상태를 측정해 물 공급시기 체크하기         ■ 비접촉식 온도 센서로 비접촉 체온 측정기 만들기         ■ 이 세상 하나뿐인 우리집 미세 먼지 측정기 만들기         ■ 주변 밝기를 측정해 자동으로 켜지고 꺼지는 스마트 전등(가로등) 만들기        ■ 거리를 측정하는 초음파 센서를 이용해 자동차 후방 감지기 만들기         ■ 일정한 거리내의 사람을 인식해 자동으로 열리고 닫히는 스마트 휴지통 만들기         ■ 스마트폰 블루투스로 연결해 제어하는 RC 카 만들기         ■ 집밖에서 스마트폰으로 집안의 사물인터넷 기기 제어    [이 책의 대상 독자]     ■ 아두이노를 가장 쉽게 접근하고, 활용하고자 하는 독자        ■ 소프트웨어 교육 의무화로 소프트웨어 코딩을 배우고 싶은 학생         ■ 사물인터넷 제품을 만들어 스마트 홈을 구현하고 싶은 독자         ■ 어렸을 때 생각했거나 상상했던 제품을 직접 만들어보고 싶은 독자         ■ 소프트웨어와 하드웨어의 상관 관계를 이해하고 제어하고 싶은 독자         ■ 로봇, 드론 등의 제품 구현을 위한 기본 지식을 습득하고자 하는 독자    아두이노 초보자분들이 가장 쉽게 배울수 있는 책입니다. 추천합니다^^!! 끝까지 읽어주셔서 고맙습니다^^ 다음 에피소드에서 또 뵙겠습니다^^ #코딩추천책 #코딩책추천 #아두이노책 #아두이노강좌 #아두이노책추천 #아두이노추천도서 #코딩책 #사물인터넷 #사물인터넷책추천 #블루투스 #bluetooth #블루투스통신하기
일반인들은 잘 모르는 대한미국의 대량 학살사건.jpg
생각보다 이걸 모르는 사람들이 꽤 많더군요. 보도연맹 학살사건 : 6.25 전쟁 중 이승만 정부가 조직적으로 벌인 최대 규모의 자국 민간인 대량 학살 사건 당시 공무원들은 보도연맹 가입에 실적을 올리려고 공산주의자가 아닌 사람들까지 무리하게 가입시켰기에 실제 구성원들은 이념대결과는 무관한 경우가 많았으며, 위 만화에서 보듯 동네 이장이나 반장이 '가입하면 곡식을 준다'하여 곡식 서말이라도 받아보려고 뭔지도 모르고 가입한 노인, 부녀자들이 대다수. 이장이나 반장은 '내가 몇명을 전향시켰다'는 실적을 높이기 위해 그랬다고... 연구 자료에 따라 조금씩 다르지만, 당시 전국적으로 10만 명에서 30만 명, 혹은 그 이상의 민간인이 학살된 것으로 추정된다. 참고로 당시의 대한민국의 인구는 약 2500만 명이던 시절이다. (대한민국 전체 인구의 1/100이 죽임을 당한 것...) 참여정부 시절, 노무현 대통령이 58년 만에 최초로 국가를 대표해 당시 국가에 희생된 국민들의 유가족들에게 공식 사죄하였다. 참여정부 이전의 정권들은 이 사건을 철저히 은폐하고 금기시했다. 심지어 민간인 처형자 명단을 3급 기밀로 분류해 학자들과 유족들의 진상 규명을 방해하기까지 했다. 희생자들의 유가족들이 무죄라며 재심을 청구했고 2020년 2월 14일, 재판부는 보도연맹원들이 북한에 호응하는 등 이적행위를 했다는 증거가 없어, 범죄 증명이 없는 경우에 해당해 무죄를 선고한다고 밝혔다. 사형당한 지 70년 만이다. 이 영상 초반에 나옵니다. 참고로 이 카드 도입부의 만화를 보시면 당시 사태를 더 잘 알 수 있을 거예요. 많이 기니까 시간 있으실 때 꼭 보시길. 링크는 아래 첨부합니다.
이거는 좀 찐인듯한 귀신+미래를 보는 남자 (무엇이든 물어보살)
여자친구가 기숙사에 살아서 데려다주는데 자꾸 건물 쪽을 봄 옥상에 여자가 저렇게 고개 숙이고 보고있음 "너네 기숙사에 무슨 일 있을거 같아" 어떤 분이 자살 시도를 해서 학교에 구급차랑 경찰차 왔음 본인이 예상한건 귀신이 같이 데려가려고 물색하는 것 처럼 보였음 귀신이 보통 어떤 것 처럼 보이냐고 1단계: 필름에 뭔가 껴있는 것 처럼 불투명하게 보임 2단계: 신체의 일부분만 보여줌 (손만 또는 목아래만 보여준다던지..) 3단계: 몸 전체 그냥 뭉뚱그려서 보임 4단계: 눈이 보이는 경우 살면서 딱 2번 봤다고,, 그런 귀신은 으스스한 분위기 내면서 가라고 한다함 집안에 이런 귀신 볼 수 있는 사람이 있나 싶어서 물어봄 그게 아닌거 같아서 한번 더 물어봄 외할머니가 무속인이었음 할머니를 본 적이 있어서 이게 맞겠다 싶었다함 미래가 보이는 사람도 있다함 이수근은 신기하게 진짜 안보인다고 함 서장훈은 훤히 보임ㅋㅋㅋㅋ 서장훈은 2개가 딱 보이는데 귀신은 아닌 듯함 2월 즈음에 영상을 보고 서장훈이 아플거 같아서 사연신청을 한 것도 있음 4월에 디스크 터졌고 지금도 엄청 아픈 상태라함 (자기들이 왜 더 놀래ㅋㅋㅋㅋㅋ) 이쪽에서 계속 보였다 사라졌다 했다함 끄아 빨리 치우자.. 주변 사람들이 힘들어 보여서 그렇지 자기는 시달리거나 힘들진 않다고 함 그리고 둘이 사이도 엄청 좋아보이고ㅋㅋㅋㅋㅋ (그러나 남자분은 곧 군대....) 이 분은 뭔가 구체적이고 찐처럼 설명해서 몰입감이 쩔었음ㅋㅋㅋㅋㅋㅋㅋ + 영상으로 보는거 ㅊㅊ https://tv.naver.com/v/14071254 https://tv.naver.com/v/14071241
초보자를 위한 자급제폰 구매 가이드
혹시 폰 바꿀 계획이 있는 빙글러를 위한 자급제폰 구매 가이드 나도 언젠가 폰 바꿀 때 써먹어야지 1. 자급제폰이란?? 말 그대로 '휴대폰 그 자체를 사는 것'이 자급제폰 보통은 휴대폰을 살 때 통신사 직영점 or 대리점에 가서 요금제와 결합해서 약정으로 사는데 삼성 온라인몰이나 애플 스토어에서 휴대폰만 사는 방식! 2. 휴대폰이 비싸서 약정 걸어서 사는건데 직접 사는거 부담스럽지 않나요? 요즘은 신용카드사에서 24개월 or 36개월 무이자 할부를 해주는 경우가 많음! 비교하자면 일반 방식 - 24개월 할부로 구매 + 기기값과 요금을 전부 통신사에 납부(+이자!) 자급제 방식 - 24개월 할부로 구매 + 기기값은 카드사에 납부하고 요금은 통신사에 납부 자급제 방식의 좋은 점은  할부에 이자가 붙지 않기 때문에 (무이자할부의 경우) 매달 4천원에서 5천원을 아낄 수 있다는 것! 웬만한 카드사는 이런 혜택 있으니 본인이 쓰는 카드에 있나 확인해 볼 것!! 3. 자급제폰의 좋은 점 일단 짜증나는 '약정'이란게 없음  (폰을 바꾸고 싶을 때 바꿀 수 있음, 물론 기기값 할부는 내야겠지만) 3~6개월 이상의 높은 요금제를 요구하는 경우가 없음 그리고 일부 악질 폰팔이들에게 호구맞을 일이 전혀 없음 (그냥 휴대폰 기기 자체를 사는 것이기 때문에 어떻게 사든 본전) 그리고 가장 좋은게 알뜰 요금제와 시너지가 좋음 +) 굳이 알뜰 요금제로 쓰지 않더라도 기존에 쓰고 있는 대형 통신사의 요금제 선택 약정을 걸고 쓰는 것도 가능! 4. 알뜰 요금제? SKT, KT, LG 전부 알뜰 요금제가 있음 sk의 경우 세븐 모바일, cj는 헬로 모바일 등등이 그것임! 요즘 알뜰 요금제는  LTE 무제한 (10~15G 기본 제공, 다 쓸 시 하루 2G) 문자, 전화 무제한 요금제가 보통 3만원대에 책정됨 (낮은 경우 2만원대도 가능) 대형 통신사에서 6만원대 요금제가 알뜰폰에선 3만원대라는 말! 5. 결론 자급제폰 + 알뜰 요금제를 쓰면 통신비를 아낄 수 있다. 6. 자급제폰을 사면 오히려 피해를 볼 수 있는 사람 1) 휴대폰 성지 등등을 잘 알아서 보조금 받고 잘 살 수 있는 사람 2) 대형 통신사를 가족이 전부 써서 가족 결합이나 인터넷 TV 결합 등등을 쓰는 사람 3) 대형 통신사에서 주는 제휴 포인트를 알뜰하게 잘 사용하는 사람 이라면 자급제폰에 대해서 조금 고민해보는게 좋음 다만 나는 포인트 이딴거 모르고 월에 내는 요금만 낮아지면 된다 싶은 사람은 자급제폰이 좋을 수 있음! +) 그리고 자급제폰을 살 경우 통신사에서 제공하는 월납입형 휴대폰 보험에 가입하지 못할 수 있음. 이 부분은 애플케어나 삼성 모바일 케어로 커버 가능! 출처 : 도탁스 다들 흑우되지 말고 현명한 소비합시다.