Jump to content


Windows Server 2012

- - - - -

อยากทราบว่าถ้าคอมพิวเตอร์ไม่มี OS จะทำงานได้หรือไม


  • Please log in to reply
17 replies to this topic

#1 samart

samart

    Newbie

  • Validating
  • Pip
  • 4 posts

Posted 03 July 2006 - 10:27 AM

อยากทราบว่าถ้าคอมพิวเตอร์ไม่มี OS จะทำงานได้หรือไม่ เพราะอะไรครับ ถ้าไม่มี คอมพิวเตอร์จะทำงานเป็นแบบไหนครับ

ขอบคุณครับ

#2 Bomber

Bomber

    Topgun

  • Topgun
  • 2321 posts

Posted 03 July 2006 - 11:30 AM

เรียนคุณ samart

ไม่ทราบว่าคำถามนี้ถามเพราะนึกสงสัย หรือถามเพราะเป็นงาน หรือถามเพราะเรื่องเรียนครับ
อย่างไรก็ดี คำถามนี้ สามารถตอบด้วยความรู้พื้นฐานด้านวิทยาการคอมพิวเตอร์
ซึ่งผมแนะนำให้ลองค้นคว้าด้วยตัวเองดูก่อนดีไหมครับ เพื่อเป็นการฝึกฝนการเรียนรู้
และหากมีคำถามต่อเนื่องลองเอามาถกกันดูได้

Keyword ที่แนะนำคือ "computer architecture", "how computer work", "how os work"

Edited by Bomber, 04 July 2006 - 03:46 PM.


#3 kingmot

kingmot

    Junior Member

  • Members
  • Pip
  • 65 posts

Posted 04 July 2006 - 03:31 PM

Operating System (OS) หรือ ระบบปฏิบัติการ นะคับคอยเป็นตัวอยุ่ระหว่างกลาง ผู้ใช้กับ hardware หากไม่มี OS  คนจะคุยกับ hardware ยังไงหล่ะคับ ผม

#4 juacompe

juacompe

    Site Admin

  • Admin
  • PipPipPipPip
  • 2904 posts

Posted 04 July 2006 - 09:27 PM

ถ้าไม่มี OS มีแต่ Browser แล้วเล่นแต่ WebApp ล่ะ???

น่าสนใจไหมครับ? หลังจากที่ AJAX เริ่มมีบทบาทมากขึ้น ผมว่าอีกหน่อยอาจจะเป็นจริงได้นะครับ

ปล.
- เหมือนเมื่อก่อน Sun เคยฝันเอาไว้ใน Technology Applet แต่ไปๆมาๆก็ติดข้อจำกัดหลายอย่าง เลยทำให้เป็นจริงไม่ได้ แต่เดี๋ยวนี้ก็ไม่แน่นะครับ ^ ^
- คนอื่นๆคิดเห็นอย่างไรบ้างครับ?

#5 iWat

iWat

    Topgun

  • Topgun
  • 3284 posts

Posted 05 July 2006 - 11:04 AM

สวัสดีครับคุณ samart

เอาตามหลักวิชาการแบบงู ๆ ปลา ๆ ที่ผมเรียนมา

OS คือ Resource allocator ครับ ทำหน้าที่จัดสรรทรัพยากรให้โปรแกรมที่ทำงานอยู่บน OS อีกที นั่นหมายถึง OS คอยให้หน่วยความจำกับคุณเมื่อคุณต้องการ เช่น stack และ heap ที่คุณร้องขอด้วยฟังก์ชัน malloc() OS ทำความรู้จักกับระบบแฟ้มข้อมูล OS รู้ว่าไฟล์ abc.txt คืออะไรเก็บที่ไหน track, sector ตำแหน่งใด มี file allocation อย่างไร OS จัดการเรื่อง free block ทั้ง memory และ disk space

ถ้าไม่มี OS ล่ะคุณต้องทำอะไรบ้าง ???

จัดการ memory เองครับ คุณมี flat memory ขนาด 1 MB คุณขอไป 512KB คุณจะเหลือเท่าไร คุณขอไปอีก 100KB แล้วเอา 512 ที่ขอไปมาคืนแล้วขอใหม่อีก 15KB รูปแบบการจัดการจะเป็นอย่างไร ถ้าคุณขอต่อไปอีก 700KB มันจะหามาให้คุณได้หรือเปล่า อย่างไร

จัดการ disk เองครับ คุณต้องการเขียนไฟล์ abc.txt คุณต้องไปสร้าง file allocation table หรือ inode table จัดการชื่อไฟล์ วันสร้าง วันแก้ไข ตำแหน่งที่เนื้อหาของไฟล์เก็บอยู่ ไม่ว่าจะเป็นแบบ linked list หรือ multi-level lookup table หรืออย่างอื่น

