본문 바로가기

반응형

공부공간/System programming

(6)
[시스템 프로그래밍 강의정리] files and directories -3 보호되어 있는 글입니다.
[시스템프로그래밍 강의정리] files and directories - 2 file, directory안에서 쓸 수 있는 명령어들을 배웠다. 명령어 모음 : access() umask() chmod() chown() link() unlink() readlink() remove() rename() 위 명령어들에 대해서 간단히 설명하시오. 설명할 수 없으면 공부해야합니다. 명령어 모음 : access() : 해당 접근 권한이 있는지 확인 umask() : 해당 권한을 뺀다 chmod() : 접근 권한바꾸기 chown() : 파일에 대한 소유주를 바꾼다 link() : 하드링크, 소프트링크 연결에 대한 명령어 unlink() : 링크 제거 (file,dir 제거까지 가능) readlink() : 링크의 path를 가져오는 명령어 remove() : 파일 제거 rename() : 파일..
[시스템 프로그래밍 강의정리] files and directories file system file system = file data + file 속성 파일 속성이란? 파일 접근권한, 사이즈, 수정시간, user/group ID, ... stat stat : 파일의 정보를 struct stat에다가 기록하는 명령어. lstat : 심볼릭 파일에 대해서 적용하는 명령어인데, 만일 적용한게 심볼릭파일이 아니면 그냥 stat처럼 적용된다. st_mode st_mode는 파일의 정보를 bit에 기록할때 그 구조체 이름이다. 파일의 타입(regular, directory, ...), 스페셜, 접근 권한에 대한 정보를 가지고 있다. file type을 외울 필요는 없지만 필요할 때마다 찾아서 보도록 한다. 마찬가지로 외울 필요 없다. permission bit는 이해하고 넘어갈 필요..
[시스템프로그래밍 강의정리] ISA와 추상화 (abstraction) ISA란? Instruction Set Architecture 의 준말 간단히 말해서 SW와 HW의 interface라고 생각하면 된다. interface를 더 쉽게 이해하면? SW와 HW의 접점. 둘이 맞닿아서 돌아갈 수 있게 기능하는것을 말한다. 그림으로써 이해하면 다음과 같다 즉, 사용자는 소프트웨어를 다루고(프로그램을 돌린다. 게임을 하거나 코딩을 하거나) 프로그램은 똑바로 돌아가기 위해서 CPU연산과 조작이 필요하다. 이 때, 중간에서 ISA가 CPU를 조작할 수 있도록 중간다리 역할을 한다. ISA 이해를 위한 추가설명 따라서 System software 개발자는 ISA를 당연히 알고있어야 한다. OS제작자는 해당 OS와 잘 매칭되는 ISA를 알아야 한다. 컴파일러 제작자는 해당 컴파일러가 사..
[시프 강의정리] unix system overview Unix는 multi-user system 이다. 따라서 시스템을 이용하기전에 user ID, user PW를 입력하고 로그인해야 이용가능하다. unix는 기본적으로 command line interface를 사용하는데 이 때 사용하는게 shell 이다. file, directory : file을 관리하기 위해 체계적인 계층적 시스템이 필요했는데 그게 바로 directory와 file들이다. ex) /home/obama : directory와 file을 둘 다 알 수 있다. 그리고 가장 최초의 /는 root/ 를 의미한다. pwd : print working directory cd : change directory cd /usr/bin : root/usr/bin 으로 이동하는데 이런 방식의 path를 절..
[UNIX] unix 간략하게 보기 UNIX의 단점 : 너무 많은 OS가 있어서 os 마다 다 다른 unix가 필요했다. 너무 복잡함. 따라서 OS의 통일화가 필요했다. 초창기에는 너무 GUI가 없어서 다루기가 어려웠음.(그러나 이후에 MIT에서 GUI있는 UNIX를 개발) 그렇다면 UNIX의 장점은 무엇일까? 오픈시스템(오픈소스) 간단하다 - data, device, socket, process등 모든것을 그냥 각각 하나의 파일로 취급했다. 이식성이 좋다 - 고차원언어(c언어)로 작성되어 재사용성, 이식성이 좋았다. 많은 기능 지원 - 멀티태스킹, 멀티프로세싱, 서버-클라이언트 등 이런 장점들을 포괄하고, 단점을 보완하기 위해 나온것이 바로 Linux ! Linux ? UNIX같이 생긴 os open system, open source ..

반응형