Jobs: Anna Vorobyova, een toonaangevende ontwikkelaar van virtuele machines van Parallels
Jobs / / December 27, 2019
Meisjes uit te blinken in de typisch mannelijke beroepen, en dit feit al lang niet meer als maatschappelijk verschijnsel waar te nemen. Vandaag heldin Categorieën Anna Vorobyova Het kan een honderd punten te geven aan elke mannelijke IT-professional. She - een toonaangevende ontwikkelaar van een van de belangrijkste onderdelen van de virtuele machines in het bedrijf Parallels. Het is tijd om erachter te komen hoe het werkt in het gebied van de programmering van het systeem en of er, in haar mening, de plaats van de meisjes in teams van software engineers.
Wat doe je op het werk?
I - een toonaangevende ontwikkelaar van de kern-team in het bedrijf Parallels. Core-team zich bezig met het opzetten en verbeteren van de zogenaamde virtual machine monitor - een centraal onderdeel van de virtualisatie hypervisor in het hele scala van Parallels producten. Het is in de monitor creëert een denkbeeldige processor, geheugen, alle apparaten.
Ik ben het eens, het is een beetje atypisch werk voor vrouwen. Tijdens mijn carrière in de IT van hun ouders moeten bedanken - ze echt schelen over de toekomst van hun kinderen volledig humanitaire. Maar al in instellingen (MESI), die ik tegenkwam echte IT-fanatici die bereid zijn om de hele dag praten over het besturingssysteem van het apparaat waren. Twee van de meest geavanceerde kinderen gingen naar Parallels, toen ze nog erg jong bedrijf. Ze zijn zo leuk om het niveau van de op te lossen problemen en de sfeer in het team te vertellen, dat hun verhalen uiteindelijk hulp zal de keuze van de werkgelegenheid.
Continu schijf is nauwelijks mogelijk in het werk. De software engineer werk - is geen uitzondering. Het gebeurt zo creatief ups en periodes van creatieve apathie. Maar in het algemeen, virtualisatie en cloud computing niet te missen. In deze industrie, altijd wat te doen, moet u deze nieuwe uitdagingen aan te gaan. Daarnaast zijn we voortdurend verbeteren van hun code, hun technologie, al die tijd het leren van iets. Vooral veel van het aanbod van reizen naar internationale conferenties.
Onze virtual machine monitor gemeenschappelijk voor de gehele lijn van producten met hypervisor virtualisatie - Parallels Desktop, Parallels Workstation, Parallels Server. In feite is de monitor - het is zo'n micro besturingssysteem dat het leven door zijn eigen regels, met een eigen geheugentoewijzers, uitgestelde gesprekken, timers, en synchronisatie. En terwijl de monitor volledig zichtbaar voor het host-besturingssysteem - de toepassing van de bestuurder toegang heeft, begint de bestuurder werk, en - en dan is de magie! - We hebben in de monitor, niet het besturingssysteem. Eigenlijk is dit magische switch contexten met al zijn veelzijdigheid op de kale montage - een reden voor mijn professionele trots. Hij is er nog veel verbeterd virtuele machine dichtheid per eenheid van apparatuur in de server product Parallels Server Bare Metal. Wij waren er dit geheugen wendingen dat genot om naar te kijken.
Tijdens het zoeken naar optimale oplossingen werken Virtual Machine Monitor Ik moet heel diep graven in de kern van het besturingssysteem. Meer informatie over dit besturingssysteem ontwikkelaars, zullen ze waarschijnlijk zeer verrast. Moeilijk te geloven, maar zelfs in systemen van Apple van tijd tot tijd zijn er fouten. Toen we voor het eerst onze beroemde onder sportirovali "makovodov» Parallels Desktop (PD) op een 64-bits toepassing, Mac OS De gastheer werd zich volledig willekeurig herstarten of hangen tot de dood. Zoekfout liet me - waarschijnlijk te wijten aan een combinatie van mijn verantwoordelijkheid en de algemene complexiteit van de taak. Diagnose op zulke soorten van "val" niet blijven, zodat ik mezelf wol standaard "64-bit" probleem.
Na lang onderzoek is gebleken uit, MacOS, dat voor 64-bits processen van de verkeerde gegevens kunnen gebruiken, met een beroep op een kopie in de cache. Besturingssysteem bij het overstappen naar 64-bits proces niet volledig overbelast de CPU registers (voor degenen die in het onderwerp, is de GS en FS). De processor draait op cachegeheugen waarden. En onze virtuele machine monitor op het werk (juist op die magische schakelaar) herstelt alle registers, waaronder onjuist. De gegevens in deze registers waren zo cruciaal voor het OS, dat ze een bericht over een kritieke fout kernel (kernel panic) zelfs niet kon tekenen, recursief aanroepen van de fout handler. PD bijwerken, met een beroep op het feit dat ze juist zijn. Om haar krediet, Apple is te merken dat ze snel reageren op bugs, en in Lion-e waarde (minder dan een jaar), was het probleem opgelost.
Hoe werkt uw werkplek?
Mijn werkplek kan worden omschreven als een harmonieuze combinatie van vele "stuk ijzer" en verpakkingen van groene thee. Ik houd van thee, en een indrukwekkende vloot van voertuigen - is een ruwe industriële noodzaak. Virtualisatie van Parallels - een cross-platform product, daarom, bouwen en testen van prototypes van nieuwe versies zijn goed voor de bonte apparatuur.
Wat is de "ijzeren" te gebruiken?
Op een grote tafel (en eronder) leven:
Twee desktop - één op de processor van Intel, en de andere - op een AMD-processor.
MacPro server.
Laptop MacBook.
Op de "ijzeren" systemen stellen een dierentuin - en MacOS X, Windows en verschillende bit verschillende versies, en verschillende Linux-versies.
Door klier in het algemeen en in het bijzonder op gadgets, was ik onverschillig voor de laatste reis naar de WWDC (Apple Developer Conference), die hopeloos verliefd op de iPhone. By the way, mijn exemplaar van het apparaat - gevangen. Ik heb het in een weddenschap met een professionele mede-oprichter van Parallels, en nu voorzitter van de raad Sergey Belousov. Zodra we zaten in een restaurant. En zou de naam van een van de onlangs geïntroduceerde epplovskih technologieën niet herinneren. Sergey google, grinnikte en zei: "Dus, wie eerst herinneren dat en iPhone». Elk had drie pogingen. Ik dacht eerst. Een technologie genaamd FaceTime.
Welke software gebruik?
Op de lokale "ijzeren" spelhervattingen 8-10 verschillende besturingssystemen. OS afbeeldingen - legio. En ze zijn niet slechter dan niets, door de manier waarop. Soft in mijn meest specifieke - compilers, debuggers, verschillende Integrated Development Environment (IDE), disassemblers, profilers, DebugKit-s. Van de favoriete instrumenten is om disassembler IDA te bieden. In de Parallels, in Daarnaast is er een breed scala van instrumenten van zijn ontwikkeling. Wij verzamelen gast en de monitor stortplaatsen, het uitvoeren van performance counters, logboeken, geschiedenis, en nu de afwerking van uw debugger. Programmeren vereist een systematische aanpak van het oplossen van problemen.
Is er een droom configuratie?
Hun dromen van de "ijzeren" zelfs bang om geluid - zo snel komen ze waar :) generaal stelt "ijzeren" - een beetje meer logische CPU (16), meer geheugen (8 GB). Maar kritischer alle kwaliteitskenmerken van de processor - hoe verser de processor, hoe meer het nieuwe "speelgoed» - EPT, Vrij, VT-D, TXT. Nou, slimme harde schijf. Al het andere in de meest moderne "ijzers" ik over het algemeen tevreden.