{"id":430,"date":"2024-07-18T11:43:57","date_gmt":"2024-07-18T09:43:57","guid":{"rendered":"https:\/\/wi.pb.edu.pl\/p\/?page_id=430"},"modified":"2024-07-18T11:43:57","modified_gmt":"2024-07-18T09:43:57","slug":"systemy-operacyjne-2-projekt-pierwszy","status":"publish","type":"page","link":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/","title":{"rendered":"Systemy operacyjne 2 &#8211; Projekt pierwszy"},"content":{"rendered":"<table border=\"0\" cellspacing=\"2\" cellpadding=\"2\">\n<tbody>\n<tr align=\"center\">\n<td>\n<h2>Systemy operacyjne 2 &#8211; Projekt pierwszy<\/h2>\n<p><big>Jesie\u0144 2006<\/big><small><br \/>\n<\/small><\/p>\n<h3>Sterownik urz\u0105dzenia<\/h3>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\"><b>1. Schowek Minimum (22p)<\/b>. Sterownik urz\u0105dzenia znakowego tylko do zapisu pe\u0142ni\u0105cy funkcj\u0119 \u201cschowka\u201d, w kt\u00f3rym mo\u017cna zapisa\u0107 fragment pami\u0119ci ekranu. Sterownik interpretuje wysy\u0142ane do niego strumienie bajt\u00f3w jako komendy. Rozpoznawane powinny by\u0107 nast\u0119puj\u0105ce rodzaje komend (ka\u017cdy argument komendy to jeden bajt):<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\">&#8211; &lt;KOPIUJ, XLT, YLT, XRB, YRB&gt; &#8211; kopiuje do schowka prostok\u0105tny fragment ekranu o lewym g\u00f3rnym rogu okre\u015blonym przez argumenty XLT YLT i prawym dolnym rogu okre\u015blonym przez pola XRB, YRB&gt;.<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\">&#8211; &lt;WKLEJ, XLT, YLT&gt; &#8211; wkleja fragment ekranu zapisany w schowku, umieszczaj\u0105c jego lewy g\u00f3rny r\u00f3g w miejscu&nbsp;<span lang=\"pl-PL\">okre\u015blonym<\/span>&nbsp;przez argumenty XLT, YLT.<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\">&#8211; &lt;WYCZYSC&gt; &#8211;&nbsp;<span lang=\"pl-PL\">czy\u015bci<\/span>&nbsp;schowek (zwalnia pami\u0119\u0107).<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\">W przypadku napotkania b\u0142\u0119dnego numeru polecenia, lub b\u0142\u0119dnych parametr\u00f3w np X&gt;80 nale\u017cy zwr\u00f3ci\u0107 kod b\u0142\u0119du. Operacja&nbsp;<i>write<\/i>&nbsp;jest nieblokuj\u0105ca a polecenie wykonywane jest dopiera po wys\u0142aniu wszystkich argument\u00f3w, co oznacza \u017ce proces mo\u017ce poprawnie wykona\u0107 polecenie WKLEJ wykonuj\u0105c trzy jedno bajtowe zapisy.<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\"><b>Dodatkowo (7p)<\/b>&nbsp;gdy jeden proces rozpocznie polecenie, a nie przeka\u017ce wszystkich parametr\u00f3w, wszystkie procesy usi\u0142uj\u0105ce wykona\u0107 operacj\u0119&nbsp;<i>write<\/i>&nbsp;s\u0105 blokowane do momentu (a) przes\u0142ania pozosta\u0142ych parametr\u00f3w przez proces rozpoczynaj\u0105cy operacj\u0119 albo (b) zamkni\u0119cia przez ten proces pliku, co oznacza anulowanie polecenia.<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\"><b>(8p)<\/b>&nbsp;Ka\u017cdy u\u017cytkownik ma osobny schowek. (sterownik rozpoznaje uid u\u017cytkownika i wykonuje operacje na jego indywidualnym schowku)<\/span><\/p>\n<p>&nbsp;<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\"><b>2. Kom\u00f3rki ekranowe. (Minimum 22p)<\/b>&nbsp;Sterownik urz\u0105dzenia, zaimplementowany jako modu\u0142 j\u0105dra, w kt\u00f3rym operacje odczytu i zapisu dotycz\u0105 kom\u00f3rki konsoli (ekranu) o wsp\u00f3\u0142rz\u0119dnych 0&lt;=X&lt;=79, 0&lt;=Y&lt;=24. Operacja read zwraca znak znajduj\u0105cy si\u0119 w danej chwili w kom\u00f3rce, a operacja write zmienia ten znak. Wsp\u00f3\u0142rz\u0119dne kom\u00f3rki mo\u017cemy zmieni\u0107 oraz odczyta\u0107 przy pomocy odpowiednich komend ioctl. Je\u017celi operacja read\/write dotyczy wi\u0119cej ni\u017c jednego bajtu, to proces jest usypiany na co najmniej t ms przed kolejnym odczytem kom\u00f3rki. Czas u\u015bpienia t (pocz\u0105tkowo 100ms) mo\u017cemy r\u00f3wnie\u017c zmienia\u0107 i odczytywa\u0107 przy pomocy wywo\u0142ania ioctl, niezale\u017cnie dla operacji write oraz read. Sterownik mo\u017ce obs\u0142ugiwa\u0107 maksymalnie do 255 niezale\u017cnych urz\u0105dze\u0144 o kolejnych numerach podrz\u0119dnych (liczba urz\u0105dze\u0144 jest przekazywana jako parametr modu\u0142u), z kt\u00f3rych ka\u017cde obs\u0142uguj\u0119 inn\u0105 kom\u00f3rk\u0119. Pr\u00f3ba zwi\u0105zania dw\u00f3ch r\u00f3\u017cnych urz\u0105dze\u0144 podrz\u0119dnych z t\u0105 sam\u0105 kom\u00f3rk\u0105 jest b\u0142\u0119dem (nie dotyczy to inicjalizacji).<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\"><b>Dodatkowo (10p)<\/b>&nbsp;Mo\u017cliwo\u015b\u0107 prze\u0142\u0105czenia przy pomocy ioctl w tryb, w kt\u00f3rym zapisy s\u0105 buforowane. W trybie tym operacja write powoduje przepisanie danych do wewn\u0119trznego bufora, i natychmiastowy powr\u00f3t. W przypadku przepe\u0142nienia bufora nast\u0119puje jego re-alokacja (przydzia\u0142 nowego , o dwukrotnie wi\u0119kszej d\u0142ugo\u015bci, bez utraty danych). Nast\u0119pnie dane z zaprogramowanym odst\u0119pem t przepisywane s\u0105 na ekran (Np. przy wykorzystaniu timer\u00f3w j\u0105dra). Mo\u017cliwo\u015b\u0107 prze\u0142\u0105czenia przy pomocy ioctl do standardowego trybu zapisu.<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\"><b>(5p)&nbsp;<\/b>Obs\u0142uga wywo\u0142ania select dla zapis\u00f3w, przy czym brak gotowo\u015bci jest zg\u0142aszany (lub nast\u0119puje u\u015bpienie procesu), gdy zapis prowadzi\u0142by do przepe\u0142nienia bufora. [Wymaga samodzielnej pracy z literatur\u0105 np. ksi\u0105\u017cka Linux Kernel \u2013 j\u0105dro systemu].<\/span><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\"><b>3. Wielki bufor &#8211; plik (Minimum 22p.)<\/b>&nbsp;Bufor w pami\u0119ci (koncepcyjnie tablica bajt\u00f3w) traktowany jako plik. Odczyt z bufora odbywa si\u0119 od offsetu r\u00f3wnego bie\u017c\u0105cemu wska\u017anikowi pliku i przesuwa ten wska\u017anik o liczb\u0119 bajt\u00f3w. Gdy osi\u0105gni\u0119ty zostanie koniec bufora, traktowany jest jak koniec pliku (obci\u0119cie liczby zapisanych bajt\u00f3w). Zapis przesuwa r\u00f3wnie\u017c wska\u017anik o pewn\u0105 liczb\u0119 bajt\u00f3w, a ponadto mo\u017ce powi\u0119kszy\u0107 bufor, gdy w trakcie zapisu przekroczymy koniec. Modu\u0142 j\u0105dra obs\u0142uguje cztery numery podrz\u0119dne odpowiadaj\u0105ce czterem niezale\u017cnym buforom. Mo\u017cliwo\u015b\u0107 otwarcia tego samego bufora przez r\u00f3\u017cne procesy lub wielokrotnie przez ten sam proces.<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\"><b>Dodatkowo (7p)<\/b>&nbsp;Mo\u017cliwo\u015b\u0107 wywo\u0142ania ioctl zmieniaj\u0105cego rozmiar bufora, przy czym zmniejszenie bufora mo\u017cliwe jest tylko wtedy gdy wszystkie wska\u017aniki bie\u017c\u0105cej pozycji pliku (wszystkich plik\u00f3w otwartych z danym urz\u0105dzeniem) zwi\u0105zane z tym buforem \u201ezmieszcz\u0105\u201d si\u0119 w nowym buforze. W przeciwnym wypadku zwracany jest kod b\u0142\u0119du.<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\"><b>(8p)<\/b>&nbsp;Implementacja operacji mmap [Patrz literatura oraz przysz\u0142e wyk\u0142ady na temat zarz\u0105dzania pami\u0119ci\u0105 (np. funkcja remap_page_range) ], pozwalaj\u0105cej na odwzorowanie bufora lub jego fragmentu w przestrzeni adresowej u\u017cytkownika. Mo\u017ce to wymaga\u0107 innej organizacji bufora, ni\u017c ci\u0105g\u0142y blok pami\u0119ci.<\/span><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>&nbsp;<\/p>\n<p>&nbsp;<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\">UWAGA:&nbsp;Nale\u017cy napisa\u0107 programy pozwalaj\u0105ce przetestowa\u0107 dzia\u0142anie sterownika (nie interaktywne, a pobieraj\u0105ce odpowiednie argumenty z linii polece\u0144). Programy te nale\u017cy wywo\u0142a\u0107 z przyk\u0142adowego skryptu shella. Brak rzetelnych program\u00f3w i skrypt\u00f3w testuj\u0105cych skutkuje kar\u0105 o maksymalnej wysoko\u015bci -5p.<\/span><\/p>\n<p align=\"justify\"><span style=\"font-family: Times New Roman, serif\">PONADTO:&nbsp;Zalecamy analiz\u0119 kodu prawdziwych sterownik\u00f3w w j\u0105drze.<\/span><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>Opracowali:&nbsp;Wojciech Kwedlo i Krzysztof Bandurski.<\/td>\n<\/tr>\n<tr>\n<td>&nbsp;<\/td>\n<\/tr>\n<tr>\n<td>&nbsp;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Systemy operacyjne 2 &#8211; Projekt pierwszy Jesie\u0144 2006 Sterownik urz\u0105dzenia 1. Schowek Minimum (22p). Sterownik<a class=\"read-more\" href=\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/\" title=\"Poka\u017c artyku\u0142 Systemy operacyjne 2 &#8211; Projekt pierwszy\">wi\u0119cej<\/a><\/p>\n","protected":false},"author":14,"featured_media":0,"parent":429,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"inline_featured_image":false,"ngg_post_thumbnail":0,"footnotes":""},"class_list":["post-430","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Systemy operacyjne 2 - Projekt pierwszy - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Systemy operacyjne 2 - Projekt pierwszy - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej\" \/>\n<meta property=\"og:description\" content=\"Systemy operacyjne 2 &#8211; Projekt pierwszy Jesie\u0144 2006 Sterownik urz\u0105dzenia 1. Schowek Minimum (22p). Sterownikwi\u0119cej\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/\" \/>\n<meta property=\"og:site_name\" content=\"Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minuty\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/\",\"url\":\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/\",\"name\":\"Systemy operacyjne 2 - Projekt pierwszy - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej\",\"isPartOf\":{\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/#website\"},\"datePublished\":\"2024-07-18T09:43:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/wi.pb.edu.pl\/p\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"dr hab. in\u017c. Wojciech Kwedlo\",\"item\":\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Dydaktyka\",\"item\":\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Systemy operacyjne 2 &#8211; pracownia specjalistyczna\",\"item\":\"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/\"},{\"@type\":\"ListItem\",\"position\":5,\"name\":\"Systemy operacyjne 2 &#8211; Projekt pierwszy\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/#website\",\"url\":\"https:\/\/wi.pb.edu.pl\/p\/\",\"name\":\"Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wi.pb.edu.pl\/p\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Systemy operacyjne 2 - Projekt pierwszy - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/","og_locale":"pl_PL","og_type":"article","og_title":"Systemy operacyjne 2 - Projekt pierwszy - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","og_description":"Systemy operacyjne 2 &#8211; Projekt pierwszy Jesie\u0144 2006 Sterownik urz\u0105dzenia 1. Schowek Minimum (22p). Sterownikwi\u0119cej","og_url":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/","og_site_name":"Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","twitter_card":"summary_large_image","twitter_misc":{"Szacowany czas czytania":"4 minuty"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/","url":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/","name":"Systemy operacyjne 2 - Projekt pierwszy - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","isPartOf":{"@id":"https:\/\/wi.pb.edu.pl\/p\/#website"},"datePublished":"2024-07-18T09:43:57+00:00","breadcrumb":{"@id":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/systemy-operacyjne-2-projekt-pierwszy\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/wi.pb.edu.pl\/p\/"},{"@type":"ListItem","position":2,"name":"dr hab. in\u017c. Wojciech Kwedlo","item":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/"},{"@type":"ListItem","position":3,"name":"Dydaktyka","item":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/"},{"@type":"ListItem","position":4,"name":"Systemy operacyjne 2 &#8211; pracownia specjalistyczna","item":"https:\/\/wi.pb.edu.pl\/p\/wojciech-kwedlo\/dydaktyka\/systemy-operacyjne-2-pracownia-specjalistyczna\/"},{"@type":"ListItem","position":5,"name":"Systemy operacyjne 2 &#8211; Projekt pierwszy"}]},{"@type":"WebSite","@id":"https:\/\/wi.pb.edu.pl\/p\/#website","url":"https:\/\/wi.pb.edu.pl\/p\/","name":"Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wi.pb.edu.pl\/p\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"}]}},"_links":{"self":[{"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages\/430","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/comments?post=430"}],"version-history":[{"count":2,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages\/430\/revisions"}],"predecessor-version":[{"id":434,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages\/430\/revisions\/434"}],"up":[{"embeddable":true,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages\/429"}],"wp:attachment":[{"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/media?parent=430"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}