คุณขอคุณคืน คุณสร้างคุณลบ มี fragmentation เกลื่อนไปหมด คุณจะจัดการกับ internal fragmentation และ external fragmentation อย่างไร คุณจะทำ cachine สำหรับการเข้าถึงไฟล์ด้วยมั้ย ใช้ paging ใช้ segment หรือใช้ทั้งสองตัว

บลา บลา ... ยาวครับ :D

#6 Pink Dragon

Pink Dragon

    Topgun

  • Topgun
  • 3900 posts

Posted 05 July 2006 - 11:16 AM

juacompe, on Jul 4 2006, 09:27 PM, said:

ถ้าไม่มี OS มีแต่ Browser แล้วเล่นแต่ WebApp ล่ะ???

<{POST_SNAPBACK}>

browser ก็ต้องรันบน OS อีกทีนึงนะครับ

#7 memtest

memtest

    Member

  • Members
  • PipPip
  • 238 posts

Posted 05 September 2006 - 10:32 PM

ถ้าคอมเครื่องนั้นทำงานเพียงงานเดียว
และงานนั้นใช้โปรแกรมเพียงโปรแกรมเดียว          โปรแกรมนั้นสามารถจัดการกับทรัพยากรได้เอง
ก็ไม่จำเป็นต้องใช้เพิ่งโปรแกรมอื่นมาช่วยจัดการ(หรือว่าOSนั้นแหละ)     อ่านมาถึงตรงนี้แล้วคงฟังดูว่ามันลำบากพอสมควรเลยใช่ไหมครับ     แต่ก็นั้นแหละอาจจะมีงานไหนซักงานที่แหละกับลักษณะอย่างนี้ก็ได้
คิดดูซิเมื่อ 20 ปีก่อน OSแทบไม่มีค่าเลยน่ะครับ      แล้วฉะไหนวันนี้แพงว่าราคาHardwareซ๋ะอีก

#8 เอี้ยก้วย ณ แอนฟิลด์

เอี้ยก้วย ณ แอนฟิลด์

    Topgun

  • Topgun
  • 2804 posts

Posted 06 September 2006 - 10:21 AM

คิดเหมือนน้อง iWat ครับ
OS เป็นตัวช่วยให้ Application ทำงานกับ Hardware ได้ง่ายขึ้นครับ
จะไม่มี OS ก็ได้ครับ แต่ทุก Application ต้องเขียนอะไรเดิมๆซ้ำแบบ low level บ่อยๆ ซึ่งมันพัฒนายากครับ
ขนาดมือถือเครื่องเล็กๆยังมี OS เลยนะครับ ^^"

#9 ekkapong

ekkapong

    Member

  • Members
  • PipPip
  • 396 posts

Posted 06 September 2006 - 06:53 PM

ได้ครับ 1000000%   แต่ต้องทำความเข้าใจว่าคอมพิวเตอร์ คืออะไรเสียก่อนครับ

#10 vee

vee

    Newbie

  • Members
  • Pip
  • 25 posts

Posted 13 September 2006 - 06:14 PM

ได้นะ บางเครื่องโดยเฉพาะพวก Micro controller (MCU) เราก็เขียนโปรแกรมไปติดต่อ Hardware ตรงๆ เลย

#11 jomyut

jomyut

    Newbie

  • Members
  • Pip
  • 43 posts

Posted 13 September 2006 - 10:59 PM

vee, on Sep 13 2006, 06:14 PM, said:

ได้นะ บางเครื่องโดยเฉพาะพวก Micro controller (MCU) เราก็เขียนโปรแกรมไปติดต่อ Hardware ตรงๆ เลย

<{POST_SNAPBACK}>


กำลังจะมาตอบดังนี้เหมือนกัน. ที่สำคัญคือ ต้องนิยามความหมายคำว่า "คอมพิวเตอร์" ให้ถูกครับ

#12 Bleak

Bleak

    Senior member

  • Members
  • PipPipPip
  • 575 posts

Posted 16 November 2006 - 02:51 PM

กลายเป็น Embedded ไปเลยครับ

#13 juacompe

juacompe

    Site Admin

  • Admin
  • PipPipPipPip
  • 2904 posts

Posted 18 November 2006 - 04:32 PM

ผมเพิ่งเรียน Theory of Computation จบ course ไปครับ ได้ข้อมูลเพิ่มเติมเลยมา update ให้ฟัง ^ ^v

ปกติที่เราเขียนโปรแกรม เรามักจะเรียก code ที่คนอื่นเขียนเอาไว้แล้ว เพื่อจะได้ไม่ต้องทำเองทั้งหมด ถูกไหมครับ? OS ก็เป็น library ใหญ่ๆอันหนึ่ง มองอย่างนั้นก็ได้

