კენეთ ლეინ ტომფსონი (დ. 4 თებერვალი, 1943) — კომპიუტერული მეცნიერებების ამერიკელი მკვლევარი, პროგრამისტი. ცხოვრების დიდი ნაწილი ტომფსონმა Bell Labs-ში მუშაობას დაუთმო, სადაც მან შეიმუშავა და დანერგა პირვანდელი Unix ოპერაციული სისტემა. გარდა ამისა, მან შეიმუშავა პროგრამირების B ენა, რომლის საფუძველზე შემდგომ შეიქმნა პროგრამირების С ენა. იყო ოპერაციული სისტემა Plan 9-ის შემქნელი და ადრეული შემმუშავებელი. 2006 წლიდან მუშაობდა კომპანია Google-ში, სადაც მონაწილეობა მიიღო Go პროგრამირების ენის შექმნაში.

კენ ტომფსონი
ინგლ. Kenneth Lane Thompson

დაბ. თარიღი 4 თებერვალი, 1943(1943-02-04) (81 წლის)
დაბ. ადგილი ახალი ორლეანი
მოქალაქეობა  აშშ
საქმიანობა პროგრამისტი და ინფორმატიკოსი
მუშაობის ადგილი Bell Labs და Google
ალმა-მატერი კალიფორნიის უნივერსიტეტი და კალიფორნიის უნივერსიტეტი
ჯილდოები ტიურინგის პრემია[1] [2] , ტექნოლოგიებისა და ინოვაციების ეროვნული მედალი[3] , ჰაროლდ პენდერის პრემია[4] , IEEE Emanuel R. Piore Award[5] , Tsutomu Kanai Award, Computer History Museum fellow, Computer Pioneer Award[6] , ACM Software System Award[7] , რიჩარდ ჰემინგის მედალი[8] , იაპონიის პრემია[9] , ეროვნულ გამომგონებელთა დიდების დარბაზი და ACM-ის წევრი[10]
საიტი cs.bell-labs.co/who/ken/

სხვა გამოჩენილ წვლილს შორის, აღსანიშნავია კენ ტომფსონის მიერ რეგულარულ გამოსახულებებზე მუშაობა, ადრეული კომპიუტერული ტექსტური რედაქტორების QED-ისა და ed-ის შემუშავება, კოდირების UTF-8-ის განსაზღვრება. მუშაობდა კომპიუტერულ ჭადრაკზე, რომლის ფარგლებში შეიქმნა საჭადრაკო დაბოლოებების ცხრილური ბაზები და საჭადრაკო მანქანა Belle.

ბავშვობა და განათლება

რედაქტირება

კენეთ ტომფსონი დაიბადა ამერიკის შეერთებული შტატების ქალაქ ნიუ-ორლეანში. კითხვაზე, თუ როგორ ისწავლა პროგრამირება, ტომფსონმა უპასუხა:

 
„ყოველთვის გატაცებული ვიყავი ლოგიკით და სკოლის დაწყებით კლასებშიც კი, ვმუშაობდი არითმეტიკულ პრობლემებზე ორობით სისტემაში. რაღაც მსგავსი. იმიტომ რომ გატაცებული ვიყავი.“

ტომფსონმა მეცნიერების ბაკალავრის ხარისხი მიიღო 1965 წელს, ხოლო 1966 წელს — მაგისტრის ხარისხი. ორივე ხარისხი, ელექტრულ ინჟინერიასა და კომპიუტერულ მეცნირებებში, ტომფსონმა დაიცვა კალიფორნიის ბერკლის უნივერსიტეტში, სადაც მისი თეზის მრჩევლად იყო მათემატიკოსი, პროფესორი ელვინ ბერლეკემპი.

კარიერა და კვლევა

რედაქტირება

Bell Labs-ში კენ ტოფსონი სამუშაოდ აიყვანეს 1966 წელს. 60-იანებში ტომფსონი, დენის რიჩისთან ერთად მუშაობდა ოპერაციულ სისტემა Multics-ზე. Multics-ის წერის პროცესში, შეიმუშავა პროგრამირების ენა Bon. ასევე, შექმნა ვიდეო-თამაში Space Travel. მოგვიანებით Bell Labs-მა დატოვა Multics-ის პროექტი. იმისათვის, რომ გაეგრძელებინა თამაში, ტომფსონმა იპოვა ძველი PDP-7 მანქანა და ხელახლა დაწერა მასზე გასაშვებად Space Travel-ის თამაში. საბოლოოდ, ტომფსონის მიერ შემუშავებული ხელსაწყო გადაიქცა ოპერაციულ სისტემა Unix-ად: PDP-7-ზე მუშაობისას Bell Labs-ის მკვლევარებმა, ტოფსონისა და რიჩის ხელმძღვანელობით, ასევე რუდ ქენედეის მონაწილეობით, შეიმუშავეს იერარქიული ფაილური სისტემა (HFS), კომპიუტერების პროცესებისა და მოწყობილობის ფაილების კონცეპტები, საბრძანებო სტრიქონის ინტერპრეტატორი, არხსადენები პროცესათაშორისი კომუნიკაციის გასამარტივებლად, და სხვა მცირე დამხმარე პროგრამები. 1970 წელს, ბრაიან კერნიგენმა შესათავაზა სახელი „Unix“, „Multics“-ის სახელის კალამბურის სახით. Unix-ზე საწყისი მუშაობის შემდეგ, ტომფსონმა გადაწყვიტა, რომ Unix-ს ესაჭიროებოდა სისტემური პროგრამირების ენა, რის შედეგადაც მან შეიმუშავა პროგრამირების B ენა, რომელიც რიჩის C-ის წინამორბედი იყო.

