내가만약 OS를 만든다면

ihavnoid의 이미지

자... 여러분들의 상상의 나래를 펼쳐보는 것은 어떨까요?

여러분들은 한 엄청난 큰 기업의 Head developer입니다. 밑에 부려먹을 수 있는 개발자가 수천명쯤 있고, OS를 하나 만들도록 특명이 떨어졌습니다..

과연 어떤 식으로 구성을 하자는 생각이 드시는지요? Filesystem은 어떤식으로? 스케줄러는 어떠어떠한 방법으로 구성을 하고(scheduler가 없다고요? -_-), OS 자체에 어떤 기능들을 집어넣었으면 좋겠으며, Virtual memory는 어떤 식으로 관리를 하고, 네트워크는 무슨무슨 기능들을 어떻게 수용하며, 시스템 관리는 어떤 식으로 하는 것이 좋을까요? authentication이나 security는 어떻게 할 것이며, device driver interface나 system call(API)는 어떤 식으로 구성할까요? 생각해야 할 게 매우 많겠죠?

다소 엽기적인 상상들이 나올 수도 있고, 실현가능성이 거의 없는 내용도 나올 수 있겠지만 상상만 해보는 것도 재미있을 것 같군요.

으음 저같은 경우에는 virtual machine을 OS core에 내장시켜서 아예 모든 application이 VM code로 되어있도록 하는 것도 재미있을 듯 하네요. 뭐 이미 VM 기술도 충분히 발전하였고 cpu power도 개인 이용자에게는 어느정도 남는 자원이 되었고.... 괜찮지 않을까요? 한단계 더 나아가, kernel 자체에 script language parsing을 지원해서 모든 애플리케이션을 script로 짜도록 하는 것은요?

그냥 여러분들의 재미있는 상상들을 들어보고 싶어서 올려봅니다. 뭐 꼭 high-performance server용 OS나 가정용 OS뿐만 아니라, embedded OS 같은 것들도 '이렇게 만들면 좋겠다'는 걸 생각해 봤으면 좋겠습니다....

익명 사용자의 이미지

OS가 꼭 필요하나요? ^^;
하드웨어마다 다 틀린데..범용OS보다는
하드웨어에 최적화된 시스템 프로그램이 낫지 않을까요? ㅋㅋㅋ

아슈...

익명 사용자의 이미지

음 ,os 를 만드다고라..
나는 무수히 많은 인터페이스만 가지고 있는 os를 만들고 싶습니다.앞으로 p2p 환경이 대세일거라는
기대하에 원하는 기능 은 신경망같은 인터페이스가
어디선가 끌어오기만 하면 되고 나의 os는 그의
라우팅만 제시하여 주는 것입니다.
제 소견으로 이세상에 왠만한 기능의 어플은 있는것같은데 서로 공유하는 매커니즘이 빈약하거든요.
나의 os는 마치 고지능화된 아바타처럼 나만의 몇가지
캐랙터를 가지고 사이버공간을 배회하는거죠.
나는 또다른 os와 겹쳐 스치는것만 가지고도 원한다면
주고 받을수 있습니다.당연히 나는 내가 원하는 기능에따라 점점더 전문화가 되어가는거죠.
단, 나의 os는 라우팅정보만 있습니다.직접내가
구현하고 싶은것은 (보유하고자 하는기능)은
매우 엄격한 규칙에의하여 구현하여야 하며
왠만하면 다른데 있는것을 파이프라인화하여
활용하도록 유도하면 되죠.
이 얼토당토않은 os 를 구현하기위해선....

1) 나의 desktop 과 os 를 가능하면 멀리
분리시켜 놓아야 하며

2) ip 보다 훨씬 고급스런 Identification 구현

3) ultra(?) daemon 구현

4) super ultra relation DB 에 의한
원하는 기능 providing & RMI(Remote Method
Invocation?)

입니다.

더 망가지기전에 .. 이만 줄입니다.

익명 사용자의 이미지

dfx

익명 사용자의 이미지

으흐흐...

O/S?

o Yes.....

슈퍼에 가면 잇씁돠...^^*

-쓩-

현실적인 os는 이미 나와있고...거것들이 특별한 변화를 보일거 같지 않네욤.... 뜹.....

난...리눅스를 만들어서 윈도우처럼 비공개하구 싶은데염....ㅋㅋㅋ ^^*

익명 사용자의 이미지

갑자기 초천재가 생각나는 이유가 뭘까??

익명 사용자의 이미지

내가 OS를 안만드는것이 도와주는거다.......ㅎㅎㅎㅎ

익명 사용자의 이미지

저는 하드웨어 드라이버를 필요로 하지 않는 OS를 만들겠습니다.
USB나 PCI슬롯에 장치가 꽃아지면, 기능을 자동으로 확인, 적절한 드라이버를 즉석제작후 드라이버를 OS에 동적으로 탑제하죠.

OS가 드라이버를 만드는 도중에 도통 용도가 뭔지 모르겠으면, 너무 자체 제작이 힘들다고 OS가 판단한다면,

사용자한테도 기기 용도를 좀 물어오고, 인터넷도 검색해서, MS의 드라이버등 타OS의 드라이버를 검토, 모방해서 조금 변형된 임시 드라이버 제작 탑제.

OS운영중 장치 드라이버의 사용률과 주로 사용되는 기능을 검토, 계속적인 드라이버 자동 최적화...

OS동작중에 사용자의 사용패턴과 빈도와 요구사항을 지속적으로 확인하여, 사용자에 알맞게 지속적인 페이저와 스캐줄러 최적화.

OS kernel도 인터넷에서 CPU 관련 분석이나 새로운 최적화 알고리즘을 자동 검토 지속적으로 최적화 코드생성, OS업그레이드.

설치시부터 자동으로, CPU와 메모리, HDD, 마더보드를 기능을 고려하며, 최적화적 드라이버 코드를 생성 최적화적 OS배치로 설치. 자동으로 주기적인 OS배치 최적화.

게임도 설치프로그램만 지시하면 XP용이든 리눅스용이든, 자동으로 설치할 프로그램의 최적화수행후 OS에 설치, 응용프로그램도 OS자체적으로 지속적인 Native code 최적화

만약에, 지금 이런 OS를 사용중이라면, 내부형태가 kernel은 리눅스, 하드웨어 드라이버는 DOS용 드라이버수준, GUI는 아쿠아, 네트윅 드라이브는 FreeBSD형태, OS의 내부처리 방식은 BeOS 스레드, Bug관리는 Debian, 인터넷시작페이지는 (다음+MSN+Yahoo...)가 최적화된 상태, 게임지원은 DirectX형태식으로 자동 진화된 형태겠죠?

-> 한마디로 하드웨어와 프로그램과 사용자의 희망사항에 자동으로 지속적인 최적화가 자가진단식으로 이루어지는 OS를 만들고 싶습니다. 최적화는 Native assembly code수준으로 이루어지고 말이죠.
(수퍼맨같은 OS 프로그래머 한명을 소프트웨어적으로 구현하면 이런 OS가 되겠군요.)

익명 사용자의 이미지

이야 내가 마지막이다,..

이 사람들아 말만 하지 말구 만들자구 OS

ihavnoid의 이미지

며칠만에 와 보니 리플이 엄청나게 많이 달렸군요...^^;;
여러분들께 매우매우 감사합니다.... ^^;;

저 역시 여기에 글을 올리고 생각을 좀 해봤습니다....
뭐 대충 이런 형태의 생각이 들더군요....

1. 모든 애플리케이션 (실행파일)은 VM code로 돌아간다.

2. 모든 shared 라이브러리는 native or VM code로 돌아간다.

3. 모든 shared 라이브러리는 하위호환성을 갖는다.

4. 모든 OS에서 제공하는 라이브러리는 자동업데이트 기능을 갖고, 부팅시마다 업그레이드가 된다. 등록되어있는 3rd party의 라이브러리 역시 부팅시마다 업그레이드가 된다. 물론 이들 라이브러리 업데이트시에는 gpg(혹은 다른 signature 알고리즘)을 이용하여서 spoofing에 대처한다.

5. 모든 드라이버 역시 native 라이브러리 형태로 커널에서 호출한다. 드라이버들은 kernel mode에서 호출되고, 이는 user mode에서 호출될 수 없다. (설사 호출된다 하더라도 프로세서가 user mode에서 작동하기 때문에 별 의미가 없겠다...-_-;;)

