리눅스 관련 서적을 보면 어쩔 수 없이 윈도우와 비교설명을 하고 있는것이 많습니다.

최근에 읽어본 서적중에 윈도우의 GUI와 리눅스의 GUI를 비교한 리눅스 서적이 있었습니다.

어떤 책인지는 밝히지 않겠지만 대충 이런 내용이었습니다.

여기서 한가지 부연설명을 하자면 GUI는 Graphic User Interface의 약자로써 사용자의 컴퓨터 환경이 윈도우나 리눅스의 x-window처럼 그래픽적인 것을 말합니다.



그 책에는....

윈도우의 GUI는 운영체제 자체와 너무 단단하게 결합되어 있어 윈도우는 GUI를 빼고는 생각하기 어려운 운영체제가 되어버렸다.

그러나 리눅스는 쉘 환경이 기본이며 그 위에 GUI가 애플리케이션 형식으로 돌아가는 방식이기 때문에 GUI가 도중에 오류가 나서 먹통이 되더라도 실제 운영체제가 먹통이 된 것이 아니라 운영체제 위에 돌아가는 프로그램이 먹통이 된 것이기 때문에 안정성 면에서 뛰어나다.


....라고 되어있었습니다.


그닥 이의를 제기할 것은 없는 말 같지만 실제로 써보면 좀 다릅니다.

 물론 저 이론적인 말을 들어보면 안정성 면에서는 리눅스가 좀더 앞설지 모릅니다만

데스크탑용 리눅스를 사용하는 사람들에게는 별로 체감할 수 없는 것이라는 데 문제가 있습니다.

일반사용자들은 속도를 굉장히 중요시하고 그 다음이 안정성입니다.

그런데 이 속도면에서는 운영체제 위에 GUI가 돌고있는 리눅스에 비해서 윈도우의 속도가 월등히 앞선다는 것이 제 생각입니다.

실제로 저는 윈도우 비스타 sp1과 데스크탑용 우분투 리눅스를 동시에 사용하고 있는데

둘다 화면효과(윈도우의 에어로 테마 같은)를 주고 실행합니다만

CPU 사용량을 1기가로 제한했을때 버벅이는 수준이 윈도우 비스타에게 리눅스는 상대가 안됩니다. 메뉴를 띄우거나 할때도 우분투 리눅스가 훨씬 버벅임이 많을 뿐더러 마우스를 갖다댔을때 처리되는 속도도 훨씬 느립니다.

자, 과연 이래도 GUI가 분리되어있다는 것이 장점으로 작용할 수 있을까요?


 즉, 리눅스의 GUI가 분리된 수준이 윈도우의 그것보다 더 크다는 것은 자랑이 아닙니다. 오히려 처리속도를 저하시키는 요인이죠.


 리눅스의 GUI를 좀더 운영체제 자체에 밀착시켜서 빠릿빠릿하게 만든다면 처리속도면에서 개선이 이루어질것 같은데. 아직까진 그게 안되나 봅니다
Posted by The케이아스
,


리눅스에는 기본적으로 제공되는 편집기인 vi editor라는게 있습니다.

이걸로 여러가지 스크립트 파일을 만들거나 c파일을 만들기도 합니다.


리눅스를 사용하는 사람들은 vi 에디터에 익숙해질 필요가 있다고 말하는데....

물론 리눅스의 쉘을 주로 사용한다면 그게 나을지도 모르지요.

그럼에도 불구하고 vi 에디터는 내가 발로 만들어도 이거보단 인터페이스를 편하게 만들었겠다고 생각합니다.

무엇보다도 불편한 인터페이스. 현재가 입력모드인지 아닌지 표시조차 되어있지 않으며 지우는것도 4차원적인 개념을 자랑.

vi 에디터가 쓰레기라고 하는 이유는 쓰기 불편해서라는 측면도 있지만 유저친화적이지 않다는 것입니다.

전에도 언급한 적이 있지만 윈도우가 리눅스를 압도적으로 이기는건 다른 어떤것보다도 인터페이스가 쉽기 때문이죠

윈도우는 인터페이스가 직관적이며 내가 원하는 것을 바로 실행할 수 있습니다. 물론 그렇지 않은 것도 있지만 유저친화적인 것은 리눅스에 비할 바가 못되죠. 맥os는 안써봤습니다만.

