COBOL์ ์๋น์ค ์์ค ๊ณ์ฝ(SLA) ๋ฐ ๋น์ฉ ์ ์ฝ์ ์ถฉ์กฑํ๊ธฐ ์ํด ํจ์จ์ ์ผ๋ก ์ํ๋์ด์ผ ํ๋ ๋์ฉ๋ ์ผ๊ด ์ฒ๋ฆฌ ์์ ์ ์ฒ๋ฆฌํ๋ ๋ฑ ์ฌ๋ฌ ํต์ฌ ์ํฐํ๋ผ์ด์ฆ ์์คํ ์ ์ด์์ผ๋ก ๋จ์ ์์ต๋๋ค. ์ด๋ฌํ ์์คํ ์ด ๋ฐ์ ํจ์ ๋ฐ๋ผ ์ฝ๋์ ์ฌ์ํ ๋นํจ์จ์ฑ๋ ๋์ ๋์ด ์ฌ๊ฐํ ์ฑ๋ฅ ๋ฌธ์ ๋ก ์ด์ด์ง ์ ์์ผ๋ฉฐ, ํนํ CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๊ฐ ๊ด๋ จ๋ ๊ฒฝ์ฐ ๋์ฑ ๊ทธ๋ ์ต๋๋ค.
๋ฃจํ๋ COBOL ํ๋ก๊ทธ๋จ์์ ๋ ์ฝ๋ ์ฒ๋ฆฌ ๋ฐ ๊ณ์ฐ ์ํ์ ํ์์ ์ด์ง๋ง, ์ค๊ณ๊ฐ ์๋ชป๋์๊ฑฐ๋ ์ ์ด๋์ง ์์ ๋ฃจํ๋ ๊ณผ๋ํ CPU ์๊ฐ์ ์๋ชจํ๊ณ , ๋ฐฐ์น ์ฌ์ดํด์ ์ง์ฐ์ํค๋ฉฐ, ๋ฉ์ธํ๋ ์ ์ด์ ๋น์ฉ์ ์ฆ๊ฐ์ํฌ ์ ์์ต๋๋ค. ์ฑ๋ฅ ์ ํ๋ ์ผ์ ์ ๋ฌด์ ์ํฅ์ ๋ฏธ์น ๋๊น์ง ์ธ์ง๋์ง ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง๊ธฐ ๋๋ฌธ์ ์์คํ ์์ ์ฑ์ ์ ์งํ๊ธฐ ์ํด์๋ ์กฐ๊ธฐ ๊ฐ์ง ๋ฐ ์ฌ์ ๊ด๋ฆฌ๊ฐ ํ์์ ์ ๋๋ค.
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ์๋ณํ๊ณ ์ต์ ํํ๋ ค๋ฉด ๋ฃจํ์ ํน์ฑ์ ๋ช ํํ ์ดํดํ๊ณ , ๋นํจ์จ์ ์ธ ํจํด์ ํ์ ํ๋ฉฐ, ์๋ ๋ฐ ์๋ ๋ถ์ ๋ฐฉ๋ฒ์ ํจ๊ณผ์ ์ผ๋ก ํ์ฉํด์ผ ํฉ๋๋ค. ๋๊ตฌ, ๋ชจ๋ฒ ์ฌ๋ก, ๊ทธ๋ฆฌ๊ณ ์ฒด๊ณ์ ์ธ ์ฝ๋ฉ ํ์ค์ ๋ชจ๋ COBOL ์ ํ๋ฆฌ์ผ์ด์ ์ด ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์๋ต์ฑ, ํจ์จ์ฑ, ๊ทธ๋ฆฌ๊ณ ์ ์ง ๋ณด์์ฑ์ ์ ์งํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค.
์ผ๋ฐ์ ์ธ ์ฆ์, ๊ทผ๋ณธ ์์ธ, ํ์ง ์ ๋ต ๋ฐ ์ต์ ํ ๊ธฐ์ ์ ๊ฒํ ํจ์ผ๋ก์จ ๊ฐ๋ฐ ๋ฐ ์ด์ ํ์ ์๋ฌด ์ํ์ ์ค์ํ COBOL ์์คํ ์ ์ต๊ณ ์ ์ฑ๋ฅ์ผ๋ก ์ ์งํ๋ ๋ฐ ํ์ํ ๊ธฐ์ ๊ณผ ํ๋ก์ธ์ค๋ฅผ ๊ตฌ์ถํ ์ ์์ต๋๋ค.
COBOL ์ ํ๋ฆฌ์ผ์ด์ ์์ CPU ์ง์ฝ ๋ฃจํ ์ดํด ๋ฐ ๊ด๋ฆฌ
๋ฃจํ๋ ๋ง์ COBOL ํ๋ก๊ทธ๋จ์ ํต์ฌ์ผ๋ก, ๋๋์ ๋ ์ฝ๋๋ฅผ ์ฝ๊ณ , ๊ณ์ฐ์ ์ํํ๊ณ , ๋ฐฉ๋ํ ๋ฐ์ดํฐ ์ธํธ์ ๋น์ฆ๋์ค ๊ท์น์ ์ ์ฉํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ํ์ง๋ง ์ด๋ฌํ ๋ฃจํ๊ฐ ์ ๋๋ก ์ค๊ณ๋์ง ์๊ฑฐ๋ ์ ๋๋ก ๊ด๋ฆฌ๋์ง ์์ผ๋ฉด ์ฌ๊ฐํ ์ฑ๋ฅ ์ ํ๋ฅผ ์ด๋ํ ์ ์์ต๋๋ค. ๊ณผ๋ํ CPU ์๊ฐ ์๋ชจ, ๋ฐฐ์น ์ฃผ๊ธฐ ์ง์ฐ, ๊ณต์ ๋ฉ์ธํ๋ ์ ์์คํ ์ ์ด์ ๋น์ฉ ์ฆ๊ฐ ๋ฑ ์จ๊ฒจ์ง ๋น์ฉ์ด ๋ฐ์ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ก ์ธํ ์ํ์ ์ธ์ํ๋ ค๋ฉด ๋จผ์ COBOL์์ ๋ฃจํ๊ฐ ์ด๋ป๊ฒ ์๋ํ๋์ง, ์ ๋นํจ์จ์ ์ผ๋ก ๋์ํ๋์ง, ๊ทธ๋ฆฌ๊ณ ์ด๋ค ์ฆ์์ด ๋ฌธ์ ๋ฅผ ๋ํ๋ด๋์ง ์ดํดํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์์๋ค์ ์์ธํ ์ดํด๋ณด๋ฉด ๊ฐ๋ฐํ์ ๋์ฑ ํจ์จ์ ์ธ ์ฝ๋๋ฅผ ์์ฑํ๊ณ , ์ด์ ์ฌ๊ณ ๋ฅผ ๋ฐฉ์งํ๋ฉฐ, ๋ฐ์ดํฐ ์์ด ์ฆ๊ฐํ๋๋ผ๋ ๋น์ฉ ํจ์จ์ ์ธ ์ด์์ ์ ์งํ ์ ์์ต๋๋ค.
CPU ์ง์ฝ์ ๋ฃจํ๊ฐ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ์ด์
์ ๋๋ก ์ ์ด๋์ง ์์ ๋ฃจํ๋ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ CPU ๋น์ฉ์ ๋์ ๋์ง ์๊ฒ ์ฆ๊ฐ์ํฌ ์ ์์ต๋๋ค. 100๊ฐ์ ๋ ์ฝ๋๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฃจํ๋ ์ฌ์ํ ๊ฒ์ผ ์ ์์ง๋ง, ์๋ฐฑ๋ง ๊ฐ๋ก ํ์ฅํ๋ฉด ๋ ผ๋ฆฌ์ ๋นํจ์จ์ฑ์ด ๋น ๋ฅด๊ฒ ๋๋ฌ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์๋ฐฑ๋ง ๋ฒ ์คํ๋๋ ๋ฃจํ ๋ด์ ๊ณ์ฐ๋์ด ๋ง์ ์์ ์ด๋ ํ์ผ I/O๋ฅผ ๋ฐฐ์นํ๋ฉด CPU ์๊ฐ ๋ญ๋น์ ๋ฐฐ์น ๋ง๊ฐ์ผ ๋ฏธ์ค์๋ก ์ด์ด์ง ์ ์์ต๋๋ค.
๋ฃจํ๋ ์ข ๋ฃ ์กฐ๊ฑด์ด ๋ฐ์ดํฐ ํ์ง์ด๋ ๊ฒ์ฆ์ด ์ ๋๋ก ์ด๋ฃจ์ด์ง์ง ์์ ๋์ ๊ณ์ฐ์ ์์กดํ ๋ ํนํ ๋ฌธ์ ๊ฐ ๋ฉ๋๋ค. ๊ฐ๋ฐ์๋ ๋ฐ๋ณต ํ์๋ฅผ ์์์น ๋ชปํ๊ฒ ๋๋ฆฌ๋ ์์ธ ์ํฉ์ ๊ณ ๋ คํ์ง ์๊ณ ๋ช ๋ฒ์ ๋ฐ๋ณต๋ง์ผ๋ก ์กฐ๊ฑด์ด ์ถฉ์กฑ๋ ๊ฒ์ด๋ผ๊ณ ๊ฐ์ ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ ์๊ท๋ชจ ๋ฐ์ดํฐ ํ ์คํธ์์๋ ์ข ์ข ๋๋ฌ๋์ง ์์ง๋ง, ํ๋ก๋์ ๊ท๋ชจ์ ์์ ์์๋ ๊ทน์ ์ผ๋ก ๋ํ๋ฉ๋๋ค.
๋ฐฐ์น ์ฒ๋ฆฌ๊ฐ ์์ ๋ ์๊ฐ ๋ด์ ์๋ฃ๋์ง ์์ผ๋ฉด ๋ค์ด์คํธ๋ฆผ ์์ ์ด ์ง์ฐ๋๊ฑฐ๋ ์์ ํ ์๋ต๋ฉ๋๋ค. ์ด๋ ์๋น์ค ์์ค ๊ณ์ฝ(SLA) ์๋ฐ, ๊ณ ๊ฐ ๋์ ์์คํ ์ฅ์ , ๋๋ ๊ณ ๋น์ฉ์ ์๋ ๊ฐ์ ์ ์ด๋ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ณผ์ ๋ ์ ์คํ ๋ฃจํ ์ค๊ณ์ ์ฌ์ ๊ฐ์ง์ ํ์์ฑ์ ๊ฐ์กฐํฉ๋๋ค.
์ฑ๋ฅ ์ ํ ๋ฃจํ์ ์ฆ์ ์ธ์
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ๊ฐ์งํ๋ ๊ฒ์ ์์คํ ์์ค์ ์ฆ์์ ํ์ ํ๋ ๊ฒ์์ ์์๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ฐฐ์น ์์ ๋ก๊ทธ์ ์ด์ ๊ธฐ์ค๊ณผ ๋น๊ตํ์ ๋ ๋น์ ์์ ์ผ๋ก ์คํ ์๊ฐ์ด ๊ธ์ฆํ๊ฑฐ๋ ์ง์์ ์ผ๋ก ์ค๋ฒ๋ฐ์ด ๋ฐ์ํ ์ ์์ต๋๋ค. ์ด์ํ์ ์ผ๊ฐ ์์ ์ค์ CPU ์ฌ์ฉ๋ฅ ์๋์ด ๋ฐ์ํ๊ฑฐ๋ ํน์ ์์ ์ด ์ ๊ธฐ์ ์ผ๋ก ๋ฆ๊ฒ ์๋ฃ๋๋ ๊ฒ์ ๋ฐ๊ฒฌํ ์ ์์ต๋๋ค.
๋ชจ๋ํฐ๋ง ๋๊ตฌ๋ ์ด๋ฌํ ํจํด์ ํ์ ํ๋ ๋ฐ ๋์์ด ๋๋ฉฐ, ์์ ๋น CPU ์๊ฐ, ๊ฒฝ๊ณผ๋ ๋ฐํ์, ์๋น๋ ์๋น์ค ๋จ์ ์์ ๊ฐ์ ์งํ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋ฃจํ์ ์ฌ์ํ ๋นํจ์จ์ฑ๋ ๋ฉ์ธํ๋ ์ ์ฒญ๊ตฌ์์ ๋์ ๋๋ ๋น์ฉ ์ฆ๊ฐ๋ฅผ ์ด๋ํ ์ ์์ต๋๋ค.
๋น์ฆ๋์ค ์ฑ์ฅ์ ๋ฐ๋ผ ํ์ฅ๋๋ ๋ฐ์ดํฐ ์์กด ๋ฃจํ์ ์ํ์ ๊ณ ๋ คํ์ญ์์ค. 10,000๋ง ๊ฐ์ ๋ ์ฝ๋์์๋ ํ์ฉ ๊ฐ๋ฅํ๋ ๋ฃจํ๊ฐ 1๋ง ๊ฐ์ ๋ ์ฝ๋์์๋ ๋ฌธ์ ๊ฐ ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ํจํด์ ์ด๊ธฐ ํ ์คํธ๋ฅผ ๊ฑฐ์น์ง ์๊ณ ์ค์ ์ด์ ๋ฐ์ดํฐ ๋ณผ๋ฅจ์์๋ง ๋ํ๋ ์ ์์ผ๋ฏ๋ก ์ฌ์ ๋ถ์์ด ํ์์ ์ ๋๋ค.
์ผ๊ด ์ฒ๋ฆฌ ๋ฐ ์์คํ ๋ฆฌ์์ค์ ๋ฏธ์น๋ ์ํฅ
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ์ ์ํฅ์ ๋จ์ผ ๋ฌธ์ ์์ ์๋ง ๊ตญํ๋์ง ์์ต๋๋ค. ๋ฉ์ธํ๋ ์์ ์ฌ๋ฌ ์์ ์ ๊ฑธ์ณ CPU ๋ฐ I/O ๋ฆฌ์์ค๋ฅผ ๊ณต์ ํ๋๋ก ์ค๊ณ๋์์ผ๋ฉฐ, ์ฅ์๊ฐ ์คํ๋๋ CPU ์ง์ค ์์ ํ๋๊ฐ ๋ค๋ฅธ ์์ ์ ํ์ํ ๋ฆฌ์์ค๋ฅผ ๊ณ ๊ฐ์ํฌ ์ ์์ต๋๋ค.
์ด๋ก ์ธํด ์ข ์ ์ฒ๋ฆฌ๊ฐ ์ง์ฐ๋๊ณ , ๋ค๋ฅธ ์์คํ ๊ณผ์ ํตํฉ ์์ ์ ๋์น๋ฉฐ, ์ฐ์์ ์ธ ์ผ์ ์คํจ๊ฐ ๋ฐ์ํฉ๋๋ค. ๋ฐฐ์น ์๋์ฐ๋ ์จ๋ผ์ธ ๊ฑฐ๋ ์ฒ๋ฆฌ์์ ์ถฉ๋์ ํผํ๊ธฐ ์ํด ์ ์คํ๊ฒ ๊ณํ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ผ๋ฉฐ, ์ด๋ฌํ ์๋์ฐ๋ฅผ ์ด๊ณผํ๋ฉด ์ฌ๊ฐํ ๋น์ฆ๋์ค ๊ฒฐ๊ณผ๋ฅผ ์ด๋ํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, ๋ชจ๋ ๊ฑฐ๋๋ฅผ ์ฝ๊ณ ๊น๊ฒ ์ค์ฒฉ๋ ๋ฃจํ ๋ด์์ ๊ณ์ฐ์ ์ํํ์ฌ ๊ณ ๊ฐ ์์ก์ ์ ๋ฐ์ดํธํ๋ COBOL ์์ ์ ์์ํด ๋ณด์ธ์. ๊ฐ ๋ฐ๋ณต ์์ ์ด ์์ ๋ณด์ด๋๋ผ๋ ๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํจ์ ๋ฐ๋ผ ์ด ๋น์ฉ์ ์์ฒญ๋๊ฒ ์ฆ๊ฐํ ์ ์์ต๋๋ค.
PERFORM VARYING I FROM 1 BY 1 UNTIL I > MAX-TRANSACTIONS
ADD TRANSACTIONS(I) TO CUSTOMER-BALANCE
END-PERFORM.
๋ฃจํ๋ฅผ ์ต์ ํํ์ง ์๊ณ ๋ฐ์ดํฐ ์งํฉ์ ํ์ฅํ๋ฉด ์ด๋ฌํ ๊ฐ๋จํ ๊ตฌ์กฐ๊ฐ ์ฑ๋ฅ ๋ณ๋ชฉ ํ์์ด ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ ๋ฃจํ ์ค๊ณ๋ฅผ ๊ฒํ ํ๊ณ , ์ธ๋ฑ์ฑ ์ ๋ต์ ์ถ๊ฐํ๊ณ , ๊ฐ๋ฅํ ๊ฒฝ์ฐ ์ค์ํ์ง ์์ ๊ณ์ฐ์ ๋ฃจํ ์ธ๋ถ๋ก ์ด๋ํจ์ผ๋ก์จ ์ํํ ์ ์์ต๋๋ค.
COBOL ํ์ CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ์ ๊ทผ๋ณธ ์์ธ, ์ฆ์ ๋ฐ ๊ด๋ฒ์ํ ์ํฅ์ ์ดํดํจ์ผ๋ก์จ ์ค์ํ ์์คํ ์ ๋ฐ์์ ํจ์จ์ ์ด๊ณ ์์ ์ ์ด๋ฉฐ ๋น์ฉ ํจ์จ์ ์ธ ์ผ๊ด ์ฒ๋ฆฌ๋ฅผ ์ ์งํ๊ธฐ ์ํ ์ ๋ณด์ ์ ๊ฐํ ๊ฒฐ์ ์ ๋ด๋ฆด ์ ์์ต๋๋ค.
COBOL์์ CPU ์ง์ฝ ๋ฃจํ ์๋ณ: ์ฃผ์ ์งํ
COBOL์์ CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ์ฐพ์ ์์ ํ๋ ๊ฒ์ ์ฝ๋ ์กฐ๊ฐ์ด ํ์ ์ด์์ผ๋ก CPU๋ฅผ ์ฌ์ฉํ๊ณ ์๋ค๋ ์ ๋ขฐํ ์ ์๋ ์งํ๋ฅผ ํ์ ํ๋ ๊ฒ์์ ์์๋ฉ๋๋ค. ๊ฐ๋ฐ์์ ์ด์ํ์ ์ง๊ด์ด๋ ํ๋ฉด์ ์ธ ์งํ์๋ง ์์กดํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ฃจํ๋ฅผ ํ์ ํ๋ ค๋ฉด ์์คํ ์์ค์ ์ฌ์ฉ ํจํด๊ณผ ํน์ ํ๋ก๊ทธ๋จ ๋์์ ๋ํ ๋ฉด๋ฐํ ๋ถ์์ด ํ์ํฉ๋๋ค. ๋ฌด์์ ์ฐพ์์ผ ํ๋์ง ํ์ ํจ์ผ๋ก์จ ํ์ ๋ฐฐ์น ์๋์ฐ๋ฅผ ๋์น๊ฑฐ๋ ์์์น ๋ชปํ ๋น์ฉ์ด ๋ฐ์ํ๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ ์ ์์ต๋๋ค.
COBOL ์์ ์ ๋์ CPU ์ฌ์ฉ ํจํด
๊ฐ์ฅ ํ์คํ ์งํ ์ค ํ๋๋ ํน์ ๋ฐฐ์น ์์ ์์ ์ง์์ ์ผ๋ก ๋์ CPU ์ฌ์ฉ๋์ ๋๋ค. ์์คํ ๋ชจ๋ํฐ๋ง ๋๊ตฌ๋ ์ผ๋ฐ์ ์ผ๋ก ์์ ๋ณ ๋๋ ๋จ๊ณ๋ณ CPU ์๊ฐ์ ์ ๊ณตํ์ฌ ๋ฉฐ์น , ๋ช ์ฃผ ๋๋ ๋ช ๋ฌ ๋์์ ์ถ์ธ๋ฅผ ์ถ์ ํ ์ ์๋๋ก ํฉ๋๋ค. CPU ์ฌ์ฉ๋์ด ๊ฐ์๊ธฐ ๊ธ์ฆํ๋ ๊ฒ์ ์ต๊ทผ ์ฝ๋ ๋ณ๊ฒฝ, ๋ฐ์ดํฐ ์ฆ๊ฐ ๋๋ ๋ฃจํ ๋น์ฉ์ ์ฆํญ์ํจ ๊ตฌ์ฑ ๋ฌธ์ ๋ฅผ ๋ํ๋ผ ์ ์์ต๋๋ค.
๋ช ํํ ๋น์ฆ๋์ค ์ด์ ์์ด ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์ง์์ ์ผ๋ก ๋์ ์ฌ์ฉ๋์ ๊ทผ๋ณธ์ ์ธ ๋นํจ์จ์ฑ์ ๋ํ๋ด๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์์ ์ด ์์ ๋ ์๊ฐ ๋ด์ ์๋ฃ๋๋๋ผ๋ CPU ๋น์ฉ์ด ๊พธ์คํ ์ฆ๊ฐํ๋ฉด ์์ฐ์ด ์์ง๋ ์ ์์ผ๋ฉฐ, ํนํ ๊ณ๋ํ ๋ฉ์ธํ๋ ์ ํ๊ฒฝ์์๋ ๋์ฑ ๊ทธ๋ ์ต๋๋ค. ์ด์ํ์ SMF ์ ํ 30 ๋ ์ฝ๋๋ ์ฑ๋ฅ ๋์๋ณด๋์ ๊ฐ์ ๋ณด๊ณ ์๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ค ์์ ์ด CPU๋ฅผ ๊ณผ๋ํ๊ฒ ์ฌ์ฉํ๋์ง ํ์ ํ๊ณ ๋ด๋ถ ๋ฃจํ ๋ก์ง์ ์กฐ์ฌํ ์ ์์ต๋๋ค.
CPU ์๊ฐ์ ๋ํ SMF ๋ฐ RMF ๋ ์ฝ๋ ๋ถ์
์์ธํ ๋ฉ์ธํ๋ ์ ์ฑ๋ฅ ๋ฐ์ดํฐ๋ ๋์ฑ ์ฌ์ธต์ ์ธ ํต์ฐฐ๋ ฅ์ ์ ๊ณตํฉ๋๋ค. SMF(์์คํ ๊ด๋ฆฌ ์์ค) ๋ฐ RMF(์์ ์ธก์ ์์ค) ๋ ์ฝ๋๋ ๊ฐ ์์ ๋จ๊ณ์ CPU ์๊ฐ, I/O ๋๊ธฐ ๋ฐ ๊ฒฝ๊ณผ ์๊ฐ์ ๋ํ ์ธ๋ถ์ ์ธ ํต๊ณ๋ฅผ ํฌํจํฉ๋๋ค. ์ด๋ฌํ ๋ ์ฝ๋๋ CPU ์๊ฐ์ด ์ด๋์ ๋์ ๋๋์ง, ๊ทธ๋ฆฌ๊ณ ์ด๋ค ์์ ๋จ๊ณ๋ฅผ ์ฌ์ธต์ ์ผ๋ก ๊ฒํ ํด์ผ ํ๋์ง ํ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์ฑ๋ฅ ๋ถ์๊ฐ๋ I/O ํ๋์ ๋นํด CPU ์ฌ์ฉ๋์ด ๋ถ๊ท ํ์ ์ผ๋ก ๋์ ๋จ๊ณ๋ฅผ ์ฐพ๊ฑฐ๋, ์์ ์ ์ด์ ๊ธฐ์ค์ ๊ณผ ๋น๊ตํ์ฌ ๋น์ ์์ ์ธ ํจํด์ ํ์ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด๋ฌํ ์กฐ์ฌ๋ ๋ฐ์ดํฐ ์์ด ์ฆ๊ฐํ๊ฑฐ๋ ๋น์ฆ๋์ค ๊ท์น์ด ๋ณ๊ฒฝ๋จ์ ๋ฐ๋ผ ๋นํจ์จ์ ์ผ๋ก ๋ฃจํ๊ฐ ์์ฑ๋ COBOL ํ๋ก๊ทธ๋จ์ ์ฐพ์๋ด๋ ์ง์ ์ ์ธ ์์ธ์ด ๋ ์ ์์ต๋๋ค.
SMF ๋ฐ RMF ๋ฐ์ดํฐ๋ฅผ ํด์ํ๋ ค๋ฉด ์ด์ํ๊ณผ ๊ฐ๋ฐ์ ๊ฐ์ ํ์ ์ด ํ์ํ๋ฉฐ, ๊ธฐ์ ์ ๊ฒฐ๊ณผ๊ฐ CPU ๋น์ฉ์ ์ค์ด๋ ์ฝ๋ ์์ค์ ๋ณ๊ฒฝ์ผ๋ก ์ ํ๋์ด์ผ ํฉ๋๋ค.
COBOL ํ๋กํ์ผ๋ฌ ๋ฐ ๋๋ฒ๊น ๋๊ตฌ ์ฌ์ฉ
์์คํ ๋ ์ฝ๋ ์ธ์๋ ๊ฐ๋ฐ์๋ COBOL ํ๋กํ์ผ๋ฌ์ ๋๋ฒ๊น ๋๊ตฌ๋ฅผ ํ์ฉํ์ฌ ์ฝ๋ ์คํ์ ์ธ๋ถ์ ์ผ๋ก ๋ถ์ํ ์ ์์ต๋๋ค. ์ด ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ํ๋ก๊ทธ๋จ ๋ก์ง์ ๋จ๊ณ๋ณ๋ก ์ถ์ ํ์ฌ ๋ฃจํ๊ฐ ์ค์ ๋ฐ์ดํฐ ์งํฉ์์ ์ด๋ป๊ฒ ๋์ํ๋์ง ๋ ์ฝ๊ฒ ๊ด์ฐฐํ ์ ์์ต๋๋ค.
ํ๋กํ์ผ๋ฌ๋ ๊ฐ๋ณ ๋ช ๋ น๋ฌธ์ด๋ ์น์ ์ ์คํ ํ์๋ฅผ ์ธก์ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ผ๋ฉฐ, ๋ฃจํ๊ฐ ์์๋ณด๋ค ๋ ๋ง์ด ๋ฐ๋ณต๋๊ฑฐ๋ ๋น์ฉ์ด ๋ง์ด ๋๋ ์์ ์ ๋ฐ๋ณต์ ์ผ๋ก ์ํํ๋ ํซ์คํ์ ๋น ๋ฅด๊ฒ ์ฐพ์๋ ๋๋ค. ์๋ฅผ ๋ค์ด, ํ๋กํ์ผ๋ง์ ํตํด ๊ฐ ๋ฐ๋ณต ๋ด์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํธ์ถ์ด๋ ๋ณต์กํ ๊ณ์ฐ์ ์ํํ๋ ๋์ ์ค์ฒฉ ๋ฃจํ๊ฐ ์๋ฐฑ๋ง ๋ฒ ์คํ๋๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
์ฝ๋ณผ๋ณต์ฌํธ์งPERFORM VARYING I FROM 1 BY 1 UNTIL I > MAX-CUSTOMERS
PERFORM VARYING J FROM 1 BY 1 UNTIL J > MAX-ORDERS
CALL 'PROCESS-ORDER' USING CUSTOMER(I), ORDER(J)
END-PERFORM
END-PERFORM.
์ด๋ฌํ ํจํด์ ์ผ๋จ ์๋ณ๋๋ฉด ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ฌ๊ฒํ ํ๊ฑฐ๋, I/O ์์ ์ ๋ฃจํ ์ธ๋ถ๋ก ์ด๋ํ๊ฑฐ๋, ์ธ๋ฑ์ฑ ๋ฐ ํํฐ๋ง ๋ก์ง์ ๋์ ํ์ฌ ๋ฆฌํฉํ ๋งํ ์ ์์ต๋๋ค. ํ๋กํ์ผ๋ง์ ํ์ด ์ด์ ๊ณผ ์ดํ ์ฑ๋ฅ์ ๋น๊ตํ์ฌ ์ด๋ฌํ ๋ณ๊ฒฝ ์ฌํญ์ ๊ฒ์ฆํ๊ณ , ์ต์ ํ๋ฅผ ํตํด ํ๋ก๋์ ์ํฌ๋ก๋์์ ์ค์ง์ ์ธ CPU ์ ๊ฐ ํจ๊ณผ๋ฅผ ์ป์ ์ ์๋๋ก ์ง์ํฉ๋๋ค.
๋นํจ์จ์ ์ธ ๋ฃจํ๋ฅผ ์๋ณํ๊ธฐ ์ํ ์๋ ์ฝ๋ ๊ฒํ ๊ธฐ์
์๋ ์ฝ๋ ๊ฒํ ๋ COBOL ํ๋ก๊ทธ๋จ์์ CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ํ๋ก๋์ ํ๊ฒฝ์์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ธฐ ์ ์ ๋ฐ๊ฒฌํ๋ ๊ฐ์ฅ ํจ๊ณผ์ ์ธ ์ ๋ต ์ค ํ๋์ ๋๋ค. ์๋ํ๋ ๋๊ตฌ์ ํ๋กํ์ผ๋ง์ ๊ท์คํ ํต์ฐฐ๋ ฅ์ ์ ๊ณตํ์ง๋ง, ๊ฐ๋ฐ์๊ฐ ๋น์ฆ๋์ค ๋ก์ง์ ์ดํดํ๊ณ ๋งฅ๋ฝ ์์์ ๋ฏธ๋ฌํ ๋นํจ์จ์ฑ์ ํ์ ํ๋ ๋ฅ๋ ฅ์ ๋์ ํ ์ ์๋ ๊ฒ์ ์์ต๋๋ค. ์ ์คํ๊ณ ์ฒด๊ณ์ ์ธ ๊ฒํ ๋ฅผ ํตํด ์ํํ ๋ฃจํ ํจํด, ๋ฌดํ ๋ฐ๋ณต, ๊ทธ๋ฆฌ๊ณ ํ ์คํธ ๊ณผ์ ์์ ๊ฐ๊ณผ๋ ์ ์๋ ๋น์ฉ์ด ๋ง์ด ๋๋ ์์ ์ ๋ฐ๊ฒฌํ ์ ์์ต๋๋ค.
์ค์ฒฉ ๋ฃจํ ๋ฐ ๋นํจ์จ์ ์ธ ๋ ผ๋ฆฌ ๋ฐ๊ฒฌ
์ค์ฒฉ ๋ฃจํ๋ ๊ธฐํ๊ธ์์ ์ธ CPU ์ฌ์ฉ๋์ ํํ ์์ธ์ด๋ฉฐ, ํนํ ๊ฐ ๋จ๊ณ๊ฐ ์ ์ฒด ๋ฐ๋ณต ํ์๋ฅผ ๊ณฑํ ๋ ๋์ฑ ๊ทธ๋ ์ต๋๋ค. ๊ฒํ ์๋ ๋ด๋ถ ๋ฃจํ๊ฐ ์ธ๋ถ ๋ฃจํ ๋๋น ์ผ๋ง๋ ์์ฃผ ์คํ๋๋์ง ์ถ์ ํ๊ณ , ๋ก์ง์ด ์ค์ ๋ก ๊ทธ ์ ๋์ ๋ฐ๋ณต ํ์๋ฅผ ํ์๋ก ํ๋์ง ํ๊ฐํด์ผ ํฉ๋๋ค.
๋ด๋ถ ๋ฃจํ๊ฐ ์ค๋ณต ์ฐ์ฐ์ ์ํํ๋์ง, ์๋๋ฉด ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด ๋ฆฌํฉํ ๋ง๋ ์ ์๋์ง ํ์ธํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๊ฐ๋ฐ์๋ ๋ฃจํ๋ฅผ ํตํฉํ๊ฑฐ๋, ๋ฒ์๋ฅผ ์ค์ด๊ฑฐ๋, ์กฐ๊ฑด ์ถฉ์กฑ ์ ์กฐ๊ธฐ์ ์ข ๋ฃํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ชจ์ํ ์๋ ์์ต๋๋ค. ์ค์ฒฉ ๊ตฌ์กฐ์์ ์ฌ์ํด ๋ณด์ด๋ ๋ณํ์กฐ์ฐจ๋ CPU ์ฌ์ฉ๋์ ํฐ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค.
PERFORM VARYING I FROM 1 BY 1 UNTIL I > CUSTOMER-COUNT
PERFORM VARYING J FROM 1 BY 1 UNTIL J > ORDER-COUNT
COMPUTE WS-TOTAL = WS-TOTAL + ORDER-AMOUNT(I, J)
END-PERFORM
END-PERFORM.
์ด๋ฌํ ๊ณ ์ ์ ์ธ ํจํด์ ๋์ฉ๋ ๋ฐ์ดํฐ์ ์์ CPU ๋น์ฉ์ ๊ธ์ฆ์ํฌ ์ ์์ต๋๋ค. ๋ฐ๋ณต ํ์๋ฅผ ์ ํํ๊ฑฐ๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ ํํฐ๋งํ๊ธฐ ์ํด ๋ฆฌํฉํ ๋งํ๋ฉด CPU ์ฌ์ฉ๋์ ํฌ๊ฒ ์ค์ผ ์ ์์ต๋๋ค.
์ํ ์ ํธ: ๋ฃจํ ๋ด๋ถ์์ ๋ฌด์ ํ ๋ฃจํ ๋ฐ ๊ณผ๋ํ ํ์ผ I/O
๊ฒํ ์์๊ฒ ์ค์ํ ๋ ๋ค๋ฅธ ๋์์ ์ ๋๋ก ์ ์ด๋์ง ์์ ์กฐ๊ฑด์ ์์กดํ๋ ๋ฌดํ ๋ฃจํ์ ๋๋ค. ๋ฃจํ๋ ํญ์ ๋ช ํํ๊ณ ์์ธก ๊ฐ๋ฅํ ์ข ๋ฃ ์กฐ๊ฑด์ ๊ฐ์ ธ์ผ ํ๋ฉฐ, ์ด๋ CPU ์ฌ์ฉ๋ ํญ์ฆ์ ๋ฐฉ์งํด์ผ ํฉ๋๋ค. ์ค์ ๋์ง ์์ ์ ์๋ ํ๋๊ทธ๋ฅผ ๊ธฐ๋ค๋ฆฌ๊ฑฐ๋ ์ ์ ํ ๋ณดํธ ์กฐ์น ์์ด ํ์ผ ๋๊น์ง ์ฝ๋ ๋ฃจํ๋ ์จ๊ฒจ์ง ์ฑ๋ฅ ์ํํญํ์ด ๋ ์ ์์ต๋๋ค.
๋ง์ฐฌ๊ฐ์ง๋ก, ๋นก๋นกํ ๋ฃจํ ์์ ๊ฐ๋น์ผ ํ์ผ I/O๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํธ์ถ์ ๋ฐฐ์นํ๋ ๊ฒ๋ ๋ฌธ์ ๊ฐ ๋ฉ๋๋ค. ๋ฃจํ ์์ฒด๊ฐ ์ ์ ์๋์ด ์๋๋ผ๋, ์ธ๋ถ ์์คํ ์ ๋ํ ๋ฐ๋ณต์ ์ธ ํธ์ถ์ CPU ์๊ฐ์ ๊ณผ๋ํ๊ฒ ์๋ชจํ์ฌ I/O ๋ณ๋ชฉ ํ์์ ์ด๋ํ ์ ์์ต๋๋ค. ์ฑ๋ฅ ์ ์ง๋ฅผ ์ํด์๋ ์ด๋ฌํ ํธ์ถ์ด ๋ฃจํ ๋ก์ง๊ณผ ๊ด๋ จํ์ฌ ์ด๋์์ ๋ฐ์ํ๋์ง ๊ฒํ ํ๋ ๊ฒ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค.
PERFORM ๋ฌธ ๋ฐ ๋ฃจํ ์ข ๋ฃ ์กฐ๊ฑด ๊ฒํ
COBOL์ PERFORM ๊ตฌ๋ฌธ์ ์ ์ฐ์ฑ์ ์ ๊ณตํ์ง๋ง, ์ ์คํ๊ฒ ์์ฑํ์ง ์์ผ๋ฉด ์ข ๋ฃ ์กฐ๊ฑด์ด ๋ชจํธํด์ง ์ ์์ต๋๋ค. ๊ฒํ ๋ฅผ ํตํด ์ข ๋ฃ ์กฐ๊ฑด์ด ์ ํจํ๊ณ , ๋๋ฌ ๊ฐ๋ฅํ๋ฉฐ, ๋ชจ๋ ํ์ค์ ์ธ ๋ฐ์ดํฐ ์๋๋ฆฌ์ค๋ฅผ ๋ฐ์ํ๋์ง ํ์ธํด์ผ ํฉ๋๋ค. ์ง๋์น๊ฒ ๋ณต์กํ๊ฑฐ๋ ๋์ ํ๋๊ทธ์ ์์กดํ๋ ์กฐ๊ฑด์ ํนํ ๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํ๊ฑฐ๋ ๋น์ฆ๋์ค ๊ท์น์ด ์งํํ ๋ ์ํ์ ์ด๋ํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, ๊ฐ๋ฐ์๋ ์นด์ดํฐ๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ์ฆ๊ฐํ๋์ง, ํ๋๊ทธ๊ฐ ์์ ์ ์ผ๋ก ์ ๋ฐ์ดํธ๋๋์ง, ๊ทธ๋ฆฌ๊ณ ์์ธ ์ํฉ์ด ์์ ํ๊ฒ ์ฒ๋ฆฌ๋๋์ง ํ์ธํด์ผ ํฉ๋๋ค. MOVE ๋๋ COMPUTE๊ฐ ๋จ ํ๋๋ง ์๋ชป ๋ฐฐ์น๋์ด๋ ์ข ๋ฃ ๋ก์ง์ด ์์๋์ด ๋ถํ์ํ CPU ์ฌ์ฉ๋์ด ๋ฐ์ํ๊ฑฐ๋ ํน์ ์กฐ๊ฑด์์ ๋ฌดํ ๋ฃจํ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
๋ฃจํ ๊ตฌ์กฐ, ์ค์ฒฉ, ์ข ๋ฃ ๋ ผ๋ฆฌ, I/O ๋ฐฐ์น์ ๋ํ ์ฃผ์๋ฅผ ๊ฒฐํฉํ๋ฉด ์๋ ์ฝ๋ ๊ฒํ ๋ฅผ ํตํด ํ๋ก๋์ ์ ์ ์ฉ๋๊ธฐ ์ ์ ๊ฐ์ฅ ๋น์ฉ์ด ๋ง์ด ๋๋ CPU ๋นํจ์จ์ฑ์ ๋ง์ด ํฌ์ฐฉํ์ฌ ๋์ฑ ์์ ์ ์ด๊ณ ์ ์ง ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํ COBOL ์ ํ๋ฆฌ์ผ์ด์ ์ ์ง์ํ ์ ์์ต๋๋ค.
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ์ ๋ํ ๋๊ตฌ ์ง์ ๊ฐ์ง ๋ฐฉ๋ฒ
์๋ ์ฝ๋ ๊ฒํ ๋ ๋งค์ฐ ์ค์ํ์ง๋ง, ์๊ฐ์ด ๋ง์ด ์์๋ ์ ์์ผ๋ฉฐ ๊ท๋ชจ๊ฐ ํฌ๊ฑฐ๋ ๋ณต์กํ COBOL ์์คํ ์์ ๋ฏธ๋ฌํ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ๊ฐ๊ณผํ๋ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค. ๋๊ตฌ ์ง์ ๋ฐฉ์์ CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ์ฐพ๋ ํ๋ก์ธ์ค์ ์ ํ์ฑ๊ณผ ๊ท๋ชจ๋ฅผ ๋ํฉ๋๋ค. ์ด๋ฌํ ๋ฐฉ๋ฒ์ ์ ์ฉ ๋ฉ์ธํ๋ ์ ์ฑ๋ฅ ๋๊ตฌ, ๋์ ์ถ์ ๊ธฐ๋ฅ, ์ ์ ์ฝ๋ ๋ถ์๊ธฐ๋ฅผ ํ์ฉํ์ฌ ์ด์ ํ๊ฒฝ์ด๋ ํ ์คํธ ํ๊ฒฝ์์ ๋ฌธ์ ๊ฐ ์๋ ํจํด์ ์ฒด๊ณ์ ์ผ๋ก ์๋ณํฉ๋๋ค.
๋ฉ์ธํ๋ ์ ์ฑ๋ฅ ๋ถ์ ๋๊ตฌ
ํน์ ๋ฉ์ธํ๋ ์ ์ฑ๋ฅ ๋ถ์ ๋๊ตฌ๋ COBOL ํ๋ก๊ทธ๋จ์์ ๋ฆฌ์์ค ์ฌ์ฉ๋์ด ๋ง์ ๋ถ๋ถ์ ํ์ ํ๋ ๋ฐ ๋๋ฆฌ ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ ์์ ์ด ์คํ๋๋ ๋์ ์์ธํ ์คํ ์งํ๋ฅผ ์์งํ์ฌ ์ด๋ค ์ค์ด๋ ๋จ๋ฝ์ด CPU ์๊ฐ์ ๊ฐ์ฅ ๋ง์ด ์๋ชจํ๋์ง ํ์ ํฉ๋๋ค.
์ฑ๋ฅ ๋ถ์๊ฐ๋ ์ด๋ค ํ๋ก๊ทธ๋จ์ด๋ ์์ ๋จ๊ณ๊ฐ ์์ ๊ธฐ์ค์ ์์ ๋ฒ์ด๋๋์ง ํ์ ํ ์ ์์ต๋๋ค. ๊ณผ๋ํ CPU ์ฌ์ฉ๋์ด ๋ฐ์ํ๋ ๋จ์ผ COBOL ๋ฌธ๋จ์ ์ข ์ข ์๋ชป ์ค๊ณ๋ ๋ฃจํ๋ ๋นํจ์จ์ ์ธ ๋ก์ง๊ณผ ๊ด๋ จ์ด ์์ต๋๋ค. ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ๋น์ฉ๊ณผ ๋ฐํ์์ ์ค์ด๋ ๋ฐ ๊ฐ์ฅ ํฐ ํจ๊ณผ๋ฅผ ๋ฐํํ๋ ํน์ ์ต์ ํ ์์ ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
์ด๋ฌํ ๋๊ตฌ๋ ์ผ๋ฐ์ ์ผ๋ก ๋ฉ์ธํ๋ ์ ์ํฌํ๋ก์ ํตํฉ๋๋ ํ๋ถํ ๋ณด๊ณ ์๋ฅผ ์ ๊ณตํ๋ฏ๋ก ๊ธฐ์ ์์ค์ ์ฑ๊ณผ ๊ด๋ฆฌ์ ํ์์ ์ธ ๋ถ๋ถ์ ๋๋ค.
COBOL ์ถ์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ๋์ ์ถ์
๋ง์ ๋ฉ์ธํ๋ ์ ํ๊ฒฝ์ ํ์ด ํ๋ก๊ทธ๋จ ์คํ์ ์ค์๊ฐ์ผ๋ก ๊ฐ์ํ ์ ์๋ ๋์ ์ถ์ ๊ธฐ๋ฅ์ ์ง์ํฉ๋๋ค. ์ถ์ ๊ธฐ๋ฅ์ ๋ฃจํ, ํ์ ํ๋ก๊ทธ๋จ ํธ์ถ, ์กฐ๊ฑด ํ๊ฐ์ ๋ชจ๋ ์ง์ ์ ๊ณผ ์ข ๋ฃ์ ์ ํฌ์ฐฉํ์ฌ ์คํ ๊ฒฝ๋ก๋ฅผ ๋ช ํํ๊ฒ ํ์ ํ ์ ์๋๋ก ํฉ๋๋ค.
์ถ์ ์ ํนํ ํ๋ก๋์ ํ๊ฒฝ๊ณผ ์ ์ฌํ ์ํฌ๋ก๋ ๋๋ ํน์ ๋ฐ์ดํฐ ํน์ฑ์์๋ง ๋ฐ์ํ๋ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ์ฌํํ๋ ๋ฐ ์ ์ฉํฉ๋๋ค. ์ค์ ๋ฐ๋ณต ํ์์ ์ ์ด ํ๋ฆ ๊ฒฐ์ ์ ํ์ธํจ์ผ๋ก์จ ํ์ ๋ฃจํ ๋์์ ๋ํ ๊ฐ์ ์ ๊ฒ์ฆํ๊ณ , ๊ฐ๋จํ ํ ์คํธ ๋ฐ์ดํฐ์์๋ ๋ํ๋์ง ์์ ์ ์๋ ๋ฌด์ ํ ์กฐ๊ฑด์ด๋ ๊ณผ๋ํ ์ค์ฒฉ์ ์ ์ํ๊ฒ ๋ฐ๊ฒฌํ ์ ์์ต๋๋ค.
์ถ์ ์ถ๋ ฅ์ ํตํด ํ์ ์ฑ๋ฅ ๊ฐ์ ์ด ๊ฐ์ฅ ํฐ ์ฐจ์ด๋ฅผ ๊ฐ์ ธ์ฌ ์ฝ๋์ ์ด๋ ์์น์ ์ ํํ๊ฒ ์ง์คํ ์ ์๋์ง ์ ์ ์์ต๋๋ค.
COBOL์ ์ ์ ์ฝ๋ ๋ถ์๊ธฐ ์ฌ์ฉ
์ ์ ์ฝ๋ ๋ถ์๊ธฐ๋ COBOL ์์ค ์ฝ๋๋ฅผ ์คํํ์ง ์๊ณ ์ค์บํ์ฌ ๋ณด์์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ์ ๊ณตํฉ๋๋ค. ๊น์ด ์ค์ฒฉ๋ PERFORM ๊ตฌ์กฐ, ๋๋ฝ๋ ์ข ๋ฃ ์กฐ๊ฑด, ์ต์ ํ๋์ง ์์ ๊ฒ์ ํจํด ๋ฑ CPU ๋ถํ๊ฐ ํฐ ๋ฃจํ๋ฅผ ์ ๋ฐํ๋ ๊ฒ์ผ๋ก ์๋ ค์ง ํจํด์ ๊ฐ์งํ๋๋ก ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
์ด๋ฌํ ๋ถ์๊ธฐ๋ ํ์ด ์ฌ๊ฐ๋์ ์ํฅ์ ๋ฐ๋ผ ์์ ์์ ์ ์ฐ์ ์์๋ฅผ ์ ํ๋ ๋ฐ ๋์์ด ๋๋ ์คํ ๊ฐ๋ฅํ ๋ณด๊ณ ์๋ฅผ ์์ฑํฉ๋๋ค. ๊ฐ๋ฐ ์ํฌํ๋ก ๋ฐ ์๋ํ๋ ํ์ดํ๋ผ์ธ์ ํตํฉํ์ฌ ๋๊ท๋ชจ ์ฝ๋๋ฒ ์ด์ค ์ ๋ฐ์ ๊ฑธ์ณ ํ์ค์ ์ผ๊ด๋๊ฒ ์ ์ฉํ ์ ์์ต๋๋ค.
์ ์ ๋ถ์์ ์ ์ฝ๋๊ฐ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ค์ํ๋๋ก ๋ณด์ฅํ๊ณ ๋นํจ์จ์ ์ธ ๋ฃจํ๋ฅผ ์กฐ๊ธฐ์ ์๋ณํ์ฌ ์ด์ ํ๊ฒฝ์์ ๋น์ฉ์ด ๋ง์ด ๋๋ ์ฑ๋ฅ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ ์ค์ด๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ๋์ ์ฑ๋ฅ ๋ฐ์ดํฐ์ ์ ์ ๋ถ์ ์ธ์ฌ์ดํธ๋ฅผ ๊ฒฐํฉํจ์ผ๋ก์จ ๊ธฐ์ ์ COBOL ์์คํ ์์ CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ ๋ฌธ์ ๋ฅผ ๊ฐ์งํ๊ณ ์๋ฐฉํ๊ธฐ ์ํ ๊ฐ๋ ฅํ ์ ๋ต์ ์๋ฆฝํ ์ ์์ต๋๋ค.
COBOL ๋ฃจํ๋ฅผ ์ํ ํ๋กํ์ผ๋ง ๋ฐ ๋ฒค์น๋งํน ์ ๋ต
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ์๋ณํ๊ณ ํด๊ฒฐํ๋ ๊ฒ์ ๊ฐ๋ ฅํ ํ๋กํ์ผ๋ง ๋ฐ ๋ฒค์น๋งํน ์์ด๋ ์๋ฒฝํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ ๋ต์ ํ์ด ํ์ค์ ์ธ ์ํฌ๋ก๋์์ ์ฝ๋๊ฐ ์ด๋ป๊ฒ ๋์ํ๋์ง ์ธก์ ํ๊ณ , ์ต์ ํ๋ฅผ ํตํด ๊ฐ์ ๋ ๋ถ๋ถ์ ์ ๋ํํ๊ณ , ๋ณ๊ฒฝ ์ฌํญ์ด ์ค์ ๋ก CPU ์ฌ์ฉ๋์ ์ค์ด๋์ง ๊ฒ์ฆํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ํจ๊ณผ์ ์ธ ํ๋กํ์ผ๋ง ๋ฐ ๋ฒค์น๋งํน์ ์ถ์์ ์ธ ์ฑ๋ฅ ๋ชฉํ๋ฅผ ๊ตฌ์ฒด์ ์ด๊ณ ์ถ์ ๊ฐ๋ฅํ ๊ฒฐ๊ณผ๋ก ์ ํํ์ฌ ์ง์์ ์ธ ์ ์ง ๊ด๋ฆฌ ๋ฐ ํ๋์ ๋ฐฉํฅ์ ์ ์ํฉ๋๋ค.
ํ์ด๋ฐ ์นด์ดํฐ๋ฅผ ์ฌ์ฉํ ์ฝ๋ ๊ณ์ธก
ํ ๊ฐ์ง ์ค์ฉ์ ์ธ ๊ธฐ๋ฒ์ COBOL ํ๋ก๊ทธ๋จ์ ์ฃผ์ ์น์ ์คํ ์๊ฐ์ ์ธก์ ํ๊ธฐ ์ํด ํ์ด๋ฐ ์นด์ดํฐ๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ๋๋ค. ๋ฃจํ๋ ๋ฌธ๋จ ์ฃผ๋ณ์ ์์ ๋ฐ ์ข ๋ฃ ์๊ฐ์ ์บก์ฒํจ์ผ๋ก์จ ๊ฐ๋ฐ์๋ ํด๋น ์น์ ์ ์คํ ์๊ฐ์ ์ ํํ๊ฒ ํ์ ํ ์ ์์ต๋๋ค.
์ด ์ ๊ทผ ๋ฐฉ์์ ์ถ๊ฐ ์ง๋จ ํ๋๋ฅผ ํฌํจํ๋๋ก ์ฝ๋๋ฅผ ์์ ํ ์ ์๋ ๊ฐ๋ฐ ๋๋ ํ ์คํธ ํ๊ฒฝ์์ ํจ๊ณผ์ ์ ๋๋ค. ํ์ ํ์ด๋ฐ ๊ฒฐ๊ณผ๋ฅผ ๋ถ์ํ์ฌ ์ถ๊ฐ ์ต์ ํ๊ฐ ํ์ํ ํซ์คํ์ ํ์ ํ ์ ์์ต๋๋ค. ๋ํ ์ฝ๋ ๊ณ์ธก์ ์ข ๋ฃ ์กฐ๊ฑด์ด ์์๋๋ก ์๋ํ๋์ง, ๊ทธ๋ฆฌ๊ณ ๋ฐ์ดํฐ ๋ณผ๋ฅจ ๋ณํ์ ๋ฐ๋ผ ์ฑ๋ฅ์ด ์ ํ๋์ง ์๋์ง ํ์ธํ๋ ๋ฐ์๋ ๋์์ด ๋ฉ๋๋ค.
ํ์ด๋ฐ ์นด์ดํฐ๋ ๋ฃจํ ์ฑ๋ฅ์ ๋ํ ๋ช ํํ ๊ทธ๋ฆผ์ ๊ตฌ์ถํ๊ณ ํ๋ ๋ ธ๋ ฅ์ ์ง์คํด์ผ ํ ๊ณณ์ ๋ํ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์์ฌ ๊ฒฐ์ ์ ์ง์ํ๋ ๊ฐํธํ๊ณ ์ ๋ ดํ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค.
์ต์ ํ ์ ํ CPU ์๋น๋ ๋น๊ต
๋นํจ์จ์ ์ธ ๋ฃจํ๋ฅผ ํ์ ํ๊ณ ๊ฐ์ ํ ํ์๋ ํด๋น ๋ณ๊ฒฝ ์ฌํญ์ด ์ค์ CPU ์ ๊ฐ ํจ๊ณผ๋ฅผ ์ ๊ณตํ๋์ง ์ ์ฆํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ์ฝ๋ ๋ณ๊ฒฝ ์ ํ์ CPU ์ฌ์ฉ๋์ ๋น๊ตํ๋ฉด ๋ฆฌํฉํ ๋ง์ ํจ๊ณผ๋ฅผ ํ์ธํ๊ณ ํ๊ท๋ฅผ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
ํ์ ๋ฐฐ์น ์์ ํ๊ณ ๊ธฐ๋ก, ์์คํ ์ฑ๋ฅ ๋ณด๊ณ ์ ๋๋ ๋ด๋ถ ์นด์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ๋ณ ์์ ์ CPU ์๊ฐ์ ์ถ์ ํ ์ ์์ต๋๋ค. ๋ํ์ ์ธ ๋ฐ์ดํฐ ์ธํธ๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ๋ฌ ๋ฒ์ ์คํ์ ์ ์คํ๊ฒ ๋น๊ตํ๋ ๊ฒ์ ์ ๋ ฅ ํฌ๊ธฐ๋ ์์คํ ๋ถํ์ ๋ณ๋์ฑ์ ๊ณ ๋ คํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์ด ๊ฒ์ฆ ๋จ๊ณ๋ ์ต์ ํ์ ๋ํ ํ์ ์ ๊ตฌ์ถํ๊ณ ์ดํด๊ด๊ณ์์ ๊ณต์ ํ ์ ์๋ ๋ช ํํ ์ ๊ฐ ๊ธฐ๋ก์ ์ ๊ณตํฉ๋๋ค. ๋ํ ์ด๋ค ์ข ๋ฅ์ ๋ณํ๊ฐ ๊ฐ์ฅ ํฐ ์ด์ ์ ๊ฐ์ ธ์ค๋์ง ํ์ ํ์ฌ ํฅํ ๊ฐ์ ๋ฐฉํฅ์ ์ ์ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ฐฐ์น ์์ ๋ฉํธ๋ฆญ์ ์ฌ์ฉํ์ฌ ๋ฌธ์ ๊ฐ ์๋ ์น์ ๋ถ๋ฆฌ
๊ฐ๋ณ ๋ฃจํ๋ฅผ ํ๋กํ์ผ๋งํ๋ ๊ฒ ์ธ์๋, ํ์ ์ ๋ฐ์ ์ธ ๋ฐฐ์น ์์ ์งํ๋ฅผ ๊ฒํ ํ์ฌ ์ฑ๋ฅ์ ๊ฐ์ฅ ํจ๊ณผ์ ์ผ๋ก ํฅ์์ํฌ ์ ์๋ ๋ถ๋ถ์ ํ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์์ ์คํ ์๊ฐ๊ณผ CPU ์ฌ์ฉ๋์ ๋ํ ๊ณผ๊ฑฐ ๊ธฐ๋ก์ ํตํด ์ด๋ค ํ๋ก์ธ์ค๊ฐ ์ง์์ ์ผ๋ก ๊ฐ์ฅ ๋ง์ ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉํ๋์ง ํ์ ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ณ ๋น์ฉ ์์ ์ ์ต์ ํ ๋ ธ๋ ฅ์ ์ง์คํจ์ผ๋ก์จ ํ์ ๋ ์ ์ ๋ ธ๋ ฅ์ผ๋ก ๋ ํฐ ์์คํ ์ ๋ฐ์ ์ด์ ์ ์ป์ ์ ์์ต๋๋ค.
์ด๋ฌํ ๊ด๋ฒ์ํ ๊ด์ ์ ์์๋ฐฉํธ์ ์ธ ํ๋๋ณด๋ค๋ ์ ๋ต์ ๊ณํ์ ์ฅ๋ คํฉ๋๋ค. ๋ํ ๋ชจ๋๋ฆฌ์ ๋ฃจํ๋ฅผ ๋ณ๋ ฌ ๋จ๊ณ๋ก ๋ถํ ํ๊ฑฐ๋ CPU ๊ฒฝํฉ์ ํผํ๊ธฐ ์ํด ๋ฐฐ์น ์ผ์ ์ ์ฌ๊ตฌ์ฑํ๋ ๋ฑ ์ํคํ ์ฒ ๋ณ๊ฒฝ์ ๊ฐ๋ฅ์ฑ์ ๊ฐ์กฐํฉ๋๋ค. ์ฑ๋ฅ์ ์ง์์ ์ด๊ณ ์ธก์ ๊ฐ๋ฅํ ๋ชฉํ๋ก ์ผ๊ณ ์ ์คํ ๋ฒค์น๋งํน์ ํตํด ๋ท๋ฐ์นจํจ์ผ๋ก์จ, ์กฐ์ง์ ๋ฐ์ดํฐ ์๊ณผ ๋น์ฆ๋์ค ์๊ตฌ๊ฐ ์ฆ๊ฐํ๋๋ผ๋ ์์ ์ ์ด๊ณ ํจ์จ์ ์ธ COBOL ์ฒ๋ฆฌ๋ฅผ ์ ์งํ ์ ์์ต๋๋ค.
COBOL์์ CPU ์ง์ฝ ๋ฃจํ์ ์ผ๋ฐ์ ์ธ ์์ธ
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ์ ๊ทผ๋ณธ ์์ธ์ ์ดํดํ๋ ๊ฒ์ ํจ์จ์ ์ด๊ณ ์ ์ง ๊ด๋ฆฌ๊ฐ ์ฉ์ดํ COBOL ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ์ด๋ฌํ ์์ธ์ ์ด๊ธฐ ๊ฐ๋ฐ ๋จ๊ณ์์ ๊ฐ๊ณผ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ง๋ง, ๋ฐ์ดํฐ ์์ด ์ฆ๊ฐํ๊ฑฐ๋ ๋ฐฐ์น ์ผ์ ์ด ์ด๋ฐํด์ง์ ๋ฐ๋ผ ์ฌ๊ฐํ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ์ผ๊ธฐํ ์ ์์ต๋๋ค. ์ด๋ฌํ ํจํด์ ํ์ ํ๋ฉด ๊ฐ๋ฐ์๋ ์ ์ฝ๋์์ ์ด๋ฌํ ํจํด์ ํผํ๊ณ ๊ฒํ ๋๋ ๋ฆฌํฉํ ๋ง ์์ ์ ํด๋น ํจํด์ ์ง์ค์ ์ผ๋ก ๋ค๋ฃฐ ์ ์์ต๋๋ค.
๋นํจ์จ์ ์ธ ์ ๋ ฌ ๋ฐ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ
CPU ์ฌ์ฉ๋์ด ๋์์ง๋ ๋น๋ฒํ ์์ธ ์ค ํ๋๋ ๋์ฉ๋ ๋ฐ์ดํฐ์ ์ ์ ๋ ฌํ๊ฑฐ๋ ๊ฒ์ํ๋ ๋ฐ ๋นํจ์จ์ ์ธ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. ๊ฐ๋ฐ์๋ ๋ ๋์ ๋ฐฉ๋ฒ์ด ์์์๋ ๋ถ๊ตฌํ๊ณ ์ ์ฒด ํ ์ด๋ธ์ ๊ฒ์ํ๋ ์ ํ ๊ฒ์์ ๊ตฌํํ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, ์ ๋ ฌ๋์ง ์์ ํ ์ด๋ธ์ ๋ฃจํ์์ ๋ฐ๋ณต์ ์ผ๋ก ์ค์บํ์ฌ ์ผ์นํ๋ ํญ๋ชฉ์ ์ฐพ๋ ๊ฒ์ ๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํจ์ ๋ฐ๋ผ ๊ฐ๋นํ ์ ์์ ์ ๋๋ก ๋น์ฉ์ด ๋ง์ด ๋ค ์ ์์ต๋๋ค. ํ ์ด๋ธ์ ๋ฏธ๋ฆฌ ์ ๋ ฌํ๊ณ ์ด์ง ๊ฒ์ ๊ธฐ๋ฒ์ ์ฌ์ฉํ๋ฉด ํ์ํ ๋น๊ต ํ์๋ฅผ ํฌ๊ฒ ์ค์ฌ ๋น์ฆ๋์ค ๋ก์ง์ ๋ณ๊ฒฝํ์ง ์๊ณ ๋ CPU ์๊ฐ์ ์ ์ฝํ ์ ์์ต๋๋ค.
PERFORM VARYING I FROM 1 BY 1 UNTIL I > TABLE-SIZE
IF TABLE-ENTRY(I) = SEARCH-VALUE
MOVE I TO RESULT-IDX
EXIT PERFORM
END-IF
END-PERFORM.
์ด๋ฌํ ์ ํ ๊ฒ์์ ์ธ๋ฑ์ค ๋๋ ์ด์ง ๊ฒ์ ๋ฐฉ๋ฒ์ผ๋ก ๋ฐ๊พธ๋ฉด ๋๊ท๋ชจ ๋ฐฐ์น ์คํ์ ๋ํ ํ์ฅ์ฑ์ด ํฅ์๋ฉ๋๋ค.
ํ ์ด๋ธ ์กฐํ์์ ์ธ๋ฑ์ฑ ๋ถ์กฑ
๊ณผ๋ํ CPU ์ฌ์ฉ๋์ ๋ ๋ค๋ฅธ ์์ธ์ ์ค์ ํ ์ด๋ธ์ ๋ํ ์ธ๋ฑ์ค๋ ์ก์ธ์ค๋ฅผ ์ ์งํ์ง ๋ชปํ๋ ๊ฒ์ ๋๋ค. ์ธ๋ฑ์ฑ์ด ์์ผ๋ฉด ๊ฐ ์กฐํ์ ์ ์ฒด ๊ฒ์์ด ํ์ํ๋ฉฐ, ์ด๋ฌํ ์กฐํ๊ฐ ๋ฃจํ ๋ด์์ ๋ฐ์ํ๋ฉด ๋น์ฉ์ด ๋น ๋ฅด๊ฒ ์ฆ๊ฐํฉ๋๋ค.
์ด๋ฌํ ๋ฌธ์ ๋ ์ค์ฒฉ ๋ฃจํ์์ ์ฌ๋ฌ ๋ฐ์ดํฐ ์์ค๋ฅผ ๊ฒฐํฉํ ๋ ์์ฃผ ๋ฐ์ํฉ๋๋ค. ๋ด๋ถ ๋ฃจํ๋ ์ธ๋ถ ๋ฃจํ์ ๋งค ๋ฐ๋ณต๋ง๋ค ์ ์ฒด ํ ์ด๋ธ์ ์ค์บํ์ฌ ์คํ ์๊ฐ์ด 2์ฐจ์ ์ผ๋ก ์ฆ๊ฐํ๊ฑฐ๋ ๊ทธ๋ณด๋ค ๋ ์ฌํด์ง ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ์ธ๋ฑ์ค ํ ์ด๋ธ์ ๋์ ํ๊ฑฐ๋ ๋ฃจํ ์คํ ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ ํํฐ๋งํจ์ผ๋ก์จ ๋ถํ์ํ ๋ฐ๋ณต์ ์ค์ด๊ณ ์ฒ๋ฆฌ ์๋๋ฅผ ํฌ๊ฒ ๋์ผ ์ ์์ต๋๋ค.
์ธ๋ฑ์ฑ์ CPU ์ฌ์ฉ๋์ ์ค์ผ ๋ฟ๋ง ์๋๋ผ ํฅํ ์ฝ๋๋ฅผ ๊ฒํ ํ๋ ๊ฐ๋ฐ์์๊ฒ ์๋๋ ๋ฐ์ดํฐ ์ก์ธ์ค ํจํด์ ๋ช ํํ ํ์ฌ ์ ์ง ๊ด๋ฆฌ๋ฅผ ๊ฐ์ํํฉ๋๋ค.
์ฌ๊ท ํธ์ถ ๋๋ ์ ์ด๋์ง ์๋ ๋ฃจํ ํ์ฅ
COBOL์ ์ผ๋ถ ํ๋ ์ธ์ด์ฒ๋ผ ์ฌ๊ท๋ฅผ ์ฌ์ฉํ์ง ์์ง๋ง, ๊ฐ๋ฐ์๋ ์ ๋๋ก ์ ์ด๋์ง ์์ PERFORM ํธ์ถ์ด๋ ํจ๊ณผ์ ์ผ๋ก ์ฌ๊ท์ ๋์์ ์์ฑํ๋ ๋ฃจํ ํ์ฅ์ ํตํด ์ ์ฌํ ํจํด์ ์ค์๋ก ์๋ฎฌ๋ ์ด์ ํ ์ ์์ต๋๋ค.
๋ช ํํ ์ข ๋ฃ ์กฐ๊ฑด ์์ด ๋ค๋ฅธ ๋ฃจํ๋ฅผ ํธ์ถํ๋ ๋ฃจํ๋ ์๋ํ ๊ฒ๋ณด๋ค ํจ์ฌ ๋ ๋ง์ ๋ฐ๋ณต์ ๋น ๋ฅด๊ฒ ์์ฑํ ์ ์์ต๋๋ค. ํนํ ๊ณ์ธต์ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ ๊ฐ๋ณ ๊น์ด ํ์ผ ํ์์ ์ฒ๋ฆฌํ ๋ ์ด๋ฌํ ๋ฌธ์ ๊ฐ ๋์ฑ ์ํํด์ง๋๋ค.
๊ฒํ ์๋ ์๋์น ์์ ๊ณ์ธต์ ๋ฐ๋ณต์ ์์ฑํ์ง ์๋๋ก PERFORM ๊ตฌ์กฐ์ ์ธ์ฌํ ์ฃผ์๋ฅผ ๊ธฐ์ธ์ฌ์ผ ํฉ๋๋ค. ์ข ๋ฃ ์กฐ๊ฑด์ ์ ์คํ๊ฒ ์ค๊ณํ๊ณ ํ์ค์ ์ธ ๋ฐ์ดํฐ ํฌ๊ธฐ๋ฅผ ์ฌ์ฉํ ๊ฒฌ๊ณ ํ ํ ์คํธ๋ฅผ ์ํํ๋ฉด ์ด๋ฌํ ํจํด์ด ์ด์ ํ๊ฒฝ์์ ์ฌ๊ฐํ CPU ๋ณ๋ชฉ ํ์์ผ๋ก ์ด์ด์ง๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
ํต์ ๋์ง ์๋ ํ์ฅ์ ํผํ๋ฉด ์ผ๊ด ์ฒ๋ฆฌ ์์ ์ ์์ธกํ ์ ์์ผ๋ฉฐ, ๋น์ฆ๋์ค ์๊ตฌ ์ฌํญ์ด ๋ณํํ๋๋ผ๋ COBOL ํ๋ก๊ทธ๋จ์ ํฌ๋ช ํ๊ณ ์ ์ง ๊ด๋ฆฌ ๊ฐ๋ฅํ๋ฉฐ ํจ์จ์ ์ผ๋ก ์ค๊ณํ๋ค๋ ์์น์ ๋ถํฉํฉ๋๋ค.
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ์ค์ด๊ธฐ ์ํ ์ต์ ํ ๊ธฐ์
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ์๋ณํ๋ฉด ๋ค์ ๋จ๊ณ๋ ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ํจ๊ณผ์ ์ธ ์ต์ ํ๋ฅผ ์ค๊ณํ๋ ๊ฒ์ ๋๋ค. COBOL ๊ฐ๋ฐ์๋ ๋ค์ํ ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ ๋ฐ๋ณต ํ์๋ฅผ ์ค์ด๊ณ , ๋ฐ์ดํฐ ์ก์ธ์ค ํจ์จ์ฑ์ ํฅ์์ํค๊ณ , ๋ก์ง์ ๋จ์ํํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ CPU ์ฌ์ฉ๋์ ์ค์ผ ๋ฟ๋ง ์๋๋ผ ์ฝ๋ ์ ์ง ๊ด๋ฆฌ์ ๋ณํํ๋ ๋น์ฆ๋์ค ์๊ตฌ์ ๋ํ ์ ์์ ์ฉ์ดํ๊ฒ ํฉ๋๋ค. ์ ์คํ๊ณ ์ง์ค์ ์ธ ์ต์ ํ๋ ๋๋์ ์ธ ์ฌ์์ฑ ์์ด๋ ์๋นํ ์ฑ๋ฅ ํฅ์์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.
์กฐ๊ธฐ ์ข ๋ฃ ๋ฐ ๋ฐ์ดํฐ ํํฐ๋ง์ ํตํ ๋ฃจํ ๋ฐ๋ณต ๊ฐ์
CPU ๋น์ฉ์ ์ค์ด๋ ๊ฐ์ฅ ๊ฐ๋จํ๊ณ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ ์ค ํ๋๋ ๋ฃจํ๊ฐ ์ค์ ๋ก ํ์ํ ์์ ๋ง ์ํํ๋๋ก ํ๋ ๊ฒ์ ๋๋ค. ์กฐ๊ธฐ ์ข ๋ฃ ์กฐ๊ฑด์ ์ถ๊ฐํ๋ฉด ๊ฒฐ๊ณผ๊ฐ ๋ฐ๊ฒฌ๋๋ ์ฆ์ ์ฒ๋ฆฌ๋ฅผ ์ค๋จํ์ฌ ๋ถํ์ํ ๋ฐ๋ณต์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
๋ฃจํ์ ๋ค์ด๊ฐ๊ธฐ ์ ์ ๋ฐ์ดํฐ๋ฅผ ํํฐ๋งํ๋ฉด ์ฒ๋ฆฌ๋๋ ๋ ์ฝ๋ ์๋ฅผ ์ค์ผ ์๋ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ๋ด๋ถ ๋ฃจํ ๋ด์์ ์กฐ๊ฑด์ ๋ฐ๋ณต์ ์ผ๋ก ์ ์ฉํ๋ ๋์ , ๋ ์ฝ๋๋ฅผ ํ ๋ฒ ์ฌ์ ๊ฒํ ํ์ฌ ์ ์ฒด ์์ ๋ถํ๋ฅผ ์ค์ผ ์ ์์ต๋๋ค.
PERFORM UNTIL END-OF-FILE
READ TRANSACTION-FILE INTO WS-RECORD
AT END
SET END-OF-FILE TO TRUE
NOT AT END
IF WS-STATUS = 'ACTIVE'
PERFORM PROCESS-ACTIVE
END-IF
END-READ
END-PERFORM.
์ด ์์์ ์ํ๋ฅผ ํํฐ๋งํ๋ฉด ๋ถํ์ํ๊ฒ ๋นํ์ฑ ๋ ์ฝ๋๋ฅผ ์ฒ๋ฆฌํ๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
๋ ๋์ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ๋ฃจํ ๋ค์ ์์ฑํ๊ธฐ
๊ธฐ๋ณธ ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ์ ํ๋ฉด ๋ ํฐ ์ ๊ฐ ํจ๊ณผ๋ฅผ ์ป์ ์ ์์ต๋๋ค. ๋์ฉ๋ ๋ฐ์ดํฐ์ธํธ์ ๋ํด ๋จ์ ์ ํ ๊ฒ์์ ์ฌ์ฉํ๋ ๋์ , ์ด์ง ๊ฒ์ ๋ก์ง์ผ๋ก ๋์ฒดํ๋ฉด ๋น๊ต ํ์๋ฅผ ํฌ๊ฒ ์ค์ผ ์ ์์ต๋๋ค. ํ ์ด๋ธ์ ๋ฏธ๋ฆฌ ์ ๋ ฌํ๋ฉด CPU ์ฌ์ฉ๋์ด ๋ค์ ์ฆ๊ฐํ ์ ์์ง๋ง, ๋ฐ๋ณต์ ์ธ ์กฐํ์์๋ ํฐ ํจ๊ณผ๋ฅผ ๋ณผ ์ ์์ต๋๋ค.
๋ง์ฐฌ๊ฐ์ง๋ก, ํด์ฑ ๊ธฐ๋ฒ์ด๋ ์ธ๋ฑ์ค๋ ์ก์ธ์ค ํจํด์ ์ฌ์ฉํ๋ฉด ์ค๋ณต ์ค์บ์ ์์ ํ ์ ๊ฑฐํ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ ๋ฐ์ดํฐ ์๊ณผ ๊ตฌ์กฐ์ ์ ํฉํ ์๊ณ ๋ฆฌ์ฆ์ ์ ํํ๋ ๋ฐ ์๊ฐ์ ํฌ์ํจ์ผ๋ก์จ COBOL ํ๋ก๊ทธ๋จ์ ํ์ฅ์ฑ๊ณผ ํฅํ ์ฑ์ฅ์ ๋ํ ๋ณต์๋ ฅ์ ๋์ผ ์ ์์ต๋๋ค.
์๊ณ ๋ฆฌ์ฆ ๊ฐ์ ์ ์ข ์ข ๋ ธ๋ ฅ์ ๋นํด ๊ฐ์ฅ ๋์ ์์ต์ ๊ฐ์ ธ๋ค์ฃผ๋๋ฐ, ํนํ ๋งค์ผ ๋ฐค ์๋ฐฑ๋ง ๊ฐ์ ๋ ์ฝ๋๋ฅผ ์ฒ๋ฆฌํ๋ ์ผ๊ด ์์ ์์ ๊ทธ๋ ์ต๋๋ค.
๋ฃจํ ์ธ๋ถ๋ก I/O ์์ ์ด๋
๋ฉ์ธํ๋ ์ ์์คํ ์์ ํ์ผ I/O๋ ํนํ ๋น์ฉ์ด ๋ง์ด ๋ค๋ฉฐ, READ ๋๋ WRITE ์์ ์ ์ข์ ๋ฃจํ ์์ ๋ฐฐ์นํ๋ฉด CPU ์๊ฐ์ ๋น ๋ฅด๊ฒ ์๋ชจํ ์ ์์ต๋๋ค. ๋ํ์ ์ธ ์ค์๋ ๋ด๋ถ ๋ฃจํ๋ฅผ ๋ฐ๋ณตํ ๋๋ง๋ค ๋ ์ฝ๋๋ฅผ ์ฝ๊ฑฐ๋ ์ถ๋ ฅ์ ์ฐ๋ ๊ฒ์ผ๋ก, ์ด๋ก ์ธํด ๋ถํ์ํ๊ฒ I/O ์์ ์ด ์ฆํญ๋๋ ๊ฒ์ ๋๋ค.
์ด๋ฌํ ํจํด์ ์ต์ ํํ๋ ค๋ฉด ๊ฐ๋ฅํ ๊ฒฝ์ฐ I/O๊ฐ ์ค์ ๋ฃจํ ์ธ๋ถ์์ ์ฒ๋ฆฌ๋๋๋ก ์ฝ๋๋ฅผ ์ฌ๊ตฌ์ฑํด์ผ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ์ฒ๋ฆฌ ์ ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ ์ฝ๋๋ฅผ ๋ฒํผ๋งํ๊ฑฐ๋ ์ง๊ณ ํ ๋๋์ผ๋ก ์ฐ๋ ๊ฒ์ด ํฌํจ๋ ์ ์์ต๋๋ค.
๊ฐ๋ฐ์๋ ํ๋ก๊ทธ๋จ ๋ด ๋ฐ์ดํฐ ํ๋ฆ์ ๊ฒํ ํ์ฌ ๋ฃจํ๊ฐ ๋น์ฉ์ด ๋ง์ด ๋๋ I/O ํธ์ถ์ ๋ฐ๋ณต์ ์ผ๋ก ํธ๋ฆฌ๊ฑฐํ๋ ๋์ ๊ณ์ฐ์ ์ง์คํ๋๋ก ํด์ผ ํฉ๋๋ค. I/O๋ฅผ ๋ฃจํ ์ธ๋ถ๋ก ์ด๋ํ๋ฉด ํ๋ก๊ทธ๋จ ์๋๊ฐ ๋นจ๋ผ์ง๊ณ ์คํ ๋น์ฉ์ด ์ ๊ฐ๋๋ฉฐ ํฅํ ์ ์ง ๊ด๋ฆฌ๋ฅผ ์ํด ์ดํดํ๊ธฐ๋ ๋ ์ฌ์์ง๋๋ค.
์ด๋ฌํ ์ต์ ํ ๊ธฐ์ ์ ๊ฒฐํฉํ๋ฉด ๋นํจ์จ์ ์ธ COBOL ์ฝ๋๋ฅผ ์์ ์ ์ด๊ณ ๊ณ ์ฑ๋ฅ ์์คํ ์ผ๋ก ๋ณํํ์ฌ ๋ฐ์ดํฐ ๋ณผ๋ฅจ์ด ๊ณ์ ์ฆ๊ฐํ๋ ์ํฉ์์๋ ์ผ๊ด ์ฒ๋ฆฌ ์ผ์ ์ ์ ์์ ๋ง์ถ๊ณ ๋น์ฉ์ ์ ์ดํ ์ ์์ต๋๋ค.
์ฌ๋ก ์ฐ๊ตฌ: CPU ์ง์ฝ ๋ฃจํ ์ต์ ํ์ ์ค์ ์ฌ๋ก
์ถ์์ ์ธ ๋ชจ๋ฒ ์ฌ๋ก๋ ์ค์ํ์ง๋ง, ์ค์ ๋ฌธ์ ํด๊ฒฐ์ ํ์ด ์ด๋ป๊ฒ ์ ์ฉํ๋์ง ์ง์ ํ์ธํ๋ ๊ฒ๋งํผ ์ข์ ๊ฒ์ ์์ต๋๋ค. ์๋๋ ๊ฐ๋ฐ์๋ค์ด COBOL ํ๋ก๊ทธ๋จ์์ CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ์ด๋ป๊ฒ ์๋ณํ๊ณ ์ต์ ํํ๋์ง ๋ณด์ฌ์ฃผ๋ ์ธ ๊ฐ์ง ์ค์ ์ฌ๋ก์ ๋๋ค. ๊ฐ ์๋๋ฆฌ์ค๋ ๊ฐ์ง๋ถํฐ ๊ฐ์ ๊น์ง์ ๊ณผ์ ์ ๋ณด์ฌ์ฃผ๋ฉฐ, ๋ค๋ฅธ ์์คํ ์๋ ์ ์ฉํ ์ ์๋ ๋ช ํํ ์ ๋ต์ ์ ์ํฉ๋๋ค.
์์ 1: ์ค๋ณต ๊ฒ์์ด ์๋ ์ค์ฒฉ ๋ฃจํ
ํ ๊ธ์ต ์๋น์ค ํ์ฌ๊ฐ ๊ฑฐ๋ ๊ธฐ๋ก์์ ๊ณ ๊ฐ ์์ก์ ์ ๋ฐ์ดํธํ๋ ์ผ๊ฐ ์ผ๊ด ์ฒ๋ฆฌ ์์ ์ ์คํํ์ต๋๋ค. ๋ชจ๋ํฐ๋ง ๋ณด๊ณ ์์ CPU ์๊ฐ์ด ๊ธ๊ฒฉํ ์ฆ๊ฐํ์ฌ ์์ ์ ์์ฝ๋ ์๊ฐ์ ์ด๊ณผํ ์ํ์ด ์๋ค๋ ๋ด์ฉ์ด ํ์๋์์ต๋๋ค.
์ฝ๋ ๊ฒํ ๊ฒฐ๊ณผ, ๊ฐ ๊ณ ๊ฐ์ ์ ์ฒด ๊ฑฐ๋ ํ ์ด๋ธ์ ์ค์บํ๋ ์ค์ฒฉ ๋ฃจํ๊ฐ ๋ฐ๊ฒฌ๋์์ต๋๋ค.
PERFORM VARYING I FROM 1 BY 1 UNTIL I > CUSTOMER-COUNT
PERFORM VARYING J FROM 1 BY 1 UNTIL J > TRANSACTION-COUNT
IF TRANSACTION(J) = CUSTOMER(I)
ADD AMOUNT(J) TO BALANCE(I)
END-IF
END-PERFORM
END-PERFORM.
ํ์ ํธ๋์ญ์ ์ ๋ฏธ๋ฆฌ ์ ๋ ฌํ๊ณ ์ธ๋ฑ์ค ๊ฒ์์ ๊ตฌํํ์ฌ ์ด๋ฅผ ์ต์ ํํ์ต๋๋ค. CPU ์ฌ์ฉ๋์ด 50% ์ด์ ๊ฐ์ํ์ฌ ์์ ์ด ํ ๋น๋ ์๊ฐ์ผ๋ก ๋ณต์๋์์ต๋๋ค.
์์ 2: ํ์ดํธ ๋ฃจํ ๋ด๋ถ์ ํ์ผ I/O
ํ ์๋งค์ ์ฒด๋ ์์ธ ๊ธฐ๋ก์ ์ฝ๊ณ ๋งค์ฅ๋ณ ์ด์ก์ ์์ฝํ์ฌ ํ๋งค ๋ณด๊ณ ์๋ฅผ ์์ฑํ๋ COBOL ๋ฐฐ์น ์์ ์ ๊ด๋ฆฌํ์ต๋๋ค. ์ฑ๋ฅ ๋ถ์ ๊ฒฐ๊ณผ, ํ๋ก์ธ์ค ์ค ๋์ CPU ์๊ฐ๊ณผ I/O ๋๊ธฐ ์๊ฐ์ด ๋ํ๋ฌ์ต๋๋ค.
์กฐ์ฌ ๊ฒฐ๊ณผ, ๋ชจ๋ ๋ฐ๋ณต ์์ ๋ด์์ READ ์์ ์ ์ํํ๋ ๋ฃจํ๊ฐ ๋ฐ๊ฒฌ๋์์ต๋๋ค.
PERFORM UNTIL EOF
READ SALES-FILE INTO WS-RECORD
AT END SET EOF TO TRUE
NOT AT END PERFORM PROCESS-RECORD
END-PERFORM.
๋ ์ฝ๋๋ฅผ ๋จผ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ฒํผ๋งํ ๋ค์, ๋ฉ์ธ I/O ๋ฃจํ ์ธ๋ถ์์ ๋๋์ผ๋ก ์ฒ๋ฆฌํ๋๋ก ์์ ์ ์ฌ์ค๊ณํ์ต๋๋ค. ์ด๋ฅผ ํตํด ๋์คํฌ ํ๋์ด ํฌ๊ฒ ๊ฐ์ํ์ฌ ์์ ์คํ ์๊ฐ์ด 40% ๋จ์ถ๋๊ณ , ์ต๋ ๋ฐฐ์น ์๊ฐ ๋์ CPU ์ฌ์ฉ๋์ด ๊ฐ์ํ์ต๋๋ค.
์์ 3: ์ ์ด๋์ง ์๋ ๋ฃจํ ์ข ๋ฃ ์กฐ๊ฑด
์ ๋ถ ๊ธฐ๊ด์ ์ผ๊ด ์ฒ๋ฆฌ ์์ ์ด CPU ์ฌ์ฉ๋ ํญ์ฃผ๋ก ์ธํด ์๊ธฐ์น ์๊ฒ ์คํจํ์ต๋๋ค. ๋ถ์ ๊ฒฐ๊ณผ, ๋์ ์ผ๋ก ์ค์ ๋ ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ๋ ๋ฃจํ๊ฐ ํน์ ์ ๋ ฅ ๋ฐ์ดํฐ์ ๋ฐ๋ผ ์ํ๋ฅผ ๋ณ๊ฒฝํ์ง ๋ชปํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค.
PERFORM UNTIL WS-FLAG = 'Y'
PERFORM PROCESS-STEP
END-PERFORM.
๊ฒํ ์๋ค์ ํน์ ๋ฐ์ดํฐ ์กฐ๊ฑด์ผ๋ก ์ธํด WS-FLAG๊ฐ 'Y'๋ก ์ค์ ๋์ง ์์ ๊ฑฐ์ ๋ฌดํ ๋ฃจํ๊ฐ ๋ฐ์ํ๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค. ๊ฒํ ์๋ค์ ์ข ๋ฃ ์กฐ๊ฑด์ด ํญ์ ์ถฉ์กฑ๋๋๋ก ๋ก์ง์ ๋ฆฌํฉํ ๋งํ๊ณ , ๋ฐ๋ณต ํ์๋ฅผ ์ ํํ๊ธฐ ์ํ ๋ฐฉ์ด ์นด์ดํฐ๋ฅผ ์ถ๊ฐํ์ต๋๋ค. CPU ์๊ฐ์ด ์์ ํ๋์๊ณ , ๋ฐฐ์น ์คํ ์คํจ ์ํ์ด ์ ๊ฑฐ๋์์ต๋๋ค.
์ด๋ฌํ ํจํด์ ๊ฒํ ํ ๊ฒฐ๊ณผ, ํ์ ๋๊ท๋ชจ ์ฌ์์ฑ ์์ด๋ ์๋ฏธ ์๋ ์ฑ๋ฅ ํฅ์์ ๋ฌ์ฑํ ์ ์์์ต๋๋ค. ์ด๋ฌํ ์ฌ๋ก๋ค์ ๊ฐ๋ฐ์์ ์ด์ ์ง์ ๊ฐ์ ๊ธด๋ฐํ ํ๋ ฅ, ์ ๊ธฐ์ ์ธ ์ฑ๊ณผ ๊ฒํ , ๊ทธ๋ฆฌ๊ณ COBOL ์์คํ ์ ์ฅ๊ธฐ์ ์ผ๋ก ์์ ์ ์ด๊ณ ๋น์ฉ ํจ์จ์ ์ผ๋ก ๊ตฌ์ถํ๋ ค๋ ๋ ธ๋ ฅ์ ๊ฐ์น๋ฅผ ๋ณด์ฌ์ค๋๋ค. ์ด๋ฌํ ๊ตํ์ ์ง์์ ์ผ๋ก ์ ์ฉํ๋ฉด ๋ฐฐ์น ์์ ์ ์์ธก ๊ฐ๋ฅํ๊ฒ ์ ์งํ๊ณ , ๋น์ฆ๋์ค ์ผ์ ์ ๋ง์ถฐ ์กฐ์ ํ๋ฉฐ, ๊ณ ํ์ง ์ํฐํ๋ผ์ด์ฆ ์์คํ ์ ์ ์ง ๊ด๋ฆฌํ๋ค๋ ์ง์์ ์ธ ์ฌ๋ช ์ ๋ฌ์ฑํ ์ ์์ต๋๋ค.
COBOL์์ CPU ์ง์ฝ์ ๋ฃจํ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํ ๋ชจ๋ฒ ์ฌ๋ก
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ๋ฐฉ์งํ๋ ๊ฒ์ ์ด์ ํ๊ฒฝ์์ ์ฑ๋ฅ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ธฐ ํจ์ฌ ์ ๋ถํฐ ์์๋ฉ๋๋ค. ๋ช ํํ ์ฝ๋ฉ ํ์ค์ ์ ์ฉํ๊ณ , ์ ๊ธฐ์ ์ธ ๊ฐ์ฌ๋ฅผ ์ค์ํ๊ณ , ํจ๊ณผ์ ์ธ ๋ชจ๋ํฐ๋ง ์ ๋ต์ ํ์ฉํจ์ผ๋ก์จ ๊ฐ๋ฐํ์ ์ด๋ฌํ ๋นํจ์จ์ฑ์ ์ ์ด์ ๋ฐฉ์งํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ชจ๋ฒ ์ฌ๋ก๋ ๋ฐ์ดํฐ ์๊ณผ ๋น์ฆ๋์ค ์๊ตฌ ์ฌํญ์ด ๋ณํํ๋๋ผ๋ ์ผ๊ด๋ ํ์ง์ ์ ์งํ๊ณ , ์ด์ ์ํ์ ์ค์ด๋ฉฐ, ๋ฐฐ์น ์ฒ๋ฆฌ์ ์์ ์ฑ์ ์ ์งํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
CPU ์ง์ฝ์ ๋ฃจํ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํ ์ฝ๋ฉ ํ์ค
๊ฐ๋ ฅํ ์ฝ๋ฉ ํ์ค์ ์ ์ฉํ๋ ๊ฒ์ ๋นํจ์จ์ ์ธ ๋ฃจํ๋ฅผ ๋ฐฉ์งํ๋ ๊ฐ์ฅ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ ์ค ํ๋์ ๋๋ค. ํ์ค์ ๋ฃจํ ๊ตฌ์กฐ, ์ข ๋ฃ ์กฐ๊ฑด ๋ฐ ์ค์ฒฉ ๊น์ด์ ๋ํ ๋ช ํํ ๊ธฐ๋์น๋ฅผ ์ ์ํด์ผ ํฉ๋๋ค.
์๋ฅผ ๋ค์ด, ํ์ ๊ฐ๋ฅํ ๊ฒฝ์ฐ ์กฐ๊ธฐ ์ข ๋ฃ๋ฅผ ์๋ฌดํํ๊ณ , ๋ถํ์ํ ์ค์ฒฉ ๋ฃจํ๋ฅผ ์ง์ํ๋ฉฐ, ์ฌ์ ํํฐ๋ง ์์ด ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ธํธ๋ฅผ ๋ฐ๋ณตํ๋ ๋ชจ๋ ์ฝ๋์ ๋ํ ์ ๋น์ฑ์ ์๊ตฌํ ์ ์์ต๋๋ค. ๊ฒํ ์๋ ๋ชจ๋ ๋ฃจํ์ ์ข ๋ฃ ์กฐ๊ฑด์ด ์์ธก ๊ฐ๋ฅํ๊ณ ์ ๋ขฐํ ์ ์๋์ง ํ์ธํ์ฌ CPU ์ฌ์ฉ๋์ด ๋ฌด์ ํ์ผ๋ก ์ฆ๊ฐํ๋ ๊ฒ์ ๋ฐฉ์งํด์ผ ํฉ๋๋ค.
๋ฌธ์ํ์ ๊ต์ก ๋ํ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ๊ฐ๋ฐ์์๊ฒ ์ผ๋ฐ์ ์ธ ํจ์ ๊ณผ ๊ฒ์ฆ๋ ์ต์ ํ ๊ธฐ๋ฒ์ ๊ต์กํจ์ผ๋ก์จ, ์กฐ์ง์ ์ ์ ํ์๋ ์ฒ์๋ถํฐ ํจ์จ์ ์ธ COBOL ์ฝ๋๋ฅผ ์์ฑํ ์ ์๋๋ก ์ง์ํ ์ ์์ต๋๋ค.
์ ๊ธฐ ์ฑ๊ณผ๊ฐ์ฌ
์๋ฌด๋ฆฌ ์ ์ค๊ณ๋ ์์คํ ์ด๋ผ๋ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋น์ฆ๋์ค ๊ท์น์ด ๋ณ๊ฒฝ๋๊ณ ๋ฐ์ดํฐ๊ฐ ์ฆ๊ฐํจ์ ๋ฐ๋ผ ๋นํจ์จ์ฑ์ด ๋์ ๋ ์ ์์ต๋๋ค. ์ ๊ธฐ์ ์ธ ์ฑ๋ฅ ๊ฐ์ฌ๋ ํ์ด ์ฌ๊ฐํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ธฐ ์ ์ ์๋ก์ด ๋ฌธ์ ๋ฅผ ํ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๊ฐ์ฌ์๋ ๋ฐฐ์น ์์ ํ๊ณ ๊ธฐ๋ก ๊ฒํ , CPU ์๊ฐ์ ๊ณผ๊ฑฐ ๊ธฐ์ค์ ๊ณผ ๋น๊ต, ๊ทธ๋ฆฌ๊ณ ๋น์ฉ์ด ๋์ ์ฝ๋ ์น์ ์ถ์ ๋ฑ์ด ํฌํจ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ์์คํ ์์ค ๊ฒํ ์ ํน์ ์ฝ๋ ๊ฒ์ฌ๋ฅผ ๊ฒฐํฉํ๋ฉด ๋ฃจํ์ ํจ์จ์ฑ๊ณผ ํ์ฅ์ฑ์ ์ ์งํ ์ ์์ต๋๋ค.
ํ์ ๋ฆฌ์์ค ์๋ชจ๊ฐ ๊ฐ์ฅ ๋ง๊ฑฐ๋ ๋ฐฐ์น ์ผ์ ์ ๋ง์ถ๋ ๋ฐ ์ค์ํ ์์ ์ ๋ํด ๊ฐ์ฌ ์ฐ์ ์์๋ฅผ ์ ํ ์ ์์ต๋๋ค. ๊ฐ์ฌ๋ฅผ ์ผ์์ ์ธ ์ ๋ฌด๋ก ์ผ์์ผ๋ก์จ ์กฐ์ง์ ์์์น ๋ชปํ ์ฑ๊ณผ ๋ฌธ์ ๋ฐ์ ์ํ์ ์ค์ผ ์ ์์ต๋๋ค.
์ฌ์ ์๋ฐฉ์ ๊ฐ์ง๋ฅผ ์ํ ๋ชจ๋ํฐ๋ง ๋๊ตฌ
ํจ๊ณผ์ ์ธ ๋ชจ๋ํฐ๋ง์ CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ฅผ ์กฐ๊ธฐ์ ํฌ์ฐฉํ๋ ๋ฐ ํ์ํ ์ง์์ ์ธ ๊ฐ์์ฑ์ ์ ๊ณตํฉ๋๋ค. ๋ฉ์ธํ๋ ์ ํ๊ฒฝ์ ํ๋ถํ ๋ก๊น ๋ฐ ์ฑ๋ฅ ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํ์ฌ ์ด๋ค ์์ ์ด๋ ๋จ๊ณ๊ฐ CPU ์๊ฐ์ ๊ณผ๋ํ๊ฒ ์๋ชจํ๋์ง ํ์ ํ ์ ์์ต๋๋ค.
๋ชจ๋ํฐ๋ง ๋์๋ณด๋์ ์๋ ์๋ฆผ์ ์ด์ํ์ด ๋น์ ์์ ์ธ ์ถ์ธ๋ ๋ฆฌ์์ค ์ฌ์ฉ๋์ ๊ธ๊ฒฉํ ์ฆ๊ฐ๋ฅผ ํ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์ด๋ฌํ ์ธ์ฌ์ดํธ๋ฅผ ๊ฐ๋ฐ ์ํฌํ๋ก์ ํตํฉํจ์ผ๋ก์จ ํ์ ๋ฌธ์ ๊ฐ ์๋ ๋ฃจํ๋ฅผ ์ ์ํ๊ฒ ์กฐ์ฌํ๊ณ ํด๊ฒฐํ ์ ์์ต๋๋ค.
์ฌ์ ์๋ฐฉ์ ๋ชจ๋ํฐ๋ง์ ๋จ์ํ ๋ฌธ์ ๋ฐ์ ํ ๋ฌธ์ ๋ฅผ ํฌ์ฐฉํ๋ ๊ฒ์ด ์๋๋ผ, ์์คํ ํ์ง์ ์ง์์ ์ผ๋ก ๊ฐ์ ํ๋ ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ๊ตฌ์ถํ๋ ๊ฒ์ ๋๋ค. ํํํ ์ฝ๋ฉ ํ์ค ๋ฐ ์ ๊ธฐ์ ์ธ ๊ฐ์ฌ์ ํจ๊ป ๋ชจ๋ํฐ๋ง์ ์ค์ํ๋ฉด, CPU ๋ถํ๊ฐ ์ฌํ ๋ฃจํ๋ฅผ ๋ฐฉ์งํ๊ณ ๊ณ ์ฑ๋ฅ COBOL ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์งํ๋ ํฌ๊ด์ ์ธ ์ ๋ต์ ์ด์์ด ๋ฉ๋๋ค.
์ฌ์ฉ SMART TS XL COBOL ์ฑ๋ฅ ๋ถ์์ ์ํด
COBOL ์์คํ ์์ ๊ณ ์ฑ๋ฅ๊ณผ ๋น์ฉ ํจ์จ์ฑ์ ๋ณด์ฅํ๋ ๊ฒ์ ๋ง์ ์กฐ์ง์๊ฒ ์ฌ๊ฐํ๊ณ ์ง์์ ์ธ ๊ณผ์ ์ ๋๋ค. ์ด๋ฌํ ์์คํ ์ ์์ญ ๋ ์ ๊ฑธ์ณ ๋ฐ์ ํด ์์ผ๋ฉฐ, ๋ ๊ฑฐ์ ์ฝ๋, ์๋ก์ด ๋น์ฆ๋์ค ๊ท์น, ๊ทธ๋ฆฌ๊ณ ๋์์์ด ์ฆ๊ฐํ๋ ๋ฐ์ดํฐ ์์ด ๋ค์์ฌ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด๋ฌํ ๋ณต์ก์ฑ์ ๋ฐฐ์น ์์ ์ด ํ๋ก๋์ ๊ท๋ชจ๋ก ์คํ๋ ๋๋ง ๋ํ๋๋ ๋ฏธ๋ฌํ ๋นํจ์จ์ฑ์ ๊ฐ์ถฐ, ์๋์ฐ ๋๋ฝ, ์์์น ๋ชปํ CPU ๋น์ฉ, ์ฌ์ง์ด๋ ์์ ํ ์คํจ๋ก ์ด์ด์ง ์ ์์ต๋๋ค.
์๋ ๊ฒํ ์ ์ ํต์ ์ธ ํ ์คํธ๋ ์ค์ํ์ง๋ง, ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ์กฐ๊ธฐ์ ๋ฐ๊ฒฌํ๋ ๋ฐ ์ด๋ ค์์ ๊ฒช๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๊ฐ๋ฐ์๋ ์ข ๋ฃ ์กฐ๊ฑด์ด ์ข์ง ์์ ์ค์ฒฉ ๋ฃจํ๋ฅผ ๊ฐ๊ณผํ๊ฑฐ๋, ์งง์ ๋ฐ๋ณต ์์ ๋ด์์ ์์ฒ ๋ฒ ์ํ๋๋ ํ์ผ I/O๋ฅผ ์์์ฐจ๋ฆฌ์ง ๋ชปํ ์ ์์ต๋๋ค. ๋ฐ์ ๋ฉ์ธํ๋ ์ ๊ฐ๋ฐ ํ๊ฒฝ์์๋ ์ด๋ฌํ ์ค์๊ฐ ์ฝ๊ฒ ๋ฐ์ํ์ง๋ง, ์ผ๋จ ํ๋ก๋์ ํ๊ฒฝ์ ์ง์ ํ๋ฉด ์ถ์ ํ๊ธฐ๊ฐ ์ด๋ ต์ต๋๋ค.
SMART TS XL ๋นํจ์จ์ ์ธ ํจํด ๊ฐ์ง๋ฅผ ์๋ํํ๊ณ , ์กฐ์ง์ ์ฝ๋ฉ ํ์ค์ ์ ์ฉํ๋ฉฐ, ๊ฐ๋ฐ์๊ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ธฐ ์ ์ ํด๊ฒฐํ ์ ์๋ ๋ช ํํ๊ณ ์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ๋ฅผ ์ ๊ณตํจ์ผ๋ก์จ ์ด๋ฌํ ๊ณผ์ ๋ฅผ ํด๊ฒฐํ๋ ํฌ๊ด์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ์ ๊ณตํฉ๋๋ค. ์ ์ ๋ถ์์ ๊ธฐ์กด ์ํฌํ๋ก์ ์ง์ ํตํฉํจ์ผ๋ก์จ, SMART TS XL COBOL ๊ฐ๋ฐ์ ๋ชจ๋ ๋จ๊ณ์ ์ฑ๋ฅ๊ณผ ํ์ง์ ๋ด์ฅํ์ฌ ์ฅ๊ธฐ์ ์ธ ์์ ์ฑ, ์ ์ง ๊ด๋ฆฌ์ฑ ๋ฐ ์ด์ ๋น์ฉ ๊ด๋ฆฌ๋ฅผ ์ง์ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ ๋ฐ ๋นํจ์จ์ ์ธ ํจํด์ ์๋ ๊ฐ์ง
SMART TS XL ๊ณผ๋ํ CPU ์ฌ์ฉ๋์ ์ ๋ฐํ๋ ์ผ๋ฐ์ ์ธ ํจํด์ ์ฐพ๊ธฐ ์ํด COBOL ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ค์บํ๋ ๋ฐ ํ์ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๊น์ด ์ค์ฒฉ๋ ๋ฃจํ, ๋๋ฝ๋๊ฑฐ๋ ์ทจ์ฝํ ์ข ๋ฃ ์กฐ๊ฑด, ๋ฐ๋ณต๋๋ I/O ๋๋ ๋ฐ๋ณต ๋ด์์ ๋ฐ์ํ๋ ๊ณ ๋น์ฉ ๊ณ์ฐ์ด ํฌํจ๋ฉ๋๋ค.
์๋ฅผ ๋ค์ด, ๋ค์๊ณผ ๊ฐ์ ์ํํ ๊ตฌ์กฐ๋ฅผ ์๊ฐํด ๋ณด์ธ์.
PERFORM VARYING I FROM 1 BY 1 UNTIL I > MAX-CUSTOMERS
PERFORM VARYING J FROM 1 BY 1 UNTIL J > MAX-ORDERS
PERFORM PROCESS-ORDER
END-PERFORM
END-PERFORM.
์ด๋ฌํ ์ฝ๋๋ ๋ฐ์ดํฐ ๋ณผ๋ฅจ์ด ์ฆ๊ฐํจ์ ๋ฐ๋ผ ๊ด๋ฆฌ ๊ฐ๋ฅํ ์์ค์์ ์น๋ช ์ ์์ค๊น์ง ํ์ฅ๋ ์ ์์ต๋๋ค. SMART TS XL ํ์ด ๋ฐฐํฌ ์ ์ ์ด๋ฌํ ํจํด์ ์๋์ผ๋ก ํ์ํ์ฌ ํด๊ฒฐํ ์ ์๋๋ก ํฉ๋๋ค.
์ฑ๋ฅ ๋ฌธ์ ๋ฐฉ์ง๋ฅผ ์ํ ์ฝ๋ฉ ํ์ค ์ํ
๋จ์ํ ๋ฌธ์ ๋ฅผ ๊ฐ์งํ๋ ๊ฒ ์ด์์ผ๋ก, SMART TS XL ์กฐ์ง์ด ์ฑ๋ฅ์ ์ค์ ์ ๋ ๋ง์ถคํ ์ฝ๋ฉ ํ์ค์ ์ ์ํ๊ณ ์ ์ฉํ ์ ์๋๋ก ์ง์ํฉ๋๋ค. ์ด๋ฅผ ํตํด ํ์ ์ค์ฒฉ ๊น์ด ์ ํ, ์กฐ๊ธฐ ์ข ๋ฃ ์ฌ์ฉ, ๋ฃจํ ๋ด ์ค๋ณต I/O ๋ฐฉ์ง ๋ฑ์ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ผ๊ด๋๊ฒ ์ ์ฉํ ์ ์์ต๋๋ค.
๊ถ์ฅ๋๋ ๊ตฌ์กฐ์ ์:
PERFORM UNTIL END-OF-FILE OR WS-FLAG = 'STOP'
READ FILE-INTO WS-RECORD
IF MATCH-CONDITION
MOVE 'STOP' TO WS-FLAG
END-IF
END-PERFORM.
์๋ํ๋ ์ํ์ ํตํด SMART TS XL ์๋ ๊ฒํ ์ ๋ถ๋ด์ ์ค์ด๊ณ ๋ชจ๋ ํ์์ด ๋์ผํ ๋์ ๊ธฐ์ค์ ๋ฐ๋ฅด๋๋ก ๋ณด์ฅํฉ๋๋ค.
๊ธฐ์กด ๋ฉ์ธํ๋ ์ ๊ฐ๋ฐ ์ํฌํ๋ก์์ ํตํฉ
SMART TS XL ๊ธฐ์กด ๋๊ตฌ ๋ฐ ํ๋ก์ธ์ค์ ํธํ๋๋๋ก ์ค๊ณ๋์ด ๋์ ์ด ์ํํ๊ณ ์ค์ฉ์ ์ ๋๋ค. ํ์ CI/CD ํ์ดํ๋ผ์ธ์ ์ ์ ๋ถ์์ ํฌํจํ๊ณ , ์ฝ๋ ์ปค๋ฐ ์ ์๋์ผ๋ก ๊ฒ์ฌ๋ฅผ ์คํํ๋ฉฐ, ๋ฌธ์ ๊ฐ ๊ฐ์ง๋๋ฉด ๋ณํฉ์ ์ฐจ๋จํ ์ ์์ต๋๋ค.
์ด๋ฌํ ๊ธด๋ฐํ ํตํฉ์ ํตํด ์ฑ๊ณผ ์ ๊ฒ์ ๋งํ์ ์ถ๊ฐ๋๋ ๊ฒ์ด ์๋๋ผ ์ผ์์ ์ธ ๊ฐ๋ฐ ๊ณผ์ ์ ํ์์ ์ธ ๋ถ๋ถ์ด ๋ฉ๋๋ค. ๋ฌธ์ ๋ฅผ ์กฐ๊ธฐ์ ๋ฐ๊ฒฌํ๊ณ ํด๊ฒฐํ๋ ์ ์ ์ ์ธ ๋ฌธํ๊ฐ ์กฐ์ฑ๋์ด, ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ํ์ง๊ณผ ํ ์์ฐ์ฑ์ด ๋ชจ๋ ํฅ์๋ฉ๋๋ค.
์ฑ๊ณผ ์ต์ ํ๋ฅผ ์ํ ์คํ ๊ฐ๋ฅํ ๋ณด๊ณ ์ ์์ฑ
๋ฌด์จ ์ธํธ SMART TS XL ์ด ๊ธฐ๋ฅ์ ๋จ์ํ ๋ฌธ์ ๋ฅผ ์ฐพ์๋ด๋ ๋ฅ๋ ฅ๋ฟ๋ง ์๋๋ผ ๋ณด๊ณ ์์ ๋ช ํ์ฑ๊ณผ ์ ์ฉ์ฑ์์๋ ๋ฐ์ด๋ฉ๋๋ค. ๋ชจํธํ ๊ฒฝ๊ณ ๋ก ๊ฐ๋ฐ์๋ค์ ์๋ํ๋ ๋์ , ์ ํํ๊ณ ์ดํดํ๊ธฐ ์ฌ์ด ํผ๋๋ฐฑ์ ์ ๊ณตํฉ๋๋ค.
์ด๋ฌํ ๋ณด๊ณ ์๋ ์ ํํ ๋ผ์ธ ์ฐธ์กฐ๋ฅผ ํตํด ๋ฌธ์ ๊ฐ ๋๋ ํจํด์ ๋ถ์ํ๊ณ , ํจํด์ด ๋นํจ์จ์ ์ธ ์ด์ ๋ฅผ ์ค๋ช ํ๋ฉฐ, ๋ช ํํ ๊ฐ์ ์ ๋ต์ ์ ์ํฉ๋๋ค. ํ์ ํจ๊ณผ์ ์ธ ์์ ์ฌํญ์ ์ฐ์ ์์๋ฅผ ์ฝ๊ฒ ์ ํ๊ณ , ์๊ฐ ๊ฒฝ๊ณผ์ ๋ฐ๋ฅธ ์งํ ์ํฉ์ ์ถ์ ํ๋ฉฐ, ์ดํด๊ด๊ณ์์๊ฒ ๊ฐ์น์ ๋ํ ๊ตฌ์ฒด์ ์ธ ์ฆ๊ฑฐ๋ฅผ ์ ์ํ์ฌ ์ต์ ํ ํ๋ก์ ํธ์ ์ ๋น์ฑ์ ์ ์ฆํ ์ ์์ต๋๋ค.
๋จ์ํ ์๋ฐ ์ฌํญ์ ๋์ดํ๋ ๋์ , SMART TS XL ์ ๊ณต ํ๋์ ์ํ ์์ฌ์ ์ ๋ถ์ ๊ฒฐ๊ณผ๋ฅผ ํตํด ์ฑ๋ฅ ์ํ์ด ์ด๋์ ์๋์ง, ๊ทธ๋ฆฌ๊ณ ์ด๋ฅผ ์ด๋ป๊ฒ ํด๊ฒฐํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์์ง์ ๋ํ ๊ณตํต๋ ์ดํด๋ฅผ ๋ฐํ์ผ๋ก, ํ ๊ฐ์ ์ ๋ณด์ ๊ธฐ๋ฐํ ๊ณํ ์๋ฆฝ๊ณผ ํจ๊ณผ์ ์ธ ํ์ ์ ์ง์ํฉ๋๋ค. ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์์ ๊ฐ์ฅ ๊น๋ค๋ก์ด ๊ธฐ์ ํ๊ฒฝ์์๋ COBOL ์์คํ ์ด ๋ฐ์ด๋ ์ฑ๋ฅ, ์์ ์ฑ, ๊ทธ๋ฆฌ๊ณ ์ง์ ๊ฐ๋ฅ์ฑ์ ์ ์งํ๋๋ก ๋ณด์ฅํฉ๋๋ค.
ํจ์จ์ ์ด๊ณ ์์ ์ ์ธ COBOL ์์คํ ๋ณด์ฅ
COBOL ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฑ๋ฅ์ ์ต์ ํํ๋ ๊ฒ์ ๋จ์ํ CPU ์ฌ์ดํด์ ์ ์ฝํ๋ ๊ฒ๋ง์ด ์๋๋๋ค. ์ค์ํ ๋ฐฐ์น ์์ ์ด ์ ์์ ์คํ๋๋๋ก ํ๊ณ , ์ด์ ๋น์ฉ์ ์ ๊ฐํ๋ฉฐ, ๊ธฐ์ ์ด ๋งค์ผ ์์กดํ๋ ์์ ์ฑ์ ์ ์งํ๋ ๊ฒ์ ๋๋ค. CPU ์ฌ์ฉ๋์ด ๋ง์ ๋ฃจํ๋ ๋ ๊ฑฐ์ COBOL ํ๊ฒฝ์์ ๊ฐ์ฅ ์ง์์ ์ด๊ณ ๋น์ฉ์ด ๋ง์ด ๋๋ ๊ณผ์ ์ค ํ๋์ด์ง๋ง, ๊ฒฐ์ฝ ํผํ ์ ์๋ ๋ฌธ์ ๋ ์๋๋๋ค.
์ ์คํ ์ฝ๋ ์ค๊ณ , ์ฒด๊ณ์ ์ธ ์ฝ๋ ๋ฆฌ๋ทฐ , ๊ทธ๋ฆฌ๊ณ ์ต์ ์ ์ ๋ถ์ ๋๊ตฌ๋ฅผ ๊ฒฐํฉํจ์ผ๋ก์จ ํ์ ์ด๋ฌํ ๋ฌธ์ ๋ค์ ์ฒด๊ณ์ ์ผ๋ก ์๋ณํ๊ณ ํด๊ฒฐํ ์ ์์ต๋๋ค. ๋ฃจํ ํจ์จ์ฑ์ ์ด์ ์ ๋ง์ถ ์ฝ๋ฉ ํ์ค์ ๊ฐ๋ฐ์์๊ฒ ๋ช ํํ ๊ธฐ๋์น๋ฅผ ์ค์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์๋ ๋ฐ ์๋ ๊ฐ์ฌ๋ฅผ ํตํด ์ด๋ฌํ ํ์ค์ด ์ผ๊ด๋๊ฒ ์ ์ฉ๋๋์ง ํ์ธํ ์ ์์ผ๋ฉฐ, ๋์ ์ถ์ ๋ฐ ํ๋กํ์ผ๋ง์ ์ค์ ๋์์ ๋ํ ์ฌ์ธต์ ์ธ ๊ฐ์์ฑ์ ์ ๊ณตํฉ๋๋ค.
COBOL ์ฑ๋ฅ์ ๋ํ ์ง์ ๊ฐ๋ฅํ ์ ๊ทผ ๋ฐฉ์์ ์ฌํ ๋์์ ์ธ ์์ ์ด์์ ๊ฒ์ ์๊ตฌํฉ๋๋ค. ๋ชจ๋ ๊ฐ๋ฐ ๋จ๊ณ์์ ์ ์ฌ์ ์ธ ๋ณ๋ชฉ ํ์์ ๋ํ ์ธ์์ ๊ตฌ์ถํ๊ณ ๊ฐ๋ฐ์, ์ฑ๋ฅ ๋ถ์๊ฐ, ์ด์ํ ๊ฐ์ ํ์ ์ ์ด์งํด์ผ ํฉ๋๋ค. ํจ์จ์ฑ์ ๊ณต๋์ ์ฑ ์์ผ๋ก ์ธ์ํจ์ผ๋ก์จ ์กฐ์ง์ ์์ ์๋น๋ฅผ ๋์ฑ ํจ๊ณผ์ ์ผ๋ก ๊ด๋ฆฌํ๊ณ , ๋น์ฉ์ ์ ๊ฐํ๋ฉฐ, ๋น์ฆ๋์ค์ ํ์์ ์ธ ์์ ์ ์ธ ์์คํ ์ ์ ์งํ ์ ์์ต๋๋ค.
์ด๋ฌํ ์ ์ ์ ์ฑ๋ฅ ๊ด๋ฆฌ ๋ ธ๋ ฅ์ COBOL ์ ํ๋ฆฌ์ผ์ด์ ์ด ์์ผ๋ก๋ ์๋ ๊ฐ ๊ฐ์น๋ฅผ ์ ๊ณตํ ์ ์๋๋ก ๋ณด์ฅํฉ๋๋ค. ์ด์์ ์์ธก ๊ฐ๋ฅ์ฑ, ํ์ฅ์ฑ, ๊ทธ๋ฆฌ๊ณ ๋ณํํ๋ ์๊ตฌ์ ๋ํ ๋์๋ ฅ์ ์ ์งํจ์ผ๋ก์จ ๊ธฐ์ ์ ๋ชฉํ๋ฟ๋ง ์๋๋ผ ๋ ๊ด๋ฒ์ํ ๋น์ฆ๋์ค ์ฐ์ ์์๋ฅผ ์ง์ํฉ๋๋ค.