6. 모든 라이브러리는 java와 같이 class 형태가 아니라 C 라이브러리처럼 function 형태로만 저장이 된다.(말이 좀 이상한가..?? -_-;;)

7. native code중 user mode에서 작동하는 라이브러리들을 위해서 system call들도 만들어야 할텐데.... system call은 가능한 한 가짓수를 줄이는 대신 다른 라이브러리나 daemon(service?)을 call하는 형태로 작동을 할 수 있도록 한다. 즉 아주 가벼운 마이크로커널 형태의 커널을 구성한다. 뭐 service라고 하면 filesystem, display(GUI), sound, TCP/IP, registry, syslog, JIT 머 이정도밖에 생각이 안 나는군요....

8. 물론 system library에는 posix릴 지원한다. 즉, posix를 컴파일해서 VM code가 나오도록 하는 방법을 쓰면 되겠다.

9. 물론 개발도구에는 VM을 target으로 하는 C, C++ 등등 컴파일러가 있어야 겠고, VM assembler 역시 있어야겠다.

10. 물론 high-performance를 위해서 VM code를 JIT compiling 할 수도 있겠다. 이 JIT 컴파일 결과 역시 caching될 수 있겠다. (caching된 결과는 시스템 폴더 어딘가에 잘 저장이 된다...-_-;;)

11. filesystem은 당연히 journaling. filesystem service는 파티션마다 하나씩 띄우는 형태로 작동. (한 파일시스템이 죽어도 커널 전체는 안 죽음.. 물론 루트 파티션의 버그에 의해서 커널패닉이 뜬다면...=_=대책없음)

12. GUI는 독자적인 걸 써도 되겠고... 머 KDE같이 이쁜 데스크탑을 포팅해서 써도 되겠고... ^^;; 아니면 많은 분들이 제안하신 3D desktop도 괜찮겠고...^^ 쉽게 pluggable하도록 하는 것도 괜찮겠음...

13. 많은 종류의 CPU로 포팅을 열씨미 한다...^^

14. 유닉스처럼 사용자 단위+그룹 단위의 보안 관리를 한다. 여기에 NT 계열처럼 access table 같은 것을 만들어서 '누구는 이걸 할 수 있고, 누구는 이걸 못하고, 그 이외에는 이런것을 할 수 있고... ' 식으로도 할 수 있게 한다....

15. root 기능을 세분화한다. 즉, 하나의 root가 뚫렸다고 해서 서버 전체의 통제권한이 넘어가는 것이 아니도록 한다. 일단 네트워크가 연결되고 나서는 유닉스 형태의 '전지전능한 루트'는 존재하지 않는다. 하드웨어 device를 직접 만질 수 있는 것은 네트워크가 연결되기 전에 떠 있던 service 뿐이다. 사용자를 추가/삭제할 수 있는 root, service를 띄우거나 죽이거나 부팅시 띄울 서비스 설정을 바꿀 수 있는 root, 바이너리를 새로 설치/삭제할 수 있는 root, 일반이용자의 process를 마구 죽일 수 있는 root, 등등.... 만일 하드웨어를 직접 만지거나 device를 설정하려면 부팅시 single user mode로 접속해야만 할 수 있다..
게다가 system halt을 하려면 최소한 3개의 루트 id로부터 shutdown 명령이 떨어져야 한다...^^;; 머 이런게 귀찮다면 설치시 기존의 '전지전능루트'로 설정을 할 수도 있고, 그것도 귀찮다면 아예 single user mode로도 설정할 수 있겠다. 이는 게으른 사용자들을 위한 배려이다... (사실 데스크탑 이용자들은 그냥 single user mode가 젤 속편할듯)

머 기타등등... 나머지는 당장은 생각이 안 나는군요....^^

Consider the ravens: for they neither sow nor reap; which neither have storehouse nor barn; and God feedeth them: how much more are ye better than the fowls?
Luke 12:24

익명 사용자의 이미지

VM code를 쓴다고 하셨는데

VM code를 쓰는 이유에 대해서는 아무런 말씀이 없네요..ㅡ.ㅡ;ihavnoid

ihavnoid의 이미지

아웅... 이거 매번 로그인하기 귀찮아서 원...-_-;;
로그인을 해도 초기화면이 아니라 현재화면으로 할 수 있도록 수정이 되었으면 좋겠습니다... ^^;;

VM 코드를 생각한 이유는 주로 portability입니다.
어차피 vm 코드의 speed는 프로세서들이 많이 클럭수가 올라감에 따라서 일반적인 애플리케이션이라면 큰 의미가 없을 것입니다.

속도가 매우 critical한 것이라면 jit를 이용하면 될 것입니다. 그렇기 때문에 virtual machine의 assembly language 역시 아주 일반적인 processor들의 instruction을 닮도록 구성을 해야겠죠. java 같은 경우에는 레지스터 없이 stack에 모든 걸 연산하는 것 같았는데... 가상의 32-bit register 16개 정도를 두고, 이들 가상의 register에서 연산을 하도록 하는 방법이 괜찮을 듯 하군요.

물론 jit 엔진은 i386 같은 플랫폼에서 작동하도록 하려면 register를 몽땅 reallocate해야 하는 사태가 벌어지겠군요... -_-;; 그러나 이 역시 충분히 가능한 일이라 생각됩니다.

이렇게 register를 reallocate해야 한다는 것 정도를 제외하고는 대부분의 instruction을 일반적인 프로세서의 instruction으로 1:1 혹은 1:다수로 치환할 수 있도록 instruction set을 구성한다면, 괜찮을 지 모르겠군요.

어쩌면 이게 지금처럼 온갖 extension이 난무하는 cpu 시장에서 역시 도움이 될지 모르겠군요.. 예를들어 업체 입장에서는 아직도 i386 instruction을 기준으로 컴파일을 해서 냅니다. (모든 프로그램들이 그런 것은 아니지만, 상당수는 그렇겠죠) 어떤 사용자가 athlon을 갖고 있다고 해서 athlon의 파이프라인에 적합한 바이너리를 만들어서 출시할 수는 없는 거죠. 그게 pentium4에서는 더 느릴 지, 아니면 아예 지원되지도 않을 지 알수 없는 일이니깐요. 결국 neutral한 i386으로 컴파일을 하게 되겠죠. 물론 어떤 경우에는 각 아키텍쳐별로 바이너리를 따로 제작을 하기도 하지만요. 그렇지만, 하나의 VM 코드로 들어있다면, 이를 돌리는 프로세서에 따라서 더 유리하게 optimize할 수 있을 것입니다.

결국, 일반적인 프로그램에서는 그냥 버추얼 코드를 이용하고, 심하게 access되는 코드는 jit로 컴파일해서 더 빠르게 이용하고... 그게 목적입니다.
(jit 덕택에 메모리 소모가 극심하겠지만, 이미 무쟈게 내려간 램값을 감안한다면 아주 큰 부담은 아닐 듯 합니다. 뭐 256에서도 잘 작동하고 512메가 정도 장착하면 충분하겠죠...)

Consider the ravens: for they neither sow nor reap; which neither have storehouse nor barn; and God feedeth them: how much more are ye better than the fowls?
Luke 12:24

서지원_의 이미지

os랑 vm은 별개입니다. vm은 os에서 제공해야하는 어떤 것은 - 최소한 현재로서는 - 아닌 것 같군요. vm은 os라는 layer 위에서 또 하나의 layer를 제공하는 어떤 것이니까요.
한 layer에서 너무 많은 일을 하려는 것은 별로 좋지 않다고 개인적으로 생각합니다.

이승현의 이미지

기본적으로는..

ㄱ.데스크탑 환경으로 사용하려는 사람에게는..
윈도우 98정도의 편의성을 가진 모드
이모드에서는 윈도위 만큼만 설정하면 모든걸 쓸수 있다

ㄴ.서버용으로 세팅하려는 사람에게는
리눅스의 전문 서버기능 제공

ㄷ.유닉스/윈도우즈 프로그램을 os 상에서 모두 지원
수정없이 모든 application을 사용 할 수 있다.

ㄹ.파란 화면은 없다. 노랗게 해주마

ㅁ.BeOS 수준의 멀티미디어 지원