1960-იან წლებში ტომფსონმა დაიყო რეგულარულ გამოსახულებებზე მუშაობა. მან შეიმუშავა QED ტექსტური რედაქტორის CTSS ვერსია, რომელიც შეიცავდა ტექსტის საძებნელად რეგულარულ გამოსახულებებს. QED-მა და ტომფსონის შემდგომაა რედაქტორმა ed-მა (Unix-ის სტანდარტული რედაქტორი) დიდი წვლილი შეიტანეს რეგულარული გამოსახულებების პოპულარიზებაში, და აქედან მოყოლებული რეგულარული გამოსახულებები გავრცელებული გახდა Unix-ის ტექსტური დამუშავების პროგრამებში. თითქმის ყველა პროგრამა, რომელიც დღეისთვის რეგულარულ გამოსახულებებთან მუშაობს, იყენებს ტომფსონის გარკვეულ ჩანაწერს. მან ასევე შეიმუშავა ტომფსონის კონსტრუქციული ალგორითმი, რომლითაც ხორციელდება რეგულარული გამოსახულებების გარდაქმნა არადეტერმინირებულ სასრულ მანქანად, გამოსახულების შეწყვილების ასაჩქარებლად.

1970-იან წლებში კენ ტომფსონი დენის რიჩისთან ერთად მუშაობდნენ ოპერაციულ სისტემა Unix-ზე; მათი გავლენა Research Unix-ზე იმდენად დიდი იყო, რომ დაგ მაკილროიმ მოგვიანებით დაწერა:

 
„რიჩის და ტომფსონის სახელები, თამამად შეიძლება ვივარაუდოთ, რომ დაკავშირებულია ყველაფერთან, რასთანაც რამე სხვა არ არის.“

2011 წელს, ტომფსონმა განაცხადა, რომ Unix-ის პირველი ვერსია დაწერილ იქნა მის მიერ, ხოლო რიჩი დაეხმარა სისტემის ადვოკატირებასა და განვითარებაში:

 
„Unix-ის პირველი ორი, თუ სამი ვერსია მე, მარტომ გავაკეთე. დენისი კი მახარობელი გახდა. შემდეგ გადაწერილ იქნა მაღალი დონის ენაზე, რომელსაც შემდეგში ეწოდა С ენა. იგი ძირითადად მუშაობდა ენასა და შეტანა/გამოტანის სისტემაზე, მე კი ოპერაციული სისტემის დანარჩენზე. ეს იყო PDP-11-ისთვის, ბედნიერი შემთხვევითობის წყალობით, რადგან ეს იყო კომპიუტერი, რომელმაც აკადემიური საზოგადოება დაიპყრო“

ტომფსონის Unix-ის შემუშავებისას მიღებული გამოცდილება საკვანძო გამოდგა პროგრამირების C ენის შემუშავებისთვისაც. ტომფსონმა მოგვიანებით C ენის შესახებ განაცხადა:

 
„ის გაჩნდა სისტემის გადაწერის პროცესში, და ამგვარად, სისტემის დასაწერად საუკეთესოდ გადაიქცა“

1975 წელს ტომფსონმა Bell Labs-ში შემოქმედებითი შვებულება აიღო და თავის ალმა-მატერში, კალიფორნიის ბერკლის უნივერსიტეტში გაემგზავრა. იქ ტომფსონი ეხმარებოდა PDP-11/70-ზე Unix Version 6-ის დაყენება-გამართვაში. შემდგომში, ბერკლიში Unix-ი განავითარეს როგორც თავიანთი სისტემა და ცნობილი გახდა სახელით Berkeley Software Distribution (BSD).

