บทที่ 1 บทนํา - staff.informatics.buu...
TRANSCRIPT
คณะวิทยาการสารสนเทศ มหาวิทยาลัยบูรพา
Ver. 1.0
บทที่ 1บทนํา
887130 Platform Technology887130 Platform Technology
2 จาก 45บทที่ 1 บทนํา
� รายละเอียดวิชา� ความรู้พื้นฐานเกี่ยวกับระบบคอมพิวเตอร์และ
สถาปัตยกรรม� วิวัฒนาการของคอมพิวเตอร์� สถาปัตยกรรมคอมพวิเตอร์� การแบ่งประเภทของสถาปัตยกรรมคอมพิวเตอร์
สารบัญ
บทที่ 1 บทนํา
รายละเอียดวิชา
4 จาก 45บทที่ 1 บทนํา
รายละเอียดวิชา
� 887130 แพลตฟอร์มเทคโนโลยี � (Platform Technology)� 3(3-0-6)� จุดมุ่งหมายของรายวิชา� เพื่อให้นิสิตมีความรู้พื้นฐานทางด้านสถาปัตยกรรมคอมพิวเตอร์และ
ระบบปฏิบัติการ� เพื่อเป็นการเตรียมความพร้อมสําหรับรายวิชาขั้นสูง เช่น เทคโนโลยี
เครือข่ายคอมพิวเตอร์ ระบบฐานข้อมูล เป็นต้น � นิสิตสามารถนําทฤษฎีที่ได้ศึกษาไปประยุกต์ใช้เพื่อแก้ปัญหาในด้าน
เทคโนโลยีสารสนเทศที่เกี่ยวข้องได้
5 จาก 45บทที่ 1 บทนํา
รายละเอียดวิชา
� คําอธิบายรายวิชา � สถาปัตยกรรมของระบบคอมพิวเตอร์และระบบปฏิบัติการ ประกอบด้วย
ส่วนประกอบทางฮาร์ดแวร์ ได้แก่ หน่วยประมวลผล ระบบบัสและระบบเชื่อมต่ออุปกรณ์ภายนอก หน่วยความจํา หน่วยเก็บบันทึกข้อมูล ระบบปฏิบัติการ ได้แก่ ส่วนประกอบและหน้าที่ภายในระบบปฏิบัติการ การบริหารระบบ เช่น การจัดการบัญชีผู้ใช้ บริการการพิมพ์ การจัดสรรพื้นที่เก็บบันทึกข้อมูล การเฝ้าสังเกตและการแก้ไขปัญหา
� Computer architecture and operating systems: hardware components and functions: such as the processor, bus, memory, and storage subsystems. The components and functions of operating systems are also covered using popular OS’s as case studies. System administration concepts such as user accounting, printing service, storage allocation, monitoring and troubleshooting
6 จาก 45บทที่ 1 บทนํา
รายละเอียดวิชา
� เกณฑ์การประเมิน � การเข้าชั้นเรียน การตรงต่อเวลา 10%
� การมีส่วนร่วมในชั้นเรียน ความซื่อสัตย์สุจริต 5%
� การแก้ปัญหาโดยการทําโครงงาน 25%
� สอบทฤษฎีกลางภาค 30%
� สอบทฤษฎีปลายภาค 30%
7 จาก 45บทที่ 1 บทนํา
รายละเอียดวิชา
� ตําราและเอกสาร� Hennessy and Patterson. Computer Architecture: A Quantitative Approach, 4th Edition , Morgan Kaufmann, 2006.
� Abraham Silberschatz, Peter B. Galvin and Greg Gagne. Operating System Concepts, 8th Edition, Wiley, 2008.
� เอกสารที่เกี่ยวกับสถาปัตยกรรมคอมพิวเตอร์และระบบปฏิบัติการ
8 จาก 45บทที่ 1 บทนํา
รายละเอียดวิชา
� ติดต่อ� ประจักษ์ จิตเงินมะดัน
� ห้อง 507 อาคารสิรินธร
� http://www.informatics.buu.ac.th/~prajaks
� ชั่วโมงให้คําปรึกษา▪ ทุกวันพุธ 10.00 – 12.00 น. หรือตามนัดหมาย
บทที่ 1 บทนํา
ความรู้พื้นฐานเกี่ยวกับระบบคอมพิวเตอร์และสถาปัตยกรรม
10 จาก 45บทที่ 1 บทนํา
ความรู้พื้นฐานเกี่ยวกับระบบคอมพิวเตอร์และสถาปัตยกรรม� คอมพิวเตอร์ คือ � อุปกรณ์ที่ประกอบด้วยชิน้ส่วนทางอิเล็กทรอนิกส์ที่สามารถ
รับข้อมูลและชุดคําสั่ง (Program) ในรูปแบบที่เครื่องรับได้
� แล้วนํามาประมวลผล (Process) ข้อมูลตามชุดคําสั่งเพื่อแก้ปัญหา หรือทําการคํานวณที่สลับซับซ้อนจนได้ผลลัพธ์ตามต้องการ
� และยังสามารถบันทึก หรือแสดงผลลัพธ์เหล่านั้นได้
11 จาก 45บทที่ 1 บทนํา
ประเภทของคอมพิวเตอร์
� คอมพิวเตอร์ระดับยิ่งใหญ่ หรือซุปเปอร์คอมพิวเตอร์ (Super Computer)
� คอมพิวเตอร์ระดับใหญ่ หรือเมนเฟรมคอมพิวเตอร์ (Mainframe Computer)
� คอมพิวเตอร์ระดับเล็ก หรือมินิคอมพิวเตอร์ (Mini Computer) � คอมพิวเตอร์สว่นบุคคล หรือพีซี (PC : Personal Computer) � คอมพิวเตอร์ขนาดสมุดบันทึก หรือโน้ตบุ้ค (Notebook Computer) � คอมพิวเตอร์ที่ทําหน้าที่เลขาส่วนตัว หรือพีดีเอ (PDA : Personal
Digital Assistant) � คอมพิวเตอร์เครือข่าย หรือเน็ต (Net)
12 จาก 45บทที่ 1 บทนํา
องค์ประกอบระบบคอมพิวเตอร์
� ฮาร์ดแวร์ (Hardware) � ซอฟต์แวร์ (Software)� บุคลากร (Pepleware) � ข้อมูล (Data)� กระบวนการทํางาน (Procedure)
13 จาก 45บทที่ 1 บทนํา
ฮาร์ดแวร์ (Hardware)
� หน่วยรับข้อมูลหรืออินพุต (Input Unit) � หน่วยประมวลผลกลางหรือซีพยีู (CPU : Central
Processing Unit) � หน่วยเก็บข้อมูล (Storage)� หน่วยเก็บข้อมูลหรือความจําหลัก (Primary Storage หรือ
Main Memory) � หน่วยเก็บข้อมูลสํารอง (Secondary Storage)
� หน่วยแสดงข้อมูลหรือเอาต์พุต (Output Unit)
14 จาก 45บทที่ 1 บทนํา
ฮาร์ดแวร์ (Hardware)
� โครงสร้างระบบคอมพิวเตอร์ด้านฮาร์ดแวร์
15 จาก 45บทที่ 1 บทนํา
ฮาร์ดแวร์ (Hardware)
� โครงสร้างระบบคอมพิวเตอร์ด้านอินพุต/เอาต์พุต
16 จาก 45บทที่ 1 บทนํา
ซอฟต์แวร์ (Software)
� ซอฟต์แวรร์ะบบ (System Software) � โปรแกรมระบบปฏบิัติการ (OS : Operating System)
� โปรแกรมแปลภาษาคอมพิวเตอร์ (Translator Program)
� ยูทิลิตี้หรือโปรแกรมอรรถประโยชน์ (Utility Program) � ซอฟต์แวรส์ําเร็จรูป (Package) � ซอฟต์แวรป์ระยุกต์ (Application Software)
17 จาก 45บทที่ 1 บทนํา
บุคลากร (Peopleware)
� ผู้ออกแบบและวิเคราะห์ระบบ (System Analysis and Design)
� โปรแกรมเมอร์ (Programming) � ผู้บริหารฐานข้อมูล (Database Administrator :
DBA) � ผู้ปฏิบัติการ (Operator) � ผู้ใช้ (User) � ผู้บริหาร (Manager)
18 จาก 45บทที่ 1 บทนํา
ข้อมูล (Data)
� ข้อมูลเป็นสิ่งที่ต้องบันทึกลงไปในคอมพิวเตอร์ พร้อมกับโปรแกรมที่นักคอมพิวเตอร์ได้เขียนไปเพื่อผลิตผลลพัธ์ที่ต้องการออกมา � หน่วยที่เล็กที่สุดของข้อมูลได้แก่ บิต (Bit)� 8 บิตจะประกอบกันเป็นตัวอักขระ (Character) ซึ่งจะประกอบไปด้วย
ตัวอักษร ตัวเลข และสัญลักษณ์ต่างๆ � เมื่อนําตัวอักขระเหล่านี้มารวมกัน จะทําให้ได้หน่วยข้อมูลที่ใหญ่ขึ้น คือ ฟิลด์
(Field) � เมื่อนําฟิลด์หลายๆ ฟิลด์มาประกอบกันจะเป็น เรกคอร์ด (Record) � และถ้านําหลายๆ เรกคอร์ดมาประกอบกันจะเป็นไฟล์ (File) � และหากนําหลายๆ ไฟล์มารวมกัน ในลักษณะที่มีความสัมพันธ์กันในแต่ละ
ไฟล์ด้วยจะกลายเป็นฐานข้อมูล (Database)
19 จาก 45บทที่ 1 บทนํา
กระบวนการทํางาน (Procedure)
� องค์ประกอบด้านนี้หมายถึง กระบวนการทํางานเพื่อให้ได้ผลลัพธ์ตามต้องการ � ในการทํางานกับคอมพิวเตอร์ผู้ใช้จําเป็นต้องทราบขั้นตอน
การทํางานเพื่อให้ได้งานที่ถูกต้องและมีประสิทธิภาพ ซึ่งอาจจะมีขั้นตอนสลับซับซ้อนหลายขั้นตอน
� ดังนั้นจึงมีความจําเป็นตอ้งมีคู่มือปฏบิัติงาน เช่น คู่มือผู้ใช้ (user manual) หรือคู่มือผู้ดูแลระบบ (operation manual)
20 จาก 45บทที่ 1 บทนํา
วิวัฒนาการของคอมพิวเตอร์
� ลูกคิด (Abacus) � John Napier สร้างเครื่องคดิเลขที่เรียกว่า “Napier’s Bones”� Henry Briggs คิดค้นแบบคํานวณตารางลอการิทึม � Edmund Gunter ได้นําค่าลอการิทึมของ Briggs มาแกะลงไม้บรรทัด� William Aughtred ได้นําความคิดของ Gunter มาสร้าง Slide
Rule ซึ่งถือว่าเป็นคอมพิวเตอร์อนาลอกเครื่องแรกของโลก � Charles Babbage สร้างเครื่องมือที่ชื่อ “อนาไลติคลั เอ็นจิน“
(Analytical engine) � Ada Lovelace โปรแกรมเมอร์คนแรกของโลก => ภาษา Ada
21 จาก 45บทที่ 1 บทนํา
วิวัฒนาการของคอมพิวเตอร์
22 จาก 45บทที่ 1 บทนํา
วิวัฒนาการของคอมพิวเตอร์
23 จาก 45บทที่ 1 บทนํา
วิวัฒนาการของคอมพิวเตอร์
24 จาก 45บทที่ 1 บทนํา
วิวัฒนาการของคอมพิวเตอร์
25 จาก 45บทที่ 1 บทนํา
ยุคคอมพิวเตอร์
� ยุคที่ 1 (1944 - 1958) ยุคแห่งหลอดสุญญากาศ � ใช้หลอดสุญญากาศ ความต้านทาน Capacitor และ สวิตช ์
ในยุคนั้นคอมพิวเตอร์ใชค้ํานวณค่าในตารางการยิงปืนใหญ่ ใชภ้าษาเครื่องจักร ใช้กําลังไฟฟ้ามาก
� ยุคที่ 2 (1959 - 1964) ยุคแห่งทรานซิสเตอร์ � ใช้ Transistor เป็นวงจรหลักของระบบคอมพิวเตอร์ ใช้
ภาษาระดับสูง มีการคํานวณทางคณิตศาสตร์แบบ Floating point
26 จาก 45บทที่ 1 บทนํา
ยุคคอมพิวเตอร์
� ยุคที่ 3 (1964 - 1974) ยุคแห่ง IC � เริ่มใช้วงจรรวม (Integrated circuit) มีหน่วยความจําเป็นแบบ
Semi conductor ขนาดของคอมพิวเตอร ์จึงมีขนาดเล็กลง � ยุคที่ 4 (1975 - ปัจจุบนั) ยุคแห่ง LSI (Large Scale
Integration)� ใช้เทคโนโลยี VLSI ประยุกต์ใช้เครือข่ายคอมพิวเตอร์ เพื่อเพิ่ม
ประสิทธิภาพการทํางานให้สูงขึ้น ในยุคนีข้นาดของคอมพิวเตอร์จะมีขนาดเล็กลงมาก
27 จาก 45บทที่ 1 บทนํา
ยุคคอมพิวเตอร์
� ยุคที่ 5 (ปัจจุบัน - xxxx) ยุคปัญญาประดิษฐ์� VLSI, ULSI, Parallel System, Intelligence คาดว่าใน
ยุคนี้จะเป็นยุคของปัญญาประดิษฐ ์การทํางานของระบบคอมพิวเตอร์จะทํางานแบบขนานกันไป มีความเร็วในการประมวลผลสูงมาก
28 จาก 45บทที่ 1 บทนํา
ยุคคอมพิวเตอร์
� ยุคที่ 5 (ปัจจุบัน - xxxx) ยุคปัญญาประดิษฐ์� VLSI, ULSI, Parallel System, Intelligence คาดว่าใน
ยุคนี้จะเป็นยุคของปัญญาประดิษฐ ์การทํางานของระบบคอมพิวเตอร์จะทํางานแบบขนานกันไป มีความเร็วในการประมวลผลสูงมาก
29 จาก 45บทที่ 1 บทนํา
สถาปัตยกรรมคอมพิวเตอร์
� สถาปัตยกรรมคอมพวิเตอร์ คือ � การออกแบบส่วนต่างๆ ของระบบคอมพิวเตอร์ ให้สามารถ
ทํางานได้อย่างมีประสิทธิภาพ ประกอบด้วยส่วนสําคัญ 2 ส่วน ดังนี้
� สถาปัตยกรรมคําสั่ง ISA (Instruction Set Architecture)
� สถาปัตยกรรม Hardware (Hardware System Architecture)
30 จาก 45บทที่ 1 บทนํา
สถาปัตยกรรมคอมพิวเตอร์
� สถาปัตยกรรมคําสั่ง ISA� (Instruction Set Architecture)� คือ รูปแบบของการกําหนดภาษาที่ใช้กับเครื่องคอมพิวเตอร์
ตระกูลตา่ง ๆ ▪ ภาษาที่ใช้กับเครื่องประกอบกันขึ้นเป็นโปรแกรม หากโปรแกรมที่
เขียนใช้กับเครื่องรุ่นเก่า และสามารถ Run กับเครื่องรุ่นใหม่ในตระกูลเดียวกันได้ เรียกเครื่องรุ่นใหม่นั้นได้ว่า "Upward Compatibility" ▪ ในทางกลับกันหากโปรแกรมที่เขียนขึ้นใช้กับเครื่องรุ่นใหม่แล้วไม่
สามารถ Run กับเครื่องรุ่นเก่ากว่าได้ เรียกคอมพิวเตอร์รุ่นเก่านั้นว่า "Downward Compatibility"
31 จาก 45บทที่ 1 บทนํา
สถาปัตยกรรมคอมพิวเตอร์
� สถาปัตยกรรม Hardware (Hardware System Architecture)� คือ ฮาร์ดแวร์ (Hardware) ของระบบคอมพิวเตอร์ เช่น CPU, Storage
System, Bus และ I/O System โดยพฒันาขึ้นมาตามลําดับจากแนวคิดระบบคอมพิวเตอร์พื้นฐานของ Von Neumann ประกอบด้วย Hardware พื้นฐาน คือ ▪ 1. CPU (Central Processing Unit) หน่วยประมวลผลกลาง▪ 2. Main Memory System ระบบหน่วยความจํา▪ 3. Input/Output System ระบบอุปกรณ์นําเข้าข้อมูล/อุปกรณ์แสดงผลลพัธ์
ข้อมูล▪ 4. Interconnection System (BUS) ระบบเชื่อมต่ออุปกรณ์ต่าง ๆ เข้าด้วยกัน
32 จาก 45บทที่ 1 บทนํา
สถาปัตยกรรมคอมพิวเตอร์
� สถาปัตยกรรม Hardware (Hardware System Architecture)
� นอกจากนั้นคําสั่งจะต้อง Execute ทีละคําสั่งตามลําดับ และมีเส้นทาง (BUS) ในการขนถ่ายข้อมลูอย่างน้อย 1 เส้นทางระหว่าง CPU กับ Main Memory เรียกว่า "Von Neumann"
33 จาก 45บทที่ 1 บทนํา
สถาปัตยกรรมคอมพิวเตอร์
� โปรเซสเซอร์ เป็นส่วนทํางานของระบบ ซึ่งจะเอ็กซิคิวต์โปรแกรมโดยการประมวลผลทางคณิตศาสตร์และลอจิกข้อมูลต่าง ๆ โปรเซสเซอร์เป็นเพียงส่วนเดียวที่สร้างข้อมูลใหม่โดยการรวมหรือแก้ไขข้อมูลเดิม
� หน่วยความจํา ทําหน้าที่เก็บข้อมูลจนกว่าจะมีการร้องขอจากส่วนอื่น ๆ ของระบบ ในขณะที่ทํางานปกติ หน่วยความจําจะส่งคําสั่งและข้อมูลให้กับโปรเซสเซอร์
� อุปกรณ์อินพุต/เอาต์พุต ทําหน้าที่ถ่ายโอนข้อมูลระหว่างองค์ประกอบภายนอกและภายใน
34 จาก 45บทที่ 1 บทนํา
สถาปัตยกรรมคอมพิวเตอร์
� ช่องการสื่อสารข้อมูล ที่เชื่อมระบบเข้าด้วยกัน อาจจะเป็นการเชื่อมต่อระหว่างอุปกรณ์ 2 อุปกรณ์ หรือเป็นสวิตชท์ี่ซับซ้อนที่เชื่อมต่อหลาย ๆ องค์ประกอบเข้าด้วยกัน
� แผนภาพ PMS แทนส่วนประกอบหลักของเครื่องคอมพิวเตอร์ส่วนบุคคลแอปเปิลแมคอินทอช (Apple Macintosh) � ในตอนต้นจะใช้ช่องสื่อสารข้อมูลเดี่ยวที่เรียกว่า “บัส” (bus) ซึ่งจะ
เชื่อมต่อส่วนประกอบหลักทั้งหมด � จนเมื่อบัสเป็นสวิตช์จะมีส่วนประกอบเพียงสองส่วนที่สามารถติดต่อ
ซึ่งกันและกันในเวลาหนึง่ ๆ เมื่อสวิตช์ถูกสร้างขึ้นเพื่อการถ่ายโอนข้อมูลของอุปกรณ์อินพุต/เอาต์พุต
35 จาก 45บทที่ 1 บทนํา
สถาปัตยกรรมคอมพิวเตอร์
� แผนภาพ PMS
36 จาก 45บทที่ 1 บทนํา
โมเดลของ von Neumann
� เครื่องของ von Neumann ทั้งโปรแกรมและข้อมูลจะใช้หน่วยความจําเดียวกัน � โดยจะมี program counter (PC) ชี้คําสั่งปัจจุบันใน
หน่วยความจํา
� เมื่อไม่มีคําสั่ง branch จะมีการดึงคําสั่งจากหน่วยความจํามาประมวลผลเรียงลําดับเรื่อยไปจนกว่าจะหมดคําสั่ง
37 จาก 45บทที่ 1 บทนํา
โมเดลของ von Neumann
38 จาก 45บทที่ 1 บทนํา
โครงสร้างพื้นฐานของโปรเซสเซอร์
39 จาก 45บทที่ 1 บทนํา
ระดับชั้นของเครื่องคอมพิวเตอร์
40 จาก 45บทที่ 1 บทนํา
การแบ่งประเภทของสถาปัตยกรรมคอมพิวเตอร์
� ระบบคอมพิวเตอร์ประเภท SISD (Single Instruction Single Data Stream)
� เป็นระบบคอมพิวเตอร์ที่มีโปรเซสเซอร์เดียว ที่ Execute 1 คําสั่ง ต่อ 1 ชุดข้อมูล
41 จาก 45บทที่ 1 บทนํา
การแบ่งประเภทของสถาปัตยกรรมคอมพิวเตอร์
� ระบบคอมพวิเตอร์ประเภท MISD (Multiple Instruction Single Data Stream) � เป็นระบบคอมพิวเตอร์ที่มีโปรเซสเซอร์หลายตัวที่ทํางานพร้อมกัน
หรือที่เรียกว่า ทํางานขนานกัน (Parallel processing) โดยที่โปรเซสเซอร์แต่ละตัวจะมีคําสั่งที่ใช้ execute ของตนเอง แต่ทั้งหมดจะใช้ชุดข้อมูลชุดเดียว
� เช่น ให้คํานวณ f(x) = 2*x^2+4 จะสามารถทําตามขั้นตอนได้ดังนี้คือ ▪ 1. หาค่า X^2▪ 2. คูณผลลัพธ์ของ X^2 ด้วย 2▪ 3. บวกค่า 4 เข้ากับ 2*X^2
42 จาก 45บทที่ 1 บทนํา
การแบ่งประเภทของสถาปัตยกรรมคอมพิวเตอร์
� ระบบคอมพิวเตอร์ประเภท MISD (Multiple Instruction Single Data Stream) � นั่นคือ เมื่อ P1 execute คําสั่งเสร็จก็จะส่งผลลัพธ์ให้ P2� และเมื่อ P2 Execute คําสั่งเสร็จก็จะส่งผลลัพธ์ให้กับ P3 � P3 ก็จะ execute คําสั่ง โดยนําผลลัพธ์ที่ออกจาก P2 มา
ประมวลผล � เมื่อ P1 และ P2 ทํางานหรือ Execute คําสั่งเสร็จ ก็จะรับ
ข้อมูลและคําสั่งชุดต่อไปมาทําการ Execute ต่อไปเรื่อย ๆ
43 จาก 45บทที่ 1 บทนํา
การแบ่งประเภทของสถาปัตยกรรมคอมพิวเตอร์
� ระบบคอมพิวเตอร์ประเภท SIMD (Single Instruction Multiple Data Stream)� เป็นการทํางานของโปรเซสเซอร์หลายตัว ที่ทํางานพร้อมกัน
โดยโปรเซสเซอร์ทุกตัวใช้คําสั่งเดียวกันหมด ▪ เช่น การบวกเลข Matrix ที่ประกอบด้วยข้อมูล 3 ชุด ที่ต้อง
นํามาบวกกัน โดยจะต้องคํานวณข้อมูล 3 ชุด คือ X1 + Y1, X2 + Y2 และ X3 + Y3 เพื่อให้ได้ผลลพัธ์ออกมา ซึ่งโปรเซสเซอร์ทุกตัว execute คําสั่งมาบวกพร้อมกันทั้งหมด โดยมีข้อมูลต่างกัน
44 จาก 45บทที่ 1 บทนํา
การแบ่งประเภทของสถาปัตยกรรมคอมพิวเตอร์
� ระบบคอมพิวเตอร์ประเภท MIMD (Multiple Instruction Multiple Data Stream)� เป็นระบบคอมพิวเตอร์ที่ใช้โปรเซสเซอร์หลายตวั แต่
เชื่อมโยงกันเพื่อช่วยกันทํางาน
� โปรเซสเซอร์แต่ละตัวใชค้ําสั่งและข้อมูลของตนเอง
� การ execute คําสั่งของงาน แต่ละโปรเซสเซอร์เป็นอิสระต่อกัน แต่อาศัยการประสานงานที่ดี
45 จาก 45บทที่ 1 บทนํา
คําถาม