출시 예정일 앞으로 2030년 월드컵 목표로 기인열전을 방불케 하는 개발 을 하고 있음.

추신: 기다릴분은 기다리기 바랍니다.

리눅스보다 안정적인 프로그램이 될테니 두고 보싶시염..

추신2: 상기 프로젝트는 언제든 드롭될수 있음을 알려 드립니다.

김현욱의 이미지

일단 프로그래머들에게 첫번째 오더를 ...

" 자! 일단 xp 하고 똑같이 한번 만들어봐!!"
...
.
.
"다했으면 유닉스도 한번해봐!!"
.
.
*^^*

익명 사용자의 이미지

Rogue게임만 동작하는 서버는 어떨지..

하드웨어는.. 램 1G에.. CPU하나 쑤셔넣고..
렌만 달랑.. NanoWit1 ^^;; 보드같은데에..

접속은.. 텔넷..만 지원..
GUI스타일은.. 클라이언트에서.. 알아서...

익명 사용자의 이미지

이젠 작은거여야 한다....

포켓 PC2002를 날려버릴만한....

포켓 시장마저 MS에 줄수는 없다...

하지만......하지만.....데스크탑이 MS인 이상...

결국은MS 와 호완하게 만들어야 한다...쳇..

익명 사용자의 이미지

요즘 만들어보려고 공부하고있는데요 역시 장난이 아닙니다.

얼마전까지 포트제어로 드라이버 만들다가요 삽질이 너무

많아서 잠시 이론을 공부하고 있는데요 유닉스 커널 정말

위대합니다. 프로그래머로 활동하시는 분들 정말 존경합니다

하드웨어 제어나 간단한 자료구조까지 어느것하나 소홀히

연구한것 없이 참으로 깔끔합니다. 제가 해봐야 얼마나

진행하겠습니까만은 유닉스 정말 아름답더군요. 꿈을 꾸라면

지금 유닉스에다가 멀티미디어를 지원하는 라이브러리를

표준으로 - 지금보다 더 다양하고 뛰어나게 덧붙이고 싶습니다

더 꿈을 꾸라면 컴맹도 배우기 쉽게하기 위해 다양한 기능을

넣고 싶지만 그러면 유닉스의 참맛을 느낄수 없겠죠? ^^

lovehis의 이미지

제가 만들고 싶은 O/S는...

일단 최소한의 CPU와 Memory에 관한 커널만 작성한 아주 작은 커널을 설계 하고 싶군요...

그 다음에 VM을 올려서 다른 모든 O/S관련 Module을 올리는...

다음은... 그 VM에 맞는 기타 O/S module을 만들고... 또 만들고...

필요한 것이 있으면.. 또 만들고.. 또 만들고 해서...
결국 같은 일을 하는 Module이 여러가지가 나왔을 때 사용자는 자기가 원한는 Module을 가지고 자기 나름은 O/S을 lego만들듯이 꾸미는 것이지요.

상업성 보다는 메니아 적인 O/S, 즉 DIY O/S가 되겟지요.
스케쥴러는 A가 만든것, I/O처리 부분은 내가 직접 만든것... 이렇게 조립해 나가다 보면.... 결국 자기 만에 O/S가 만들어지는 것이겠죠...^^*

O/S의 가격도... 기본 Kernel은 공짜... 나머지 module은..
만든 사람 마음대로...
Module하나 하나 사서 쓸수 있으니까... 경제적이고.
꼭 자기 환경에 필요한 것만 쓸수 잇으니까.. 가볍고...

그 때가 되면... O/S도 튜닝 하듯이... 이런 하드웨어에는 이런 Module를 이용하면 좋고 뭐 어쩌고.. 이런 작업 환경에는 이런 Module뭐 이런식으로... 튜닝 O/S도 나오겠지요...

튜닝 샵도 나오겠군요...

너무 추상적인가요? 역시 생각을 글로 쓰기는 힘드네요...

아무튼 제 생각은 언젠가 VM의 세상이 올것이고.. 그때 쯤이면... 이런식의 조립식 O/S를 볼 수 있는 세상이 올것이라는 것임니다.

만일 이런식에 세상이 오면... 전 O/S튜닝 샵을 열까요...
기억하세요... 그런 세상이 오면.. 기억 하세요.. 이글을...
그리고 우리 가계에 놀러오세요.. 히히..
--
늘...

익명 사용자의 이미지

os라...저라면.똑같은..cpu라도. 그 운영체제에 따라서.
그 처리속도를 바꿀수 있는 ...음...펜티엄 133이라두
어떤 os를 쓰냐에 따라서 펜티엄 포의 성능의 처리속도를
가질수 있고 또한 각각의 분야마다 그 쓰임새에 따라서
유용한 os를 만들었으면 합니다.그래서...os명은 일명
win98이나 linux나 unix가 아닌!! 굳이 예를 들자면
펜티엄포2.4 라든지 펜티엄쓰리5000이라든지..이런 이름으루 os가 나와서 본래의 cpu의 처리속도와는 상관없이(?) 어떤
os를 쓰는지에 따라서 그 성능이 달라지고 활용성두 달라졌으면 합니다. 그럼.매번 컴터 안사두 되고 차라리.그 돈으루
os를 사는...그런..꿈같은 꿈을 꾸어 보네요..^^

익명 사용자의 이미지

음성인식 OS를 만든다
이젠타이핑하는것도 귀찮다
그리고 마우스를 쓰는 OS가 아닌
무언가를 으~ 되는 OS

익명 사용자의 이미지

타이핑이 말보다 빠른데요..

생각만으로 타이핑을 대용한다고 해도 느릴것만 같네요..

한자한자 머리에서 떠올리면 굳이 빠른것 같지도 않군요..

익명 사용자의 이미지

타자의 한계 속도는 분당 50 단어, 말은 200단어입니다.

익명 사용자의 이미지

제 생각의 속도는 분당 40 이하인것 같습니다.

익명 사용자의 이미지

1. 마이크로소프트의 윈도우 98 소스 코드를 구입한다.
2. 로그인 화면을 바꾼다. 예)원더풀오에스 XP-neo
3. 프로그래머를 절반으로 줄이고, 마케팅의 귀재와 특급 변호사를 고용한다.
4. 홍보한다. 예) 윈도 XP보다 더 좋고 호환성도 대빵인 원더풀오에스 XP-neo!
5. 컴팩, 델, HP, 삼성에 윈도의 반값에 계약한다.
6. 마이크로소프트와 법정에서 처절한 싸움을 하고 흐지부지될 때까지 버틴다.

원더풀!

익명 사용자의 이미지

폐쇄 하드웨어형 OS를 만들겠습니다.
(쉽게 말해 게임기 OS)

기능은 둘째 치고 버그없는 s/w의 개발이 쉬워지겠지요.

익명 사용자의 이미지

네이티브로 자바를 지원하는 자바OS ㅡ.ㅡ;;;

최소한 자바 개발자들이나 자바 어플리케이션 서버로 쓰는데는 끝장 아닐까?

익명 사용자의 이미지

한때 Sun에서 만들다가 포기한걸로 알고 있습니다.

bxhs의 이미지

선에서는 포기했는진 몰라도..

아마 jos라고 있을껄요..

(ibm하고 sun에서 포기했는지도 확실히는 잘 모르겠는데..)

java os 프로젝트가 진행중입니다.

하긴 그러고보니 우리나라에서도 teapot인가 하는게 있는것 같던데..

jos는 gpl 인것 같고..알파 커널인가 나왔을거에요..

익명 사용자의 이미지

제가 jos 를 분석해봐서 아는데

진척도 잘 안되고 가망성이 없어보입니다.

그리고 jos 를 써야하는 이유도 없죠 그냥 리눅스 커널에서 java binary 실행하게 해주는

게 훨씬 성능이 좋습니다. 자바 실행을 빠르게 할려면 하드웨어가 받혀 줘야죠

익명 사용자의 이미지

음...제가 꿈 꾸는 운영체제는...

스스로의 뭔가를 배울 수 있는 운영체제...!

환경에 따라 필요에 따라서 운영체제 자신을

변화시켜갈 수 있는 운영체제...!

다른 새로운 운영체제를 만들 수 있는 운영체제...!

그리고 뭔가 특정 기계에서 돌아가는 그런 것이 아닌

네트웍 속에 존재하는 운영체제...!