1971 წელს კენ ტოფსონმა დაწერა ჭადრაკის მოთამაშე პროგრამა „ჭადრაკი“ Unix-ის პირველი ვერსიისთვის. შემდეგ, ჯოზეფ კონდონთან ერთად, ტოფსონმა შექმნა აპარატურულად ხელშეწყობილი პროგრამა Belle, რომელმაც მსოფლიო ჩემპიონობა მოიპოვა საჭადარაკო კომპიუტერებში. ასევე, მან დაწერა საჭადრაკო დაბოლოებების (ენდშპილი) სრული აღრიცხვის პროგრამები, რომლებიც ცნობილია თამაშის დაბოლოებათა ცხრილების სახელით, ყველა 4, 5 და 6 ნაწილიანი ენდშპილისათვის, რომელიც მოთამაშე მანქანას საშალებას აძლევს შეასრულოს „იდეალური“ სვლები, მას შემდეგ რაც მიღწეული იქნება პროგრამაში შენახული პოზიცია. მოგვიანებით, ტოფსონმა, საჭადრაკო დაბოლოებათა ექსპერტის, ჯონ როიკროფტის დახმარებით თავისი პირველი საენდშპილო შედეგები გაავრცელა CD-ROM-ით. 2001 წელს, კომპიუტერულ თამაშობათა აკადემიურმა ჟურნალმა ICGA Journal, თითქმის სრული გამოცემა მიუძღვნა კენ ტოფსონის სხვადასხვა სახის წვლილს კომპიუტერული ჭადრაკში.

XX საუკუნის 80-იან წლებში ტომფსონი და დენის რიჩი განაგრძობდნენ Research Unix-ზე მუშაობას, რომელმაც მე-8, მე-9 და მე-10 გამოცემაში შთანთქა BSD-ის კოდური ბაზაც. 80-იანების შუა წლებში, Bell Labs-ში მუშაობა დაიწყო ახალ ოპერაციულ სისტემაზე, რომელსაც უნდა ჩაენაცვლებინა Unix-ის სისტემა. ტომფსონმა მნიშვნელოვანი წვლილი შეიტანა Bell Labs-ის ახალი ოპერაციული სისტემის, Plan 9-ის პროექტის შემუშავებასა და მის დანერგვაში. Plan 9 იზიარებდა Unix-ის ძირითადი პრინციპებს სრულად, თუმცა, მათ უფრო ფართოდ იყენებდა ყველა ძირითადი სისტემური საშუალებისთვის. ზოგიერთი პროგრამა, რომელიც Research Unix-ის გვიანი ვერსიების ნაწილი იყო, მაგალითად mk და rc, ჩართულ იქნა ასევე Plan 9-ში.

ტომფსონი მონაწილეობდა ბიარნე სტროუსტრუპის შემუშავებული C++ პროგრამირების ენის ადრეული ვერსიების ცდაში. ამ მიზნით, ტომფსონი C++ ენაზე წერდა თავის პროგრამებს, თუმცა, მოგვიანებით უარი განაცხადა ტესტირებაზე, რადგან ხშირი იყო ენის ვერსიებს შორის შეუთავსებლობა. 2009 წელს ტოფსონმა უარყოფითი დამოკიდებულება გამოხატა C++ ენის მიმართ და განაცხადა, რომ „იგი ბევრ რამეს ნახევრად კარგად აკეთებს და უბრალოდ არის ურთიერთგამომრიცხავი იდეების ნაგვის გროვა“.

1992 წელს ტომფსონმა, რობ პაიკთან ერთად, შეიმუშავა კოდირების სქემა UTF-8, რომელიც მსოფლიო აბლაბუდაში სიმბოლოების კოდირების დომინატურ სისტემად იქცა. 2019 წლისთვის ვებ-გვერდების 90% იყენებს UTF-8 კოდირებას.

1990-იანებში მუშაობა დაიწყო ოპერაციულ სისტემა Inferno-ზე, კიდევ ერთ კვლევით ოპერაციული სისტემაზე, რომელიც ეფუძნებოდა ვირტუალურ მანქანაზე. კენ ტომფსონი და დენის რიჩი Inferno-ს პროექტშიც შეჰქონდათ წვლილი, Bell Labs-ის სხვა თანამშრომლებთან ერთად.

2000 წლის ბოლოს, ტომფსონი გათავისუფლდა Bell Labs-იდან და მუშაობა განაგრძო Entrisphere Inc-ში მეცნიერმუშაკის თანამდებობაზე, სადაც 2006 წლამდე იმყოფებოდა. აჟამად ტომფსონი მუშაობს კომპანია Google-ში დამსახურებელი ინჟინრის თანამდებობაზე. ბოლო დროინდელი მისი მუშაობა მოიცავდა პროგრამირების ენა Go-ს პროექტირებას. Go-ს ორიგინალურ ავტორებთან ერთად საკუთარი თავის მოხსენიებით, ტომფსონი ამბობს:

 
„როდესაც სამმა ჩვენგანმა [კენ ტომფსონი, რობ პაიკი, რობერტ გრიზმერი] დავიწყეთ, ეს წმინდა წლის კვლევა იყო. სამი ჩვენგანი შეიკრიბა და გადავწყვიტეთ, რომ გვძულდა C++. [იცინის]... [Go-ს რომ დავბრუნდეთ,] ჩვენ დავიწყეთ იმ აზრით, რომ ჩვენ სამივეს გვჭირდება ენის თითოეულ ფუნქციაზე ლაპარაკი, ამიტომ, ენაში უცხო ნაგავი არავითარი მიზეზით არ ჩადებულა“

