Low Level 의 Coding 을 파악을 해야 System 단위에서 Program 이 어떻게 동작하는 지? 를 알 수가 있기도 해야하는데 최근에 생각이 바뀜..
Low Level 에 대해서는 기계어와 1대 1 대응하는 어셈블리어로 구현을 한다는 것은 알고 있었는데 구체적으로는,
Inner memory 개념으로 Programming 을 하는 것이 된다고 봄. ㅇㅅㅇ..
그래서, Linux Kernel 등에 대해서도 Inner memory 수준으로 연산조합을 제한시켜서 구현을 했다는 것이 보통 컴퓨터과학 등등에서 말하는
기초언어인 C 언어의 Schema 로 구현이 되어있는 것으로 생각함.
구체적으로는 자료구조의 Pointer 를 중심으로 하는 List/Stack/Queue/Tree/Graph 등등의 핵심이 되는 자료구조 Module 에 대해서 Memory 에,
Inner Specific 한 조합의 List 으로 구현을 한다면 High Level 에서 작성하는 것도,
최적화 수준의 CODE 가 되면서 동시에 Low Level 이 되는 것같음. ㅇㅅㅇ;
컴퓨터구조를 공부하면 알겠지만 컴퓨터의 연산(Operation) 은 Memory 단위로 Hit table 의 조합으로 Pointer 로 연결되면서
산술/논리의 CPU or GPU 하드웨어 연산에 연결되는 것이기도 해서 맞는 듯함.
그래서 Java 나 Python 이 C 언어를 기초로 구현된 언어들 중 대표적인 것이라고 유명한 것같기도 한데,
일단 High 와 Low 의 차이는,
1) 하드웨어의 Memory 에서 Hit table 의 Symbol 을 생각할 필요가 없고,
2) High Level 에 나타날 수 있는 조합의 List 에 대해서 Low Level 이 조합의 List 에 대한 CODE List 를 알아서 처리해준다는 것에 있는 것같음. ㅇㅅㅇ..
결과적으로 High Level 에서 추상적인 관점이 가능한 것은,
Inner memory 단위에서 Hit table 을 High Level 에서 List 단위로 신경을 쓰지를 않아도록 감추게 된다는 것에 있는 것같음. ㅇㅅㅇ..
그래서 OS(운영체제) 의 Kernel 에 대해서는,
하드웨어의 IN/OUT 의 조합에 대해서 Stack 의 Queue 로 Table pointer 를 하드웨어의 연산기로써의 List table 에 대한 입출력의 조합에 대해서,
Symbol 으로써 관리해주는 것이 장치도구로써의 OS(운영체제) 의 의미인 것으로 보임. ㅇㅅㅇ..
그러니까 운영체제(OS) 에서는 하드웨어의 IN/OUT (입출력) 조합에 대해서 연산기로써의 Push/Pop 의 List table 을,
내부적으로 형식적 호환을 지원을 하는 소프트웨어이기도 하고 그런 의미에서,
연산기 단위의 입출력 조합을 Symbol table 로 가지고 있어서 그것으로 부터 Stack 의 Queue 를 조합에 관해 Table pointer 를 구현한 것이
되는 것으로 보아도 괜찮을 듯 싶음.
ㅇㅅㅇ
이런건 블로그에 쓰십시오
그럴까요...
게시글이 블로그 칼럼 성격이기는 한데 dcinside 에 올려보고 쌓이면 블로그 칼럼 써볼까요? 각 잡고 써야지 까지는 아닌데...
올리면 링크 ㄱ
ㅇㅅㅇ..
이새끼가 멀안다고 정치하냐?ㅋㅋ 투표만해!
?ㅇㅅㅇ
ㅎㅇㅎㅇ;