그러나 리눅스는 x윈도우 덕분에 마소의 윈도우만큼의 직관적인 인터페이스를 어느정도 얻기는 했으나 프로그램을 설치함에 있어서 종속성, 연관성을 따지며 다시금 웹브라우저를 켜서 검색을 하게 만듭니다-_-

이렇게 유저에게 삽질을 강요해서는 안됩니다.

제가 언제나 주장하는 유저3초론. 유저는 원하는 결과를 3초 이내에 자기 앞에 갖다놓을 수 있는 프로그램을 선택한다는 것.

하물며 vi 에디터의 인터페이스는 삽질은 커녕 이용자로 하여금 분노를 일으키게 하는데 일조를 합니다.

전혀 user-friendly하지 않은 인터페이스. 초보자로 하여금 자신에게 익숙해지도록 강요하고 있는 무개념.

지금은 프로그램이 사용자에게 맞춰야 하는 시대이지 사용자가 프로그램에 맞춰야 하는 시대는 이미 예전에 지난지 오래입니다.

vi 에디터가 익숙해지면 어떤것보다도 편하다고요? 당연합니다. 이 세상에 익숙해져서 편하지 않을게 뭐가 있겠습니까? 그건 vi 에디터라서가 아니라 이미 거기에 길들여졌기 때문에 편한겁니다.


'진짜로 익숙해지면 편하다'고 말할 수 있는것은 한글과 소프트의 '아래아 한글'같은 것입니다.

아래아 한글은 마이크로소프트 워드에는 없는 강력한 단축키 기능을 지원합니다. 마소의 워드에도 단축키가 없는것은 아닙니다만 한글보다는 못합니다.

그러나 한글을 사용할때 반드시 단축키를 사용해야 하느냐? 그건 아닙니다. 마우스로 필요한 메뉴를 선택해서 자기가 원하는 기능을 불러다 쓸 수도 있습니다.

마우스로 클릭하기 귀찮은 사람은 단축키를 알게되고 해당 작업에 대한 속도가 점점 빨라지겠지요. 이러면서 익숙해져 가는 겁니다.

바로 이런게 '익숙해지면 편하다' 고 할 수 있는 겁니다. 즉, 초보자에게도 쉬운 인터페이스를 제공하며 좀더 빠르고 강력한 기능을 원할때 그런걸 지원해줄 수 있는 것이어야 하죠. 초보자나 숙련자 모두 사용하는데 어려움이 없어야 하는 겁니다.

그러나 vi 에디터는 유저3초론도 개무시하고 '익숙해지면 편하다'라고 할 수도 없습니다.
이건 '거지같은 인터페이스에 길들여져서 편해졌다'고 표현할수 있겠군요.


익숙해진 사람에게는 편의성을 줄지 모르지만 익숙하지 않은 사람에게 짜증만을 일으키게 하는 vi 에디터.

저는 차라리 x윈도우의 gedit를 사용하라고 권하고 싶습니다.
Posted by The케이아스
,

윈도우에서 visual c++로 작업하다가

리눅스에서 이클립스 + gcc로 작업하려니

무겁긴 무겁다.

그리고 같은 C인데도 다른 점이 몇가지 보인다.

오늘도 지뢰를 밟았는데

실행시간을 측정할때 사용해야 하는 상수 CLK_TCK가 time.h 헤더파일을 인클루드 했는데도 없다고 나오는 것이다.

ㅅㅂ이걸로 선언이 안되어 있나.....그럼 다른 걸로 선언이 되어있는건가... 싶어서 구글링을 했는데

영문사이트가 걸렸지만 이쪽계열 영어는 그냥 보면 알아들을 수 있다.

거길보니 GCC에는 CLK_TCK 상수가 CLOCKS_PER_SEC로 선언이 되어있다는 것이다.

이런 된장.......그냥 통일하지 한번 삽질했잖아...

어쨌든 바꾸고 재컴파일 하니까 이제서야 잘된다.

이 외에도 gcc가 윈도우 c와 다른점은 좀 있는데

그중에 가장 먼저 만나게 되는 것은 main 함수의 리턴값이다.

윈도우 c는 void main() 함수가 가능하지만 gcc에서는 main()함수가 반드시 int형을 리턴해야 한다.

참 쓸데없는 제한이다.

Posted by The케이아스
,