2011-06-10:

Podcasty update kolejny

podcast:videocast
Niecały miesiąc minął i kilka nowych podcastów na sieć wrzuciłem. Póki co idzie całkiem nieźle...

Stan na chwilę obecną:

- Seria Shadow (RSS): 1 eps (+intro), następny w następnym tygodniu. Dla przypomnienia, jest to seria poświęcona hackingowi/security.
- Seria Asm (RSS): 21 epsów (+3 dodatkowe). W planach jest jeszcze około 8 odcinków, w tym ~2 na omówienie ostatnich kilku instrukcji z podstawowego zestawu, ~2 na tłumaczenie kodu C na Asm, ~2 prezentujące pisanie większego kawałka kodu w asm i ~2 na omówienie kompilowania kodu do plików wykonywalnych (PE .exe, ELF). Potem seria o FPU lub o architekturze x86 (segmenty, page table, etc) - jeszcze nie zdecydowałem co pierwsze.
- Seria Debug (RSS): 6 epsów (w tym jeden dwuczęściowy). W zasadzie temat wyczerpany, ale planuje jeszcze jeden eps o lokalizowaniu trudniejszych do wyśledzenia bugów.
- Seria RE (RSS): 1 eps i pewnie do końca tygodnia pojawi się następny. W planach losowe tematy i kilka odcinków o tłumaczeniu kodu z Asm na języki wyższego poziomu (czyli np. omówienie jak wyglądają ify, switche, czy metody wirtualne na poziomie asm).
- Seria FAQ (RSS): 2 epsy i mam kilka tematów na następne.
- Seria Code (RSS): 10 epsów. Seria narazie odłożona na półkę - nie mam jeszcze wykrystalizowanego pomysłu na nią. Jak wpadnie mi coś do głowy to postawam się to nagrać, ale chwilowo planów brak.

Podsumowując: póki co wrzuciłem online 46 epsów (RSS do mojego kanału).

I w sumie tyle póki co.
Cheers!

Comments:

2011-06-10 21:23:31 = Assarelliuss
{
Odnośnie serii asm, myślę że lepiej będzie omówić najpierw FPU i ONP a dopiero potem (nudzić :)) na temat architektury.
Brawo!
}
2011-06-10 21:35:01 = unreal
{
Super są te twoje Podcasty i dzięki Ci za nie ale fajnie było by jak byś zrobił coś o C jakieś tricki i takie tam.
}
2011-06-10 21:54:20 = kamil11
{
Dzięki za wszystkie Podcasty są bardzo fajne.

Mam prośbę co do serii o Asm, pisałem już na YT, ale napiszę jescze tutaj. Czy mógłbyś wytłumaczyć jak działa asm loader po kolei w raz z tym jak udostępnia ono api. Taki Cast do działu FAQ. Byłbym bardzo szczęśliwy.

Ale i tak bardzo dobra robota, dzięki.
}
2011-06-10 22:43:28 = Gynvael Coldwind
{
@Assarelliuss
Thx ;)
Hehehe widać to kwestia gustu ;) Osobiście uważam architekturę za bardziej ciekawą niż FPU ;)
Natomiast jeszcze nie zdecydowałem co będzie pierwsze.

@unreal
Thx ;)
Szczerze, to myślałem o serii o C lub C++, natomiast jeszcze nie do końca mam wizję jak to rozplanować, żeby nie duplikować kontentu który i tak już w sieci jest (trochę podcastów o C/C++ po polsku już widziałem). Tricki są jakimś pomysłem, innym jest omówienie np. extensionów danych kompilatorów, mniej znanych ficzerów języka, kwestii typu undefined behavior / strict aliasing / etc, czy np. zmian w nowej wersji standardów.
We shall see.

@kamil11
Thx ;)
Z dużym prawdopodobieństwem jutro nagram eps o który prosisz.

