본문 바로가기

시스템5

고급언어? 저급언어? 우리가 프로그래밍을 할 때 다양한 언어를 사용한다. 개발 분야에 따라 다를 수도 있고, 같은 분야라도 쓰임새에 따라 다를 수도 있다. 그렇다면 프로그래밍 언어는 모드 똑같은 형태일까?? 아니다!!! 오늘은 프로그래밍 언어를 크게 고급 언어와 저급 언어로 설명해 보도록 하겠다! 어떤 기준으로 프로그래밍 언어를 고급 언어와 저급 언어로 분류할까?? (우리가 아는 저급, 고급이 아닙니다!!!) 나는 그 기준이 "누가 얼마나 이해하고, 읽고 ,쓰기 쉬운가" 라고 생각한다. 저급언어 저급 언어는 기계 또는 컴퓨터가 이해하기 쉽게 작성된 프로그래밍 언어이다. 정확히는 컴퓨터와 직접적으로 소통할 수 있는 언어이다. 사용자보다는 컴퓨터 측면에서 개발한 언어이며, 이 언어는 컴퓨터의 이진수에 가깝끼 때문에 프로그래머가 .. 2023. 7. 30.
System Call 이란? 시스템콜을 알기전에, 전에 쓴 글처럼 운영체제는 커널 모드와 사용자 모드로 나뉘어 구동된다. 운영체제에서 프로그램이 구동되는데 있어 파일을 읽어 오거나, 파일을 쓰거나, 혹은 화면에 메시지를 출력할때 등, 많은 부분이 커널 모드를 사용한다. 사용자 모드의 프로그램이 커널 모드의 기능을 사용해야 할 때 운영체제에 요청을 보내야하는데, 그 요청이 바로 시스템 콜 (System Call) 이다. 시스템 콜은 사용자 모드의 프로그램이 커널 모드의 기능을 활용할 수 있도록 중간다리 역할을 수행한다. 사용자 모드의 포로그램은 시스템 콜을 호출하여 커널 모드의 기능을 요청하고, 운영체제 커널은 해당 요청을 처리한 후 결과를 사용자 모드에 반환한다. 이렇게 함으로써 운영체제는 보안과 안정성을 유지하며 필요한 기능을 제.. 2023. 7. 25.
Linux 쉘 스크립트 문법에 대해 알아보자!! (3) 저번에는 특별한 변수에 대해 알아보았다. 오늘은 그 다음부분 부터 작성하겠다. 변수 값의 치환 사실 이 부분을 공부할 때 이해가 잘 안되어서 매우매우매우 어려웠다.. 문법 설명 ${var} 변수 값을 바꿔 넣는다. ${var:-word} 변수가 아직 세팅되지 않거나 공백 문자열의 경우 word를 반환한다. var에는 저장되지 않는다. ${var:=word} 변수가 아직 세팅되지 않거나 공백 문자열의 word를 반환한다. var에 저장된다. ${var:?word} 변수가 아직 세팅되지 않거나 공백 문자열의 경우 치환에 실패하고, 스탠다드 에러에 에러가 표시된다. ${var:+word} 변수가 세팅되지 않은 경우 word가 반환된다. var에는 저장되지 않는다. 예시 코드를 보자 위 사진의 코드를 컴파일 하.. 2023. 7. 17.
Linux 쉘 스크립트 문법에 대해 알아보자!! (2) 지난번에 리눅스 쉘 스크립트 문법중 변수 부분까지 작성했었다. 오늘은 그 다음 부분부터 작성 하겠다. 특별한 변수 쉘 스크립트에서는 아래 표와 같은 특별한 변수가 있다. 변수 기능 $0 스크립트명 $1 ~ $9 인수, 첫 번째의 인수는 $1, 2번째 인수는 $2로 액세스 $# 스크립트에 전달된 인수의 수 $* 모든 인수를 모아 하나로 처리 $@ 모든 인수를 각각 처리 $? 직전에 실행한 커맨드의 종료 값(0은 성공, 1은 실패) $$ 이 쉘 스크립트의 프로세스 ID $! 마지막으로 실행한 백그라운드 프로세스 ID 코드의 결과를 보면 $0은 스크립트명인 shell.sh를 출력하고 $1,2,3은 인수 1,2,3을 출력한다. $#는 인수의 개수인 3을 출력한다. 특수 문자 * ? [ ' " ` \ $ ; & .. 2023. 7. 16.