load s11)기능한 회로의 a접점지정 접점(s1)의 on/off정보를 연산결과로 합니다.load not s11)기능한 회로의 b접점지점 접점(s1)의 on/off정보를 연산결과로 합니다.<중 략>PIDTUN- 설정된 목표값과 제어대상 및 스캔시간에 의해 자동으로 P,I,D상수를 구합니다.- D가 사용하는 영역은 총 19워드이며, 사용자가 설정하는 영역은 4워드 입니다.- 예를 들어 D0000를 사용한 경우 D0000~D0018 까지가 PID연산을 위해 사용되는 영역입니다.
1. 리눅스 부트로더① 부트로더란?부트로더는 시스템에 설치되어있는 운영체제로 부팅 될 수 있도록 해 주는 프로그램이다. 멀티 부팅 환경을 사용하는 환경, 운영체제의 커널이 디스크의 어디에 있는지 알고 있으며 그것을 메모리로 불러오는 역할을 한다.② 리눅스 부트로더의 종류리눅스의 부터로더의 종류에는 2가지가 있다. 처음 리눅스가 개발 될 당시에는 LILO라는 부트로더를 사용했다. 그러나 이 LILO라는 부트로더에서 단점들이 발견됐다. LILO의 단점을 보안하고 조금 더 개발하여 나온 것이 GRUB이다. 지금 현재 리눅스는 GRUB를 사용한다. GRUB는 Erich Stefan Boleyn에 의하여 개발된 부트로더 이며, Grand Unified Bootloader의 약자 입니다.GRUB의 장점⑴ LILO에 비하여 설정 및 사용이 편리.⑵ 부팅정보 오류 시, 부팅 시 이를 바로 수정하여 부팅가능⑶ 멀티 부팅 가능 (Chain-load를 이용)⑷ 메뉴 인터페이스 환경 지원⑸ 네트워크상에서 부트로더 설정을 수정 가능2. 리눅스 커널① 커널이란?커널은 간단히 말해서 운영체제의 핵심 부분라고도 할 수 있다. 물론 정확히는 커널 그자체가 운영체제가 될 수는 없지만 지금 리눅스 커널은 운영체제의 거의 모든 기능을 가지고 있어서 일반적으로 커널은 운영체제라는 말이 통용되고 있다.운영체제는 하드웨어 플랫폼에 포함되어있는 모든 하드웨어 구성요소에 작용하면서 컴퓨터 시스템에서 실행되는 모든 응용 프로그램의 구동 환경을 제공한다. 그리고 모든 프로세스 관리, 하드웨어나 메모리 관리 등 시스템 자원을 관리하는 기능을 가진 일종의 자원관리 프로그램이다. 한마디로 말해서 컴퓨터와 사용자 사이에 존재하면서 둘 사이를 연결해 주는 역할을 하는 가장 기본적인 프로그램이다.② 커널의 세부기능⑴ 프로세스 관리(Process Management)⑵ 메모리 관리(Memory Management)⑶ 파일 시스템 관리(File System Management)⑷ 디바이스 관리(Device Management)⑸ 네트워크 관리(Network Management)③리눅스 커널의 구성⑴ 응용프로그램 : 사용자 모드(user mode)에서 구동되는 프로그램⑵ 시스템 콜 인터페이스 : 응용프로그램에게 커널의 서비스를 제공하는 인터페이스⑶ 커널 : 프로세스 관리, 메모리 관리, IPC, 파일 시스템, 네트워킹, 디바이스 드라이버 등⑷ 하드웨어 : CPU, RAM, HDD, FDD, 네트워크 장치, 기타 여러 주변장치 등?리눅스 커널의 구조3. 리눅스 파일시스템① 파일 시스템이란?파일 시스템이란 운영제제가 파일을 시스템의 디스크상에 구성하는 방식을 말한다. 운영체제는 시스템의 디스크 파티션상에 파일들을 연속적이고 일정한 규칙을 가지고 저장하는데 파일 시스템은 이러한 규칙들의 방식을 제시하는 역할을 한다. 또한 파일 시스템은 시스템 디스크나 파티션 그라고 파일 시스템의 형식을 말할 경우에도 쓰일 수 있다. 파티션과 파일 시스템은 다른 것이다. 파일 시스템은 파티션을 구성해 주는 역할을 한다. 파일 시스템을 포함하지 못한 파티션은 파일 시스템을 사용될 수 있도록 초기화되고 파일 정보를 기록하기 위한 형식을 만들어야 한다. 이 과정을 거쳐야 파티션은 파일 시스템으로 사용될 수 있다.② 파일 시스템의 종류리눅스는 다양한 파일 시스템을 지원한다. ext2, ext3, minix, xiats, umsdos, hpfs OS/2, isofs, CD-ROM, msdos, nfs, sysv 등이 있다. 이 파일 시스템들은 각각 다음과 같은 특징을 가지고 있다.◎ minix과거 미닉스에서 사용되어졌던 파일 시스템으로 리눅스 파일 시스템 대부분의 기능을 제공하는 파일 시스템이다.◎ xiafs미닉스의 제한이 이었던 파일 이름과 파일 시스템에 대한 제한을 보안한 미닉스 파일 시스템의 수정 버전이다. 이 파일 시스템에는 추가된 새로운 기능은 없다. 한때 ext2와 함께 사용되었던 파일 시스템이었으나 현재는 많이 사용되지 않는다.◎ msdos도스의 FAT파일 시스템과 호환을 지원하는 파일 시스템이다. 또한 msdos와 OS/2와 윈도NT FAT파일 시스템과도 호환된다◎ hpfs OS/2OS/2의 파일 시스템이다. 하지만 현재는 읽기 전용인 파일 시스템으로 파일 시스템에 대한 읽기만이 가능하다.◎ isofs CD-ROMISO기준을 따르는 표준 CD-ROM의 파일 시스템이다. isofs CD-ROM은 CD-ROM에 좀더 긴 파일명을 사용할 수 있도록 확장된 록 브릿지가 기본으로 지원된다.◎ umsdosMS-DOS 파일 시스템을 리눅스 상에서도 긴 파일명과 소유자, 접근 허가, 링크와 장치 파일 등을 사용할 수 있도록 확장한 파일 시스템이다. umsdos는 일반적으로 DOS 파일 시스쳄이 마치 리눅스 파일 시스템인 것처럼 보이도록 하는 기능을 제공하므로 따로 리눅스를 위한 파티션은 필요하지 않는다.◎ nfs네트워크 파일 시스템이다. 네트워크 상의 많은 컴퓨터들이 각각의 시스템에 가진 파일들을 서로 쉽게 공유하기 위해 제공되는 상호간의 파일 시스템 공유 파일시스템이다.◎ sysvSystem V/386, Xenix 그리고 Coherent 파일 시스템이다.◎ ext리눅스 초기에 사용되던 파일 시스템으로 호환성이 없던 ext2의 구 버전이다. 지금은 대부분 하지 않는다.◎ ext2리눅스는 미닉스 파일시스템을 처음으로 사용했다. 그러나 여러가지 제약 조건과 성능이 뛰어나지 못하였다. 이를 보안 하기 위해 EXT(Extened File System)이 제시 되었다.③ 파일 시스템의 구조◎ 슈퍼블록(super block)슈퍼블록(Super Block)은 파일 시스템에 의존하는 정보를 가지며 파일 시스템의 크기 등과 같은 파일 시스템의 전체 적인 정보를 가지고 있다.◎ 아이노드(inode)아이노드(inode)는 파일의 이름을 제외한 해당 파일의 모든 정보를 가지고 있다. 파일 이름은 inode 번호와 함께 디렉토리 안에 저장된다.◎ 테이터 블록(data block)데이터 블록(data block)은 inode에 포함된다. inode가 몇 개의 데이터 블록을 포함하고 있다. 데이터 블록은 파일에서 테이터를 저장하기 위해서 사용된다.◎ 디렉토리 블록(Directory Block)파일 이름과 inode번호를 저장하기 위해서 사용된다.◎ 간접 블록(Indirection Block)간접블록은 추가적인 테이터 블록을 위한 포인터들이 사용할 동작으로 할당되는 공간이다. 실제적으로 inode는 적은 수의 테이터 블록을 가지고 있다.◎ 홀 (Hole)홀은 inode나 간접 블록안의 테이터 블록의 주소로 특별한 값을 저장한다.홀은 파일 시스템에 의해서 파일안에 자리하게 된다. 하지만 이 홀을 위해 실질적으로 디스크 상에 공간은 할당되지 않는다.EXT2◎ EXT2 아이노드inode는 파일시스템의 가장 기본되는 단위이다. 또한 각각을 구분할 수 있는 고유 번호를 가지고 파일의 테이터가 어느 블록에 어느 위치에 저장되어 있는지, 파일에 대한 접근 권한, 파일의 최종 수정시간 그리고 파일의 종류등의 정보를 inode 테이블에 저장한다. 저장되는 정보는 모드, 소유자 정보, 크기, 타임 스템프, 테이터 블록이다. 모드(mode)에는 inode가 속한 파일에 대한 정보와 파일에 대한 접근 권한 정보가 저장된다. 리눅스 시스템의 /dev 디렉토리 안에 위치하는 파일들이 그것들이다.◎ EXT2 슈퍼블록슈퍼블록(Super Block)은 해당 파일 시스템의 기본적인 크기나 형태에 대한 정보를 저장한다. 파일 시스템 관리자는 이 슈퍼 블록의 정보를 이용하여 파일 시스템을 활용하고 유지할 수 있다. 슈퍼 블록에 저장되는 정보의 항목은 다음과 같다. 매직 넘버(Magic Number)는 마운트하는 소프트웨어에게 EXT2파일 시스템의 슈퍼 블록임을 확인 하게 하는 값이다. 개정 래벨(Revision Level)개정 래벨은 메이저 레벨과 마이너 래벨로 구성되어 있음 개정 래벨의 역할은 마운트 프로그램이 어떤 특정한 버전에서만 지원되는 기능이 이 파일 시스템에서 지원되는지에 대한 확인을 위해 사용된다. 또한 개정 레벨은 기능 호환성 항목을 포함하여 마운트 프로그램이 해당 파일 시스템에서 안정적으로 사용할 수 있는 기능이 무엇인지를 판단할 수 있는 기준을 제공한다. 리눅스 시스템에서 첫 번째 inode는 "/"디렉토리에 디렉토리 엔트리를 나타낸다.
예제: 좌회전신호가 있는 사거리 신호등제어1. 동작A 차로는 좌회전→적,황색→청색→적색순으로 신호등이 변경되고 이때 B 차로는 적색이 점등됩니다.B 차로 역시 A 차로와 같은 순서로 변경되며 이때 A 차로는 적색이 점등됩니다.A 차로 보행신호등은 A 차로 차량 신호등이 적색이고 B 차로 청색등일때 10 초간 점등됩니다.B 차로 보행신호등은 B 차로 차량 신호등이 적색이고 A 차로 청색등일때 10 초간 점등됩니다.※개별 좌회전 신호등에서는 동일 차로의 양방향의 신호등은 동일하게 동작합니다.2. 타임차트타임차트에서 보 듯 신호등의 변화시간은 10초, 1초, 20초, 1초 4스텝으로 이루어집니다. 프로그램 예는 이 주기에 의하여 첫 번째 주기는 A차로를 제어하며 두 번째는 B 차로를 제어합니다.3. 프로그램4. 동작설명0번: 48번에서 ON되면 마스터 컨트롤 1번 SET되고 A라인 제어를 한다.2번: 28번에서 ON되면 P0021이 ON된다.4번: 34번에서 ON되면 P0022가 ON된다.6번: 37번세서 ON되면 P0023이 ON된다.8번: 마스터 컨트롤 1번 SET 한 걸 clear한다.9번: 적색 램프 점등용 보조 접점이 ON되면 적색 램프가 ON된다.12번: 청색 램프 보조 접점과 T0004가 OFF일 때 청색 램프가 ON된다.16번: 청색 램프가 ON되면 적색 램프는 OFF된다.18번: B라인 제어를 막기위한 마스터 컨크롤 1번 SET한다.20번: 황색램프 점등용 보조 접점이 ON되면 좌회전 램프가 ON된다.