Cheers ;)
}
2011-06-10 22:54:17 = kamil11
{
Ok, dzięki :).
}
2011-06-11 11:53:08 = Gynvael Coldwind
{
@kamil11
OK, eps jest online: http://www.youtube.com/watch?v=xVPxN8jFAwo
Daj znać, czy odpowiedziałem na wszystkie Twoje pytania ad asmloader.
}
2011-06-11 11:54:59 = olo16
{
IMHO najpierw byłoby się dobrze zająć FPU, bo to się przyda do przejścia z C/C++ na asm - trochę głupio tak kodzić bez liczb zmiennoprzecinkowych.

Jeśli chodzi o C/C++ - może na początek coś o rzadkich keywordach? Takie mutable czy restrict - w zasadzie można to uznać za "sztuczki", ponieważ są baaardzo rzadko używane, a wiadomo, zawsze mogą się przydać.

I może trochę C++ od kuchni - jak są kompilowane do assembly wyjątki, polimorfizm i inne takie wysokopoziomowe mechanizmy.

A w ogóle to dobra robota - fajnie, że dzielisz się wiedzą. Podoba mi się też zróżnicowanie poziomu - zawsze w podcastach znajdzie się coś dla początkujących i coś, co nie znudzi bardziej zaawansowanych.
}
2011-06-11 17:40:49 = kamil11
{
Dzięki za Casta, prawie wszystko mi wyjaśnił. Jedno pytanie mi zostało:
Skąd wiadomo, że akurat pod rejestrem EBX jest to API? Być może gdzieś to mówiłeś, ale
nie mogę tego dobrze zrozumieć.

}
2011-06-11 20:15:59 = Gynvael Coldwind
{
@olo16
Thx za uwagi - mniej więcej pokrywają się z tym o czym myślałem.
Ad Asm - możliwe, że faktycznie zacznę od FPU w takim razie, szczególnie że FPU mi zajmie mniej czasu niż arch (scheduling nagrywania ;p).
Ad C/C++ - własnie o czymś takim myślałem
Ad C++ od kuchni - to będzie w serii RE, pewnie już niedługo ;)

@kamil11
Rzuć okiem na filmik od momentu 10:45 ;)
}
2011-06-11 21:08:31 = kamil11
{
Eh, obejrzałem drugi raz i teraz dopiero sobie przyswoiłem o co chodzi. Ten kod szesnastkowy (tak?) to są instrukcje( jeśli możesz to napisz przy odpowiedzi co one oznaczają), które wrzucają do rejestru EBX tablice z API asmloadera?
}
2011-06-11 21:13:02 = magu
{
Seria o arch byłaby ciekawa, internalsy C++ również. Świetna robota Gyn ;]
}
2011-06-12 09:30:50 = Gynvael Coldwind
{
@kamil11
Hehehe sądzę, że powinieneś obejrzeć od 10:45 jeszcze raz ;)
A tak serio, jest dokładnie tak jak mówię i jak widać na ekranie, czyli:

"\x8B\x5C\x24\x04" // mov ebx, [esp+4]

Ten kod maszynowy zapisany w hexa po lewej to zakodowana instrukcja assembly widoczna w komentarzu po prawej.
Zresztą, możesz to sam łatwo sprawdzić, wystarczy wrzucić do pliku te 4 bajty (8B 5C 24 04) np. hexedytorem lub nasmem (wrzucasz w plik tylko: db 0x8b, 0x5c,0x24,4 i kompilujesz), po czym wrzucasz go w disassembler, np.
ndisasm -b 32 nazwa_pliku

(Zachęcam do wykonania tego ćwiczenia ;>).

@magu
Thx ;)
OK, serie te się pojawią, tylko jeszcze nie wiem w jakiej kolejności ;D
}
2011-06-12 19:19:39 = kamil11
{
Ok, Dzięki za dość dogłębne wytłumaczenie. A ja czekam na serie o c++ o której mowa w komentarzach wyżej ;).
}
2011-07-11 00:51:50 = T
{
Nie ma w języku polskim słowa pointer. Mamy za to słowo wskaźnik. Proszę używaj go, bo strasznie się słucha/czyta "pointerów" itd...
Inne problematyczne słowa mi nie przeszkadzają a niektóre terminy wręcz wolę traktować jak nazwy własne, bo po polsku nie zrozumiem ;) ale te angielskie wskaźniki z polską odmianą po prostu mnie rażą.
}
2011-07-11 10:52:10 = Gynvael Coldwind
{
@T
Wygląda na to, że mamy sytuacje typu "zderzenie preferencji" ad słowo pointer/wskaźnik. Ja preferuje używać wersji "pointer", ty preferujesz "wskaźnik". I o ile rozumiem Twoje uzasadnienie i mogę zrozumieć Twoje preferencje, to jednak zostanę przy słowie "pointer" z przyczyn praktycznych jak i z powodu preferencji.
}
2011-11-12 19:02:11 = Młody
{
Dzięki Tobie cieszę się, że jestem Polakiem!

Nie znam na tyle dobrze angielskiego by się uczyć z ang. książek, video kursów. Gdy patrzyłem na darmowe zbiory np. na YouTube, aż mi się chciało płakać, że nie mieszkam w Anglii, USA.


Naprawdę fajnie, że nagrywasz te kursy. Pomogłeś nie jednemu już początkującemu :D
Szacunek...

}

Add a comment:

Nick:
URL (optional):
Math captcha: 1 ∗ 2 + 3 =