목록School (28)
Keep going
운영체제는 아주 큰 프로그램으로 개발할 때 정답은 없다. 운영체제는 시스템에 따라서 구조가 매우 다르다. 운영체제 개발할 때 좋은 방법 운영체제 개발 전 목표 세우기 사용자 측면에서 목표 - 사용하고 배우기 쉽고 안전하고 빠르면 좋음 시스템 운영에서 목표 - 구현, 설계, 유지 보수 쉽고 유연해서 쉽게 바꿀 수 있고 효율적이어야 함 목표 세우고 구현할 때 policy, mechanism 구별 하기 정책 - 무엇을 할 것인가 결정 방법 - 정책을 어떤 방법으로 구현할 것인가 정책이 정해지면 정책을 구현하는 방법은 다양하다. 정책, 방법론 구별 해놓으면 정책을 바꾸지않고 방법론을 바꾸는 것이 가능. software 공학에서 다양한 기법에 설계와 구현에 적용해야함. software engineering도 운영..
운영체제 기본 목표 - 프로그램 실행할 수 있는 환경 제공 프로그램 실행하려면 interface가 있어야 한다. 운영체제가 제공하는 기능들 서비스 사용하기 위해 사용자 Interface 사용 Command LIne (명령창) GUI 터치 스크린 Batch (옛날 이야기, 설명 거의 안함) 사용자 인터페이스를 통해 사용할 수 있는 운영체제 서비스 프로그램 실행 우리가 프로그램을 실행시킬 수 있는 서비스 프로그램 실행 되면 운영체제는 프로그램을 메인 메모리에 적재, 그 프로그램을 실행, 실행 끝나면 정리 실행하면 실행과정에서 여러가지 입출력 연산 필요 입출력 연산 제공 입출력 장치 도구, 입출력 해지 → 운영체제에 의해서 제공 파일 관련 시스템 프로그램이 실행되는 과정에서 파일의 데이터를 읽고, 쓰고, 할 ..
과거 - 파일 시스템 데이터를 파일로 관리하기 위해 파일을 생성, 수정, 검색, 삭제하는 기능을 제공하는 소프트웨어 장점 별도의 구매 비용이 들지 않는다. 단점 같은 내용의 데이터가 여러 파일에 중복 저장 파일 시스템 내에서는 응용 프로그램별로 파일을 유지, 같은 데이터가 여러 파일에 저장 될 수 있음 (데이터 중복성) 데이터가 중복되면 데이터 일관성과 데이터 무결성을 유지하기 어려움 ex) 고객 데이터 파일, 데이터 주문 파일 2개 있다고 가정 → 고객 데이터 파일의 연락처만 변경 → 데이터 일관성 유지 x ex) 고객 아이디 명명 규칙 존재 → 유요하지 않은 아이디 있는 파일 존재 → 데이터 무결성 유지 데이터 중복성 해결 방법 → 데이터 통합, 동시 공유, 보안, 회복 등 문제 남아 있음 응용 프로..
File Permissions 다른 사용자의 비밀 내용 숨기기 중요한 내용 보호 유효하지 않은 사용자의 시스템 프로그램 실행 방지 Process permission 프로세스의 사용자/그룹 접근 권한을 결정 File access permissions -r : 사용자가 파일을 읽을 수 있다. -w : 사용자가 파일을 쓸 수 있다. -x : 사용자가 파일을 실행하고 디렉토리에 들어갈 수 있다. File access categories 파일을 소유하고 있는 사용자에 대한 권한 이 파일을 소유하고 있는 그룹에 대한 권한 이 파일을 소유하는 사용자, 그룹 외에 모든 사람들에 대한 권한 Change access permission chmod command를 사용하여 파일의 permission을 변경 가능 chmod ..
디렉토리 구조 - 계층적 구조 일반적으로 사용하는 정보시스템에서도 사용 계층적 구조인 디렉토리 구조에서 정보를 찾아가기 위한 빨간색 선을 경로라고 한다. 파일 바이트의 집합 바이너리 8개 → 바이트 - 문자, 정보 표현 (여러개)→ 파일 대소문자 구별 ' - ' , ' _ ' , ' . ' 문자 허용 리눅스 시스템에서 ls command를 이용해 존재하는 파일 확인 가능 ls command -a : 숨김 파일까지 ( 파일이 .으로 시작하는) -l : 좀 더 자세한 정보 -i : 시스템 내부에서 사용하는 인덱스 넘버 확인 -F : 파일 타입 나타냄 * : execution, /:D a: symbolic link -R : 하위까지 출력 cat command 키보드를 입력하면 입력한 것이 바로 출력 '>' (..
Traditional 컴퓨터 한대 - 사람들은 터미널을 이용해 사용 지금은 네트워크 발전 웹애 의해 서버가 있고 서버보다 힘이 약한 컴퓨터들(thin clients)이 많이 연결되서 웹을 통해 어떤 서비스를 받거나 정보를 받고 또한 모바일(thin clients)로 서버에 접속하고 있다. (portal 서비스) Mobile thin clients 와 모바일의 다른점 wireless 네트워크로 연결되므로 속도가 더 느리다. 모바일은 여러가지 device가 많이 들어간다. ( gps , accerelator화, 자이스코프..) 일반적인 클라이언트와 다르게 위치 기반 서비스 가능 ios, android 분산형 여러 개 다른 컴퓨터들, 다른 운영체제를 실행하고 있는 시스템들을 네트워크로 엮어서 하나의 전체 시스..
useradd command -m : 유저 홈 디렉토리 생성 -g : default group으로, gid 그룹 지정 -G : supplementary 그룹 지정 -p : default password 정의 (사용 비추) -d : 홈디렉토리의 경로 지정 -s : user의 login shell 결정 -D useradd 의 기본 설정값 확인. 기본 설정은 /etc/default/useradd 에 있다. 유저에게 -g 를 했을 때, /etc/group에서 -g에 속한 그룹은 표시 x /etc/skel : 계정을 새로 생성하면 위에 경로에 저장되어 있는 파일이 자동으로 홈 디렉토리에 복사된다. adduser command useradd와 다르게 홈 디렉토리 자동으로 생성 option : --uid UID, -..
Login Prompt 컴퓨터 부팅 후 리눅스가 처음 로드되는 경우 화면 표시 다른 사용자가 로그 아웃 한 후 사용자 계정 및 암호 입력 필요 그래픽, 텍스트 방식 등 다양한 화면으로 표시 password 입력 받을 수 있는 창 : user prompt Shell 운영체제의 커널과 사용자 사이의 다리 역할 사용자로부터 무언가 명령 받으면, 그 명령을 해석하고 프로그램을 실행해 줌 사용자는 로그인하면 쉘을 부여 받고, 명령어를 실행할 수 있다. prompt는 $, %, > 기호가 끝에 붙어 있다. command syntax 명령에는 매개변수 (인수)가 필요 명령어들은 대소문자 구별 echo : 뒤에 주어지는 인수를 그대로 출력하는 역할 logging out 셀 종료 명령 : exit, ctrl + D 로그..