ผมได้เรียนเรื่อง Turing Machine จริงๆมันพัฒนาเป็น stepๆ จาก Finite Automata >> Pushdown automaton >> Turing Machine ซึ่งคอมพิวเตอร์ที่เราใช้ๆกันอยู่เป็น Universal Turing Machine ครับ

ถ้าถามว่า ถ้าไม่มี OS จะทำงานได้ไหม? ได้แน่ๆครับ ผมมีข้อเท็จจริงให้คิดแล้วจะทำให้เห็นด้วยทันทีด้วยครับ

Quote

คนเขียน Linux หรือ Windows หรือ OS ใดๆก็ตาม เค้าทำมันขึ้นมายังไง?
เค้าต้องทำตั้งแต่ยังไม่มี OS ถูกไหมครับ? พอได้ฟังแบบนี้ คอมพิวเตอร์ไม่มี OS มันก็น่าจะทำอะไรได้เนอะ ^ ^

Turing Machine เป็นเรื่องที่ศึกษาเกี่ยวกับตอนจะสร้าง CPU chip เช่น Intel, Turion, ฯลฯ นั่นคือการทำ execute โปรแกรมตั้งแต่ยังไม่มี CPU ยังไม่มีเครื่อง เราเขียนเป็นสมการด้วยกระดาษแล้วก็จำลองการ execute step by step ดู มี symbol แปลกๆเต็มหน้า อ่านไม่รู้เรื่อง (สรุปผมไม่ถนัดวิชานี้เท่าไหร่ครับ ^ ^")

นั่นแหละครับ ผมได้มุมมองนี้จากการเรียนวิชานี้ หวังว่าจะเป็นประโยชน์ไม่มากก็น้อยครับ ^ ^

#14 Bomber

Bomber

    Topgun

  • Topgun
  • 2321 posts

Posted 18 November 2006 - 06:07 PM

หากอยากรู้เรื่องเรื่องนี้จริงๆต้องศึกษาเรื่อง Computer Architecture และ Operating System

ซึ่งเราสามารถมอง computer เป็น layer ต่างๆได้ดังนี้
- applications
- operating system
- kernel
- assembler
- firmware
- hardware

หากคอมพิวเตอร์ไม่มี OS จะเกิดอะไรขึ้น ไม่ยากครับ มันก็จะมีแค่ hardware และ firmware รวมถึง assembler ของ cpu ตัวนั้น หากต้องการเขียน application ด้วยไม่ต้องมี kernal และ os เลยถามว่าทำได้ไหม ก็ต้องตอบว่าทำได้ แต่คงไม่สนุกนัก ผมว่ามันไม่สนุกเลยแม้แต่นิดเดียว เพราะนั่นแปลว่าเราต้องเขียนคุยกับ hardware เองทั้งหมด ไม่ว่าจะเป็นเรื่องของการ access หา memory การ access หา harddisk หรือแม้กระทั้งการจะแสดง output ออกมาบนจอ หรือรับ input จาก keyboard หากเคยเขียน assembly จะเข้าใจดี

แล้ว os เกิดขึ้นได้อย่างไร อย่าง windows หรือ linux เอง เขาจะสร้าง kernel ขึ้นมา ร่วมถึง compiler ภาษาที่ใช้งานได้ง่ายขึ้น เช่น C/C++ เพื่อจะแปลงมันให้เป็น assembly code หรือ machine code อีกที เมื่อทำได้แล้ว เขาจะเริ่มเขียนส่วนจัดการกับ hardware ต่างๆ ตั้งแต่การจัดการด้าน memory การจัดการด้าน harddisk การจัดการ input/output การคำนวนผลต่างๆที่ใช้กับ CPU และอื่นๆอีกมากมาย

หวังว่าคงพอจะทำให้เริ่มต้นศึกษาได้ถูกต้อง

#15 kingmot

kingmot

    Junior Member

  • Members
  • Pip
  • 65 posts

Posted 21 November 2006 - 09:15 AM

Bomber, on Nov 18 2006, 06:07 PM, said:

หากคอมพิวเตอร์ไม่มี OS จะเกิดอะไรขึ้น ไม่ยากครับ มันก็จะมีแค่ hardware และ firmware


firmware มันก็คือ mini OS ที่ฝั่งเอาไว้ใน Chip หรือ hArdware เพื่อช่วยให้ การทำงานของอุปกรณ์นั้นๆ
สามารถทำงานเข้ากันได้กับ hArdware  เหล่านั้นหรือเป็นตัวกลางในการทำงานร่วมกับ hArdware หากจะพูด
ก็สามารถพูดได้ว่า  firmware มันก็คือ OS ไม่ใช่เหรอคับ เหรอว่าผมเข้าใจผิดอ่ะคับ รบกวนชี้แนะด้วย  :huh:




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users