넘 황당한가여??? 불가능하다고 생각하시나여?

그런 생각을 하는 당신의 머리에 이미 그러한

운영체제가 있답니다...^^;

gilchris의 이미지

갑자기 애니 쵸비츠가 생각나는 군요..
걸어다니는 PC, 그속에서 스스로 생각하는 OS...
갑자기 생각나서 적어봤습니다.
--
- Gilbert Chris von Muir -


--------------------------------------------------------------------------------
새로운 세상으로...

익명 사용자의 이미지

사람냄새가 물씬 풍기는 그런 OS를 만들고 싶네요.^^

꿈이겠죠.^^

그건 아마도, 사람이겠죠.^^

늦은 밤 헛소리 해봅니다.
사람이 살아가기에 좋은 세상이 더 좋은 OS가 아닐런지...

익명 사용자의 이미지

내가 만든다면..
FPGA를 CPU로 사용하고 심심할때 CPU architecture를 뜯어고치고 해도 내가 설계한 CPU에 맞춰 알아서 돌아갈 O/S같은거 하나 만들고 싶네여..
간단한 MIPS architecture를 진보시키며 자신이 CPU design할수 있다면 엄청재밌지 않을까요? ^^

그런 O/S하나 있음 좋겠당..
쿠쿠

익명 사용자의 이미지

음.. 대체 OS 라는게 뭐죠..?
예전에 제가 알던 OS는... 그냥 메모리 할당 해 주고 인터럽트 관련작업 해 주고.. 화일시스템, 디바이스 뭐 이런 아주 로우레벨 스러운 일 해 주는 그런게 OS 였는데..
요즘 OS라면.. GUI는 물론 기본적인 프로그램까지 포함하는것 같더군요..
모르겠어요.. 이제는 커널이 아니라 이것저것 패키지 까지 포함해서 이야기 하니..
다들 이야기 하시는것도 그렇고.. 음.. 예전 MSX나 Apple 같은 그런 시스템.. 이면 참 좋을텐데요..컴터도 엄청 빨라질테고..
흠..

woonggikim의 이미지

이 곳에 올리신 글들을 보면 너무나도 단순한 구조의 운영체제입니다.
그리고 여기서 상당한 오해가 있는데 여기서 언급하는 것들은 운영체제라는 전체적인 구조에서 "커널"이라는 부분을 자주 언급합니다. 그러나 사실 "커널"이라는 것은 운영체제의 상당히 중요한 부분이라는 것은 사실이나 아쉽게도 하나의 작은 부분일 따름입니다. "나는 겁장이"님께서 "요즘 OS라면..."이라는 말을 언급하셨는데, 요즘 OS 뿐만 아니라 과거의 운영체제도 GUI를 채택하였으며, UNIX라는 운영체제는 사용하는 사용자의 특성상 아직도 GUI의 발전이 더뎠습니다.
운영체제는 다음과 같은 것이 포함되어야 운영체제라는 이름을 듣지요...
1. Boot Loader
2. Device Driver
3. Kernel
4. Framework
5. UI
6. 사용자의 편의를 생각한 각종 응용 프로그램
위의 것은 상당히 기본적인 것만을 나열한 것입니다. 여기에 글을 올리신 분들은 너무 1, 2, 3 번만 언급하시는데(물론 1,2, 3 을 만드는 것조차 너무 힘들지요...), 이런 경우는 아주 열악한 사양의 임베디드 시스템에서나 통하는 얘기입니다.

Freedom

익명 사용자의 이미지

안녕하세요 저는 뭐 새로운거나 대단한걸 만들고 싶지는 않아요

우선 CPU 는 IA-64 를 타겟으로 하고 싶네요
그리고 마이크로 커널기반에..
인터페이스는 3D GUI , 2D GUI, CONSOLE 모듈이 있어서
부팅시에 마음대로 로드할수 있게..

으음 그리고 음성인식 기술같은것도 내장하고
스케쥴러/메모리관리는 괜찮은 알고리즘이 많으니 그냥 쓰고..

파일시스템은 추세인 저널링..그리고.. 램이 2기가 될테니 ㅡ.ㅡ;; 램디스크를 잘 활용해야 겠고.. MIT 에서 OORDBS 기반의 파일 시스템을 만들었다고 하던데 밑에분 말 들어보니 꼭 좋은건 아닌거 같기도 하고 ㅡ.ㅡ;;

그리고 드라이버는 WDM 과 리눅스 드라이버와 호환되게..
물론 그냥 호환되기는 힘들테니... 리눅스 드라이버 같은 경우는 리눅스에서 자료구조를 빌려와서 에뮬레이션 하면 될거 같은데.. 으음 ㅡ.ㅡ;; 물론 복잡하겠죠 ㅡ.ㅡ;;

그리고.. 아바타를 도입하고 자연어&음성처리를 해서.. 컴타 초보인 아빠가 맘대로 컴타 할수 있게 해주고

그리고 시스템 소프트웨어가 아닌 프로그램은 JVM 이나 MONO 같은 vm 에서 돌게 한다.

인력 구성은.. 석박사 학위 위주로 하고
- 이미지 프로세싱 관련
- 음성인식 관련
- 수학자 몇명
- 디자인 전공자 여러명
- 시스템 프로그래머 50명
1. FS 2. MM 3. PROCESS/THREAD 4. DRIVER 5. 호환부분(POSIX,다른 os 프로그램 실행등)

그럼 이만 초보가..

bxhs의 이미지

리눅스 프럼 스크래치라고..
컴파일해서 만드는 리눅스.
이걸 해보는 중입니다.
그런데 그 사이트에 가보면 컴파일하는법만
나온게 아니라
hint 라는 tar.bz2 압출파일이 있는데..
여기에 많은 잡동사니 팁들이 들어있읍니다.
뭐 X나 kde를 컴파일한다든지 하는 팁말이지요.

앞으로 X와 kde까지 올리고 싶은데..
아무리 생각해도 X나 kde는 윈도우의 성능을
못따라 오는것 같다는 생각이 좀 듭니다.

영화를 시디로 구워놓은게 있어서 볼려구 하면,
제컴(mmx166)에서도 윈도우는 잘 돌아가는 반면,
kde에서는 안되죠..
그러다보면, 아니 이거..cpu성능을 괜히
많이 잡아먹고, 퍼포먼스는 형편없는 것 아닌가
하는 생각이 듭니다.

그래서 제 생각에 ,
리눅스 기본시스템위에 X를 능가하는 GUI가
결합된...OS가 (이건 리눅스라고 불러야겠지만..)
현재로서 가장 이상적일것 같습니다.

무엇보다 트루타입폰트를 기본글꼴로 하고,
그래픽처리 능력이 윈도우 만큼 빠르고,
기본 api를 충실하게 제공한다면,
좋을것 같군요.

익명 사용자의 이미지

X윈도는 클라이언터 서버 구조 아닌가염??

그로면 늦지 않는가염:???

특히 KDE는 C++로 만들었다는데 ....

걍 저의 생각 일뿐입니다 ㅡㅡ;;;; 너무 원망 마시길 ㅡㅡ;;

익명 사용자의 이미지

전 셀러론 366(맞나-_-)에 램 40몇램(잘머르겠음-_- 되는대로 끼워넣다보니-_-)에
프비 깔아서 쓰는데, 그놈보다 KDE가 훨씬 빠른거 같은데요?

익명 사용자의 이미지

윈도처럼.. 쓰기 편하고.. 호환성 높은 대신 퍼렁 화면 안뜨는거.. --;;;

익명 사용자의 이미지

CD 몇만장짜리 모든 application prg가 들어있는 이름하여..

'백업CD OS' ㅋㅋㅋ

익명 사용자의 이미지

나는여 os를 하드웨어처럼 메인보드에 꼽아쓰는 운영체제. 그리구, 윈도우와 리눅스,beos,mac이 호환되는운영체제를 만들고 싶어요. 그리고 EUI를 기본으로 채택해서 컴터를 처음접해도 금방 사용할수있고, adsl도 그냥 부팅만하면 잡히는 그런체제. 그리고 하드웨어도 자기가 설치하지않고, 운영체제 자체가 해주는 그런 운영체제를 만들고 싶습니다.

익명 사용자의 이미지