2009 წლის ინტერვიუს მიხედვით, ამჟამად ტომფსონი იყენებს Linux-ზე დაფუძნებულ ოპერაციულ სისტემას.

ჯილდოები

რედაქტირება

ეროვნული აკადემია

რედაქტირება

1980 წელს ტომფსონი არჩეულ იქნა ინჟინერიის ეროვნულ აკადემიაში „Unix-ის შემუშავებისათვის, ოპერაციული სისტემის, რომლის ეფექტურობამ, სიფართოვემ, სიმძლავრემ და სტილმა თაობებს მინიკომპიუტერების გამოყენების მიმართულება მისცა“. 1985 წელს არჩეულ იქნა მეცნიერებათა ეროვნული აკადემიის წევრად.

ტიურინგის პრემია

რედაქტირება

1983 წელს ტომფსონმა და დენის რიჩიმ ერთობლივად მიიღეს ტიურინგის პრემია „ოპერაციულ სისტემათა საერთო თეორიის შემუშავებისთვის და კერძოდ ოპერაციული სისტემა Unix-ის რეალიზაციისთვის“. მის თანხმობის სიტყვაში, „ფიქრები ნდობის ნდობაზე“, წარმოდგენილ იქნა ბექდორ-შეტევა, რომელიც ახლა ცნობილია როგორც „ტომფსონის გატეხვა“ ან „ნდობის ნდობის შეტევა“, და მიიჩნევა კომპიუტერული უსაფრთხოების ერთ-ერთ ფუძემდებლურ ნაშრომად.

რიჩარდ ჰემინგის ჯილდო (IEEE)

რედაქტირება

1990 წელს, ორთავემ, კენ ტომფსონმა და დენის რიჩიმ, მიიღეს ელექტრიკისა და ელექტრონიკის ინჟინერთა ინსტიტუტის რიჩარდ ჰემინგის ჯილდო „ოპერაციული სისტემა Unix-ის და პროგრამირებიუს C ენის შექმნისათვის“.

კომპიუტერული ისტორიის მუზეუმის წევრობა

რედაქტირება

1997 წელს, ორთავემ, ტომფსონმა და რიჩიმ მიიღეს კომპიუტერული ისტორიის მუზეუმის წევრის სტატუსი „ოპერაციული სისტემა Unix-ის თანაავტორობისათვისა და პროგრამირების ენა C-ის შემუშავებისათვის“.

ტექნოლოგიების ეროვნული ჯილდო

რედაქტირება

1999 წლის 27 აპრილს, ტომფსონმა და რიჩიმ ერთბლოვად პრეზიდენტ ბილ კლინტონისგან 1998 წლის ტექნოლოგიების ეროვნული ჯილდო ოპერაციული სისტემა Unix-ის და პროგრამირების ენა C-ის შექმნაში თანამონაწილეობისათვის, რამაც ერთობლივად „საფუძველი ჩაუყარა განუზომად დაწინაურებას კომპიუტერულ ტექნიკაში, პროგრამულ უზრუნველყოფაში, და ქსელურ სისტემებში და მთელი ინდუსტრიის ზრდის სტიმულირება მოახდინა, შესაბამისად, განამტკიცა ამერიკის პირველობა საინფორმაციო ეპოქაში“.

ცუტომუ კანაის პრემია

რედაქტირება

1999 წელს ელექტრიკისა და ელექტრონიკის ინჟინერთა ინსტიტუტმა ტომფსონი აირჩია ცუტომუ კანაის პირველი პრემიის ლაურეატად „შესრულებული როლისათვის ოპერაციული სისტემა Unix-ის შემუშავებაში, რომელიც ათწლეულიბის განმავლობაში გახდა საკვანძო პლატფორმა დანაწილებული სისტემების მუშაობისათვის“.

იაპონიის პრიზი

რედაქტირება

2011 წელს ტომფსონი, დენის რიჩისთან ერთად დაჯილდოვებულ იქნა ინფორმაციასა და კომუნიკაციებში იაპონიის პრემიით ოპერაციული სისტემა Unix-ის შემუშავებაში შესრულებული ნოვატორული სამუშაოსთვის.

პირადი ცხოვრება

რედაქტირება

კენ ტომფსონი დაქორწინებულია ბონი ტომფსონზე (ქალ. პერლმუტერი) და ყავთ ვაჟი — კორი.