이 글을 먼저 올리신 분도 그렇고 나중에 답장하시는 분들도 그렇고 기술자적 견해만 보이시는 군요..

수천명을 데리고 하나의 OS를 만들라구 한다면..

처음에 3달간은
수천명의 사람들을 5명으로 쪼개서 팀을 만들고 그리고 구조가 안서있을 경우에는 명령체계와 하는 일부터 만든 다음에
3달을 쪼개서 그사람들이 할 수 있는 역량대로 500-1000개의
프로젝트를 수주할 것입니다.
그렇게 하부 조직을 3개월동안 굴리면서.. 기획자들을 불러서
3달동안 OS를 기획해야거띠염..

먼저 시장조사부터 해야 하지 않을까요? 어떤 OS를 만들 것인지
어디에 팔 것인지 루트부터 정하기 위해서는 어떤 것을 어느
기간에 만들어야 돈이 될 것이고 앞으로의 미래를 봤을때
어느쪽 부분에 강점등을 파악해야 하는게 우선이고..

그런 설정이 끝났을 경우에 거기에 맞는 것들로 자료를 뽑은
다음에 선택을 해야 합니다. Real time을 강점으로 내세워
산업체 기계에 포팅할 것이라면 그런 기능들로 Schedule이나
File system을 구성해야 겠으며, 시스템 사양도 맞춰야지요.

그럼 대충 system사양을 어디까지 가능하게 할 것인가
어떤 기능들로 무장할 것인가. 앞으로 프로그램 개발을 위한
정책등을 세웠을 경우에 그 다음으로써 그 구성들을 어떻게
짜맞추어야 원하는 성능과 소비자의 욕구에 충족시킬 수 있을
것인지를 고심하여 먼저 맞춘 다음에 문서상으로 beta버젼을
만든 다음에 이론적으로 체험테스트를 한 후에 다시 그것을
수정을 하는 작업을 반복하고

그 다음에는 다른 프로그램 언어들이나 호환성을 위하여
지원해야 할 사항을 점검하고...

그런 후에 세부적인 프로그래밍 기획을 시작하거띠염..
Scheduler쪽으로는 어떤 것을 쓰기로 했는데.. 이 OS에서는
이점이 약간 취약하기 때문에 이런 점을 보강해야 겠다는 둥
퍼포먼스를 여기까지 지원하지 않아도 되기 때문에 기간을
맞추기 위해서 어떤어떤 것을 빼자는 둥..

그런 설정이 끝난 후에는...

3개월이나 놀리던 프로그래머들에게 각 파트별로 떼어줍니다.
그리고 중간단계의 관리자들에게 보고를 받으며
베타버젼 나오면 고칠 것들을 정리해서 고치고 고치고..

익명 사용자의 이미지

모든명령어와 내용이 한글로만 되어 있는 운영체제

왜 몽땅 영어인것이여...

익명 사용자의 이미지

글쓴이 : lamp

폰노이만 컴퓨터는 당시의 기술수준을 고려한 설계일 뿐인데 반세기의 기술진보에도 불구하고 고집한다는 것은 참으로 어리석기 짝이 없다.
os라는 것이 cpu의 논리연산기능을 조합하여 목적하는 바를 구현하는 것이라면 cpu의 설계사상의 변화로 더욱 가벼운 os를 지향할 수 있을 것이고 비휘발성 메모리를 적정한 크기로 도입한다면 하드디스크와는 무관하게 사용할 수 있을 것인데 병신들
정말 병신들이다.

오해는 마세요. 돈 많은 컴퓨터 업계의 메이저 업체들을 비방한 것이니!

익명 사용자의 이미지

당신 무식한건 충분히 알았으니 이제 그만하시죠.

익명 사용자의 이미지

먼소리 하시는 거져 -_-?

익명 사용자의 이미지

이분은 항상 말씀뿐이세요 :<
세상아 왜 나를 몰라주니!!!!

익명 사용자의 이미지

이런 병신 ...

니가 만들어 봐라.

그리고 PDA에는 비휘발성 메모리 쓴다. 근데 비휘발성 메모리로 256M 구입해봐라. 얼마나 비싼지 체험해봐라.
비휘발성 메모리가 싸고 속도가 빠르다면, 하드디스크 누가 쓰겠냐 그날 부로 쫑이지.

그리고 OS 작게 만들려고 CPU 변화시키면 CPU가 책 크기만하겠군..

익명 사용자의 이미지

글쓴이 : lamp

트랜스메타의 CPU는 기존의 것들과 조금 다르지 않나요?
그런 아이디어를 발전시키면 비휘발성 메모리 256M 이내에 작아진 OS를 완벽히 넣을 수 있을 거라 생각하는데요.
물론 기본적인 동작들은 아주 빨라질 것이니 소비자들이 어느정도의 비용을 감수하리라 생각됩니다.
그리고 이런 메모리가 수요에 부응하여 대량으로 제조되면 가격도 떨어질 것이니 별 문제 없으리라 생각..

그리고 착각하시는 것 같은데요.
저는 하드디스크를 사용하지 말자는 것이 아니라 운영체제만을 비휘발성 메모리에 저장하는 구조를 생각한 것입니다. 왜냐하면 운영체제는 어떤 프로그램을 사용하더라도 관여가 되므로 아예 메모리차원에서만 생각하자는 것이지요.

김우일의 이미지

운영체제를 rom 형태로 가지고 있는 것이 있었습니다. 예전에 삼보에서 나온 AT 컴퓨터에 DR-DOS를 내장한 적이 있습니다. 부팅 속도 빠르고, 켜면 그냥 사용할 수 있는 컴퓨터였습니다만 운영체제의 업그레이드가 안 된다는 점이 단점이었죠. 당시 만들 때에는 큰 문제가 아니었겠지만 1-2년 쓰다보면 문제가 생기는데 일반 사용자가 (그것도 운영체제가 빨리 부팅되어 가전제품처럼 쓰기를 원하는 사용자가) eeprom을 사용한다는 것은 무리죠. 1-2년 후에 change-up해주는 서비스가 그 때에는 없었습니다.

PDA류의 embedded system에서는 기본적으로 os를 내장합니다. flash memory를 이용해서 저장하고 다운로드 받아서 업그레이드가 가능합니다. 좋은 점은? 작은 운영체제를 고대로 담고 있으므로 부팅이 빠르다라는 것. 단점? 절대 큰 운영체제를 못 넣는다는 것이죠. 왜? 가격 때문에.

그러면 작은 운영체제를 쓰면 될 것 아니냐? 글쎄요. 사용자가 요구하는 기능의 범위와 한계가 점점 커지고 있습니다. 윈도는 필요없이 덩치만 큰 놈이 아니냐? 리눅스 봐라. 훨씬 작은 크기로 구현하지 않느냐. 그건 리눅스에 기능이 적어서 그렇습니다. 뭐.. 별 필요없는 기능이나 디바이스 드라이버가 윈도에 가득하지 않느냐고 할 수도 있지만 달리 말해서 사용빈도가 적지만 특정 사용자가 필요로 하는 기능이 리눅스에 구현이 되어 있지 않거나, (이건 정확히 말하면 GNU/Linux라고 해야 말이 되겠군요.) 디바이스 드라이버가 부족하다거나.

즉, 결론은 데스크탑 운영체제에서 os를 메모리에 내장하자는 주장은 당분간은 실효성이 없는 주장입니다. 서버 운영체제에서는 될 수 있지 않느냐. 네. 될 수 있습니다. 그런데 문제는 .Net과 같은 플랫폼이 표준으로(official standard가 아니라도 de facto standard가 된다면) 정착된다면 서버도 덩치가 커질 수 밖에 없습니다. 기존의 단순히 메시지 받고 메시지 보내주는 기능에서 아예 패러다임의 변화가 일어나기 때문입니다. 임베디스 시스템에서는? 당연히 여기서는 작은 운영체제가 각광받고 적어도 당분간은 위치를 구가할 겁니다.

익명 사용자의 이미지

트랜스메타는 업그레이드 가능

김우일의 이미지

아, 이런건 있습니다. 만약에 현재 형태의 데스크탑 시장이 무너지고 1996년에 맥닐리가 주창했던 NC(Network Computer) 같은 개념이 다시 등장하고 ASP가 대세가 되고 하는 일들이 일어난다면 굳이 비싼 피씨를 만들 필요없이 플레이스테이션 정도의 기계에 네트웍 기능을 추가하는 형태의 컴퓨터 형태가 나타나고 대세가 될 수도 있습니다.

이런 상황이 도래한다면 작고 기민한 운영체제의 필요성이 대두되고 운영체제의 내장이 이루어질 수도 있습니다. 하지만 적어도 현재의 흐름에서는 그럴 가능성은 별로 안 보입니다. 북미에서 아직도 초고속 통신망의 보급율이 낮고, 가정용 컴퓨터보다는 사무용 컴퓨터라는 개념이 강하고, ASP에서의 확실한 기술적/상업적 솔루션이 성공적인 데뷔를 보여주지 못했기 때문입니다.

익명 사용자의 이미지

순전히 댁 생각일 뿐
메모리에 대해서 몰라서 언급한 것이 아니니 댁 주장 유지하기 위해 억지 부리지는 마세요.

익명 사용자의 이미지

PDA가 비휘발성 메모리 때문에 느리다고 하신 것 같은데 뭣 같은 소리라고 밖에 할말이 없네요.
플래시 메모리가 좀 더 빠르지 않은가요?
오히려 PDA에 사용되는 CPU 자체의 클럭이 엄청느리지요.
그런 느린 CPU로도 원만한 사용이 가능한 것은 메모리 덕분이 아닌지?

뭘 좀 제대로 알아보시고 지껄이든지

김우일의 이미지

그러면 당신의 의견을 내어보세요.
내 주장에 어디가 잘못 되었고 그런 걸 말해주세요.
그래야 토론이 될 거 아닙니까. geekforum의 존재 이유는 의견 교환과 토론이 아니었던가요?

익명 사용자의 이미지

제 의견은 이미 나왔는데요.
기술발전에 부응하도록 아키테쳐를 변화시킴으로써 시스템의 속도를 향상시키자는 것인데 더 이상 무슨 말이 필요한지? 댁은 비용추가가 무지막심해서 실현성이 없다고 하셨으니 더 이상의 논의 진행이 불가능.
나는 운영체제 자체의 설계변화는 부수적이라 생각합니다.
지금보다 OS에서 획기적인 설계향상이 이루어진들 어느정도의 속도향상이 가능하리라 생각합니까?
오히려 다른 면에서 발전은 가능하겠지요 가령 보안이나 편의성 등.

익명 사용자의 이미지

저는 논의가 충분히 진행될 수 있는 상황이라는 것을 말씀드리고 싶습니다. 기술발전에 부응하도록 아키텍쳐를 변화시켜서 시스템의 속도를 향상시킨다. 사실 이건 굉장히 추상적인 이야기이고, 모든 연구자들이 하고 있는 일들이 이 문장에 다 포함된다고 할 수도 있겠군요. 그러니, 이건 글쓰신 분의 의견이라고 하기엔 좀 어렵지 않나하는 생각이 듭니다. 하지만, 위에 폰노이만구조와 관련해서 언급하신 부분이 있으니, 그것이 글쓰신 분의 의견이 되겠지요? 참, 이건 관련없는 얘기지만, 그 폰노이만이 당시의 기술수준을 고려해서 설계했다는 얘기, 뷰티풀 마인드 책에서 읽지 않으셨나요? 전 거기서 읽었는데, 그런 곳에서 (나올수 있는 얘기였는데, 제가 무지해서 예측을 못했습니다) 폰노이만 얘기가 나와서 참 기뻤습니다. 그런데, 거기서는 아마 폰노이만이 parallel computation을 생각했었는데, 당시의 수준으로 너무 만들기 어려울 것 같아서 그냥 sequential computation으로 했다는 얘기였는데. 뭐 하여간요.

다른 얘기로 빠졌는데, 다시 돌아가보겠습니다. 쓰신 글을 읽어보면 CPU와 비휘발성 메모리를 언급하시는데요. 그것은 역시 폰노이만 구조를 가정하고 계신 것입니다. CPU라는 것 자체가 벌써 폰노이만 구조를 가정했다고 보입니다. 그렇다면, 글쓰신 분의 의견은 폰노이만 구조를 언급하신 것과는 별로 관계없이 단지 현 폰노이만 구조에서 CPU설계를 바꿔서 가벼운 OS를 지향하고, 비휘발성 메모리를 사용하자는 것이 됩니다. 그러나 이점에 대해서는 이미 김우일님께서 자세히 잘 주장하셨습니다. 그러니, 이제는 글쓰신 분께서 김우일님의 주장을 반박하실 차례입니다. 논의가 계속 진행될 수 있는 상황일거라 보입니다.

익명 사용자의 이미지

저는 뷰티풀마인드 본적도 없고 그 영화 소재로 삼은 대상이 누군지 잘 모릅니다.
다만 전 괴델이나 하아디 바이어스트라스 같은 수학자들을 존경하고 그들의 이론이나 그들에 관한 책들은 읽어 본적이 있습니다.
저는 컴퓨터에 관한 역사는 오래전에 알고 있었지만 실제적인 내막에 대해서 공부한지는 오래되지 않았습니다.
그러면서 느낀 것이 의외로 컴퓨터기술을 발전시키는 사람들이 기술 변화의 수용에 둔감하고 창의적이지 못하다는 느낌을 받게 되었습니다.
이곳은 리눅스 관련 문서가 많아서 필요할 때 자주 들립니다. 그리고 덕분에 이 포럼에도 가끔 참여하구요. 그런데 올려진 글의 내용이 너무 보수적이고(기술적관점에서) 냉소적입니다.
저는 세부적인 사항을 구현할 만큼 전문적이지 못한 사람입니다. 그래서 창의적 개발은 삼성, 인텔, IBM 등 거대 기업의 몫이라고 생각하고 있습니다.
그러나 대체적인 아이디어는 제시할 수 있지요.
원래 CPU는 단순 연산 기능만을 고려했었는 데 점차 내부에 기능이 첨가되고 있습니다. 가령 요즘의 SSE 3D NOW 와 같은 특정 기능을 강화시킨 논리회로의 구현이나 연산 속도의 효율증대를 위한 캐시메모리의 도입등.
컴퓨터 전공하신 분은 아시겠지만 요즘은 프로그래머블한 칩도 있습니다.
폰 노이만이 지금의 컴퓨터를 구상할 당시 비휘발성 반도체 메모리가 존재하지 않았기 때문에 보조 저장 장치가 도입된 것이라 생각합니다.
(그 당시 컴퓨터는 일반인이 주 사용계층이 아니였고 기술이 문제가 되었지 돈이 문제가 되는 상황이 아니였음)
그런데 오늘날 그러한 메모리가 존재하고 CPU에 복합 연산 기능을 구현할 회로 설계능력을 확보한 시점에서 기존의 작동방식이 변화될 수 있다는 생각을 한 것입니다.
지금의 OS에서도 sticky bit를 자주 이용하는 특정 프로세서에 첨가하여 항상 메모리에 상주시킬 수 있지요. 차라리 운영체제 자체를 응용프로그램과 구별하여 모두 메모리에 상주 시킨다면 월등한 성능향상을 도모할 수 있지 않을까요?
운영체제에서 만큼은 스왑이 일어나지 않으니까요.
그리고 이것을 하기 이전에 모든 운영체제에서 반드시 포함되는 기능을 엄밀히 검토하여 CPU의 회로에 구현하여 넣는다면 처리속도는 더욱 빨라지면서 기존의 OS는 더욱 작아질 수 있습니다.

저는 폰노이만의 컴퓨터를 부정한 것이 아니라 단지 폰노이만이 기술적 한계에 맞추어서 컴퓨터 작동방식을 결정했다는 점을 이야기 한 것입니다. 그런데 기술적 진보를 수용하지 않으면서 기존의 낡은 방식을 기준으로 생각을 타진하는 것이 마음에 들지 않았지요.

그리고 어떤 분이 소프트웨어와 하드웨어의 관계를 영혼과 육체로 비유해서 글을 올린 분이 계시던데 저는 전혀 동감하지 않습니다.
여기에 대해서는 다음기회에.....

글쓴이 : lamp

김우일의 이미지

뭐가 병신이고 뭐고 말이 많네요. 거 참..

폰 노이만 구조가 아직도 주류를 이루는 것은 그가 당시의 기술수준을 고려한 computer architecture를 제안한 정도가 아니라 컴퓨터 그 자체에 대해서 하나의 철학을 갖고 있었기 때문입니다. 다시 말해서 컴퓨터의 아버지죠. 사실 노이만은 수학자로 보는 것이 타당한데 다방면에 굉장히 능했다고 합니다. 컴퓨터에 대한 연구도 그냥 곁가지로 수학 하다가 한 정도인데 말이죠.

폰 노이만의 1947년 논문은 아직도 수많은 researcher들에게 영감을 불어넣어주는 역할을 하고 있구요. 새로운 구조에 대한 시도는 물론 지난 시절 동안 있어왔지만 아직도 좀더 나은 형태의 범용 구조라는 것이 제안되기 힘든 실정입니다. 사실 얼마나 명확합니까. 명령어와 데이터를 구분하고 자료구조와 알고리즘으로 구분하는 것.

익명 사용자의 이미지

폰노이만은 수학자이면서 컴퓨터분야에 획을 그은분입니다. 2차세계대전때 암호해독을 했던분이였고... 컴퓨터가 나오기전에 몇가지 가상실험을 했던것인데, 자세한 설명은 못하겠습니다. 그분 논문이나 책을 찾아보시면 아시겠지만 폰노이만 컴퓨팅이란 "1) 모든 데이터나 명령어는 실행 이전에 반드시 메모리에 불려들어와 져야 한다. 2) 명령어는 한 번에 하나씩 실행된다는 명제에 근간을 두고 있다." 라고 설명합니다. 현재 대부분의 컴퓨터가 이런구조입니다.
한가지 언급할점은 단순히 구조문제 뿐만이 아니라 폰노이만 컴퓨팅은 튜링머신을 따르는데 튜링머신은 아주 단순한 구조입니다. 해드 한개, 자기테입 한줄 (유한함), 앞뒤로 한칸씩 움직임. 이 간단한 튜링머신이 풀수있는 문제는 컴으로도 풀수있고 애가 풀수없는 문제는 컴으로도 풀수없다는것입니다. 해드를 멀티로 늘리거나 자기테입을 무한히 늘려도 안된다는 것입니다. 즉 cpu을 멀티로 꼽거나 보조저장장치를 무한히 늘려도 안된다는 것입니다.

익명 사용자의 이미지

등신 육갑하네

익명 사용자의 이미지

원 글에다 단다는게... 죄송.

익명 사용자의 이미지

내가 OS른 만든다면 우선.... 386에서도 32비트 GUI를 원활하게 구동할수있고 지금나와있는 어떤프로그램도 다 무리없이 돌릴수있는 OS를 만들고싶다.

익명 사용자의 이미지

OS 기본은 BIOS처럼 플래시메모리 형태로 보드에 내장되어 있고 보드는 통합보드등으로 설계하겠습니다. (VGA, SOUND, LAN 등도 모두 기본 내장)
그래서 그냥 기본 패키지만 사다 전원을 넣으면 언제든지 쓸 수 있으면 좋겠고..

모든 드라이버는 각각의 하드웨어 플래시롬에 내장하는 방법을 쓸 것 같군요.
좀 더 나은 성능의 VGA카드를 사서 끼우면 VGA카드 안의 플래시메모리에 내장된 드라이버가 자동으로 인스톨되어 사용되도록 하겠습니다.
필요에 따라 플래시롬의 OS혹은 드라이버 업그레이드도 가능해야겠지요.

커널은 플래시롬에 있고 커널만으로 부팅하면 X와 터미널만 달랑 띄운 화면을 표시하도록 하고, 추가기능 -윈도 관리자 등의 GUI인터페이스- 은 하드에 저장하되 포맷 등으로 디스크가 날아갔을경우 네트워크 혹은 CDROM 에서 손쉽게 다운로드 및 설치할 수 있으면 좋겠습니다.
윈도 관리자 등의 GUI도 엄청난 유연성을 주어서 윈도 인터페이스나 맥 인터페이스, 그놈 등 모두 플러그인 모듈로 지원하도록 하고 보드와 CPU를 제외한 모든 외부 하드웨어들이 USB수준의 Plug-n-Play를 지원하도록 하고 싶군요.
물론 드라이버는 하드웨어 자체에 내장된걸 읽어다 쓰도록 해서 장치 끼우고 드라이버 CD넣고 하는 불편함을 없애도록 하구요.

OS문제 및 드라이버 문제로 사용자를 귀찮게 하지 않는다를 모토로 삼고 싶군요. :)

PC를 게임기처럼!
OS나 드라이버에 관한 문제로 사용자의 업무 효율이 떨어지지 않도록 하고 싶습니다.

익명 사용자의 이미지

저도 님과 같은 PC와 OS가 세트로 장착된 컴이 있었으면 하고 늘 생각합니다.
일반 관공서나 병원, 심지어 미용실까지도 컴의 극히 일부만 사용하면서도
시끄럽고 커다랑 깡통을 끌어안고 살아야 한다는 것은 극히 문제가 많다고
생각합니다.

산업용 표준 PC같은게 따로 있어서 본체 크기는 옛날의 MSX정도로 하고,
운영체계는 플래시 메모리에 담고, 하드대신 메모리 디스크로 대체하면
모든것이 충분해 보입니다. CPU도 방열판 정도로 충분히 열처리가 되는
제품으로 했으면 합니다.

모든 이러한 제품이 널리 보급될 수만 있다면 포맷을 하더라도 번거롭게
세팅을 다시 할 필요도 없이 디폴트 세팅만으로 모든 디바이스가 잘 동작을
하므로 컴을 모르는 사람도 쉽게 사용할 수 있고, A/S비용도 줄어들 수
있을 것 같습니다. 비디오가게 고객 관리용 컴퓨터에 3D 비디오에 5.1채널
스피커가 필요한 것은 아니거든요.

그런데 현실적으로 CPU회사가 시장을 끌고 나가고 있기 때문에
1~2년만이라도 스펙을 고정시킨다는 것이 참 어려운것이 현실입니다.
친구에게 이런 햬기를 했더니...
키보드 일체형 PC는 커피를 엎으면 쥐약이 된다는군요. 흑흑...

익명 사용자의 이미지

글쓴이 : lamp

os필요없는 cpu를 설계했으면....

익명 사용자의 이미지

그래 모든 걸 One Chip에 다 때려 넣는 것도 누군가 연구중이다.
100년뒤에는 나올거다. 죽지 말고 기다리고 있으면 볼 수 있을게다.
한 300년후에는 Matrix도 나올테니 냉동 창고에서 잠시 눈붙이고 있는 것도 좋은 방법이지.

어쨌거나 OS가 CPU속에 들어간다고 해서 OS가 아니라고는 말할 수 없다.
OS가 하드웨어의 어떤 존재로서 존재하는지 내 알바는 아니고, 어쨋고나 OS는 OS다.

영혼이 몸을 벗어나 기계속으로 들어 갔을때 그 영혼을 사람이라고 할 수 있는 가라는 것과 비슷한데, 은하철도999나 블레이드 러너, 매트릭스, 아바론등을 좀 생각하면서 봤다면 뭔가 생각이 많았으리라.

익명 사용자의 이미지

아직 인간에 있어서 영혼과 육체의 명확한 구분은 불가능한 것으로 알고 있는데요.

익명 사용자의 이미지

님의 글을 보니
갑자기 Microsoft사의 찰스 시모니가 처음으로 프로그래밍을 시작한
소련제 Ural-2라는 기기가 생각나는군요...

익명 사용자의 이미지

운영자님 Togheter 을 Together 로 바꿔 주시면 감사하겟습니다.
============================================

저는 Database 파일시스탬이라는걸 만들어서
Database 위에 Linux 를 올려 버리고 싶슴다.

그르니깐 파일 시스템이 곳 데이타베이스
파일시스탬 위에 바로 테이블 생성 콘솔 윈도에서
바로 SQL 문 사용 가능.

데이타베이스 파일 시스탬 안에서 바로 프로그램 설치
실행가능.

이런 os 를 한번 만들어 보고 싶군요.

데이타 관리하기는 탁월할것이라는 생각이 드는군요.
기술적으로 가능 한지는 모르지만.

익명 사용자의 이미지

글쎄요. 테이블 중심의 데이터베이스 자료구조보다는 트리를 기반으로 복합 다중 그래프가 가능한 파일 구조가 훨씬 강력한 게 아닌가 싶은데...

김우일의 이미지

기술적으로 가능합니다. 물론요.
실제로 Oracle을 설치할 때 database 전용 file system으로 설치가 가능한 것으로 압니다. 이렇게 해 보지는 않았지만, 이렇게 하면 속도에 이점이 있다고 하더군요.
그리고 embedded system의 os 중에 간단한 db file system이라고 할 만한 것들도 있습니다. 실효성이 있는 분야가 있다는 뜻이지요.

다만, 일반적인 용도로 쓰기에는 속도가 느립니다. 검색을 한다면 빠르겠지만 우리가 쓰는 파일 시스템 이용의 대부분은 sequential access이며 random access라 하더라도 DB를 쓴다고 특별히 나아질 부분은 그다지 없습니다.

p.s. idea에 찬물 끼얹어서 죄송합니다만..
db 전용 os나 db 서버용 파일 시스템으로는 충분히 가능한 idea입니다.

익명 사용자의 이미지

글쓴이 : dyst(kilim@dyst.net)

애인이 자유자제로 컴퓨터를 사용할 수 있게 할 수 있는 O/S

네트웍 상에 있는 모듵 컴퓨터의 O/S 를 내 O/S 로 바꿔버리는 O/S....

스타할때 맵핵킨넘 컴터 태워버리는 O/S

로보트 태권V 에 들어가는 O/S - 내가 움직이는대로 로보트가 움직이는 O/S

디폴트 바탕화면이 내 사진인 O/S ㅋㅋㅋㅋ

익명 사용자의 이미지

다른 거 다 필요 없다.
무조건 다운 안되는 os

익명 사용자의 이미지

유닉스가 너무 맘에 들어서 도저히 더 좋은 걸 생각할 수가 없다 -_-; GUI 부분만 조금 더 강화된다면 게임 끝이다.

익명 사용자의 이미지

너 진짜 겁장이구나...
나같으면 아무리 괜찬아도
나만의 무엇을 만들고 싶겟다...야
금방 예기햇듯이 gui인가 있잖아...요....
한번 만들어보면되지..요
만족보다는 겁쟁이?????
나같으면 불안해도 내거 써보고싶다...

실력이없어 열라 삽질중이지만....
...
...
...
애구 술깬다
어 위에 뭐죠?????
죄송
술한잔 먹었슴당.......
......

노승현의 이미지

OS를 어플리케이션 처럼 다루는 OS
아니면 모든 OS를 합체(?)시킬 수 있는 OS
잠깐의 단상이었슴니다.

익명 사용자의 이미지

밥,반찬 대신해주는 기계만들고 싶다.
아~! 밥상차려주고 지가 알아서 설것이 해주는 기계.
이런.... 죄송... 결혼하면 되겠네요.

익명 사용자의 이미지

헉... 여성분들이 화내실듯...

^,.^

익명 사용자의 이미지

다른 컴퓨터를 옆에 가져다 두기만 하면 지가 알아서 서로 네트웍 연결하고 분산처리 해서 속도와 기억용량이 마구 향상되는 그래서 밤에 모두들 퇴근한 사무실에서 혼자남은 사람은 DIVX 뜨는데 DVD-ROM 드라이브 작동시간 제외하고 10초면 끝나는 무한히 확장할 수 있는 OS !

그래서 남는 PC버리지 않고 차곡 차곡 모아서 열심히 모은 8086이 펜티엄 전혀 안부러워지는 자원낭비와 전산 쓰레기를 줄일 수있는 OS !

노트북도 잘 모아서 책장에 쌓아놓으면 수십개의 CPU가 협동해서 DIVX,MPEG,ASF영화를 온가족에게 각각 상영할 수 있는 막강한 가족을 위한 OS !

이런걸 맹글고 싶소이다~!

익명 사용자의 이미지

마치 클러스터링 서버같은 개념이네여... ^^;

익명 사용자의 이미지

이러면... 컴퓨터의 유기적 결합을 이용한.. 인조 생명체.. 정도 되지 않을까요. --;;;

익명 사용자의 이미지

우와...
짝짝짝............................
저도 같은 생각 인데요
예전의 씨퓨들응 어케하죠????
요즘 x86은 임베디드용으로도 몾쓰는것 같던데...
주로 arm코아로 대체...
고사양의 임베디드용으로 예전에는 x86이나 68k이었는데.....
요즘은 주로 arm코아로 대체돼는듯...

제 생각인가요?????
암튼 8086.80386,80486,,,우와
엄청난 능력인데

허기사 amd의 80486 이 40,000\ 에 비해 월등한 속도의 strong Arm 은
2x,000\,이니 ....(성능은 주관적인 사양임),,,,,,
더구나 전력 소비도 그렇고,,,
그런데 arm코어가 산업용으로 괜찮은가요?????

익명 사용자의 이미지

어떤 이유인지 모르겠지만 ARM이 점점 많이 퍼지는 것 같습니다.
CDMA핸드폰은 ARM이 점령했고
리얼타임OS들도 ARM을 최우선으로 순위로 포팅해 주고
MS의 윈CE도 초기의 MISP, SH, ARM에서 결국 ARM만을 지원한다는군요.

고사양의 프로세서라면 StrongArm을 쓰던데, 일반 ARM 코어는 속도가
빠른 편이 아닙니다. 조그만 기기내에 쿨링팬을 달수는 없으니 결국
ARM 코어가 무난한 선택이 되는 것 같습니다.
요즘 임베디드 기기도 프로그램 메모리가 몇메가씩 필요한 경우가
많으므로 32비트 어드레스 코어를 가진 프로세서가 필연적으로
선택되는 것 같습니다.

참고로 ARM은 어셈블리가 아주 특이한데
노하우를 가진 개발자의 경우 어셈으로 직접 코딩하면 매우 놀라울
정도로 뛰어난 코드를 만들 수 있습니다. 투지가 불타는 개발자라면
구미가 당기는 프로세서입니다.

익명 사용자의 이미지

설계는 영국의 arm사에서 했다지만
인텔에서 만들어서 Compaq의 iPAQ에 사용되니 쫙쫙 퍼지고 있는 것 같음.
게다가 속도도 MIPS나 기타 mobile용 CPU보다 항상 조금 더 빠르죠.
작년에나온 Compaq의 IPAQ에 Strong ARM 206MHz이 사용되던데,
이건 속도가 팬티엄 초창기 모델과 비슷한 수준이군요.

저는 150MHz의 MIPS칩을 사용하는 카시오페이아를 사용했는데,
카시오페이아가 속도는 조금 느리지만 화면이 훨씬 좋지요.
백라이트 안켜도 액정이 선명합니다.
그나저나 PDA(PocketPC)는 별로 쓸 일이 없어군요.
간신히 포켓에 들어가긴 합디다만 그것넣고 다니기는 불가능.
자세도 안나오고, 무겁고.

그리고 삼성에서 Arm 설계대로 mobile용 CPU를 만든데요.
삼성에서 Alpha Chip을 만들고 성능이 인텔 CPU보다 그다지 나은점이 없어서 피봤는데,
mobile용 CPU는 기본적으로 수요가 많아서 성공할듯 싶네요.
삼성 휴대폰에만 넣어도 그게 어딘가요...

익명 사용자의 이미지

만약나라면 전격제트작전에 나오는 제트카(킷트)를 만들겠당.,..^^ㅋㅋㅋ

익명 사용자의 이미지

만약에 내가 os를 만든다면?..

내가 os를 만든다라고 는 생각못하시는지..

말로만 세계를 정복하는자 그누가 당하랴.

미니어스 씀!

익명 사용자의 이미지

너도 겁쟁이구나...
생각이라도 해야 실천이 나오고 준비가 되지

생각부터 부정적이면 시작도 못해.....

익명 사용자의 이미지

겁쟁이라구요? :)

저는 최소한 os개발을 위해 제가 하는일은 없어도
도움이 되려고 하는사람입니다.

최소한 이렇게 말만하는 사람들관 틀리다구 이야기 하고 싶군요..

부정적이라...
말과 행동이 틀리다면..차라리 부정적인게 낮지 않을까요?
말뿐인거 보단.. 나을꺼 같은데..

미니어스